55 lines
2.0 KiB
YAML
55 lines
2.0 KiB
YAML
name: "Runner CI Python Tests"
|
|
description: "Runner CI Python Tests"
|
|
inputs:
|
|
module-name:
|
|
required: true
|
|
module-folder:
|
|
required: true
|
|
outputs:
|
|
coverage-paths:
|
|
description: "Coverage Paths"
|
|
value: ${{ steps.build-coverage-reports.outputs.coverage-paths }}
|
|
flake8-logs:
|
|
description: "Flake8 Logs"
|
|
value: ${{ steps.build-linter-reports.outputs.flake8-logs }}
|
|
mypy-logs:
|
|
description: "MyPy Logs"
|
|
value: ${{ steps.build-linter-reports.outputs.mypy-logs }}
|
|
black-diff:
|
|
description: "Black Diff"
|
|
value: ${{ steps.build-linter-reports.outputs.black-diff }}
|
|
isort-diff:
|
|
description: "Isort Diff"
|
|
value: ${{ steps.build-linter-reports.outputs.isort-diff }}
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Build Coverage Reports
|
|
id: build-coverage-reports
|
|
shell: bash
|
|
run: |
|
|
GRADLE_JOB=$(source ./tools/lib/lib.sh; full_path_to_gradle_path ${{ inputs.module-folder }} "unitTest")
|
|
REPORT_FOLDER="${{ inputs.module-folder }}/coverage/"
|
|
./gradlew --no-daemon -Preports_folder=${REPORT_FOLDER} ${GRADLE_JOB}
|
|
|
|
echo "::set-output name=coverage-paths::coverage/coverage.xml"
|
|
|
|
- name: Upload coverage to Codecov
|
|
uses: codecov/codecov-action@v2
|
|
with:
|
|
file: ${{ steps.build-coverage-reports.outputs.coverage-paths }}
|
|
name: "UnitTests of ${{ inputs.module-name }}"
|
|
|
|
- name: Build Linter Reports
|
|
id: build-linter-reports
|
|
shell: bash
|
|
run: |
|
|
GRADLE_JOB=$(source ./tools/lib/lib.sh; full_path_to_gradle_path ${{ inputs.module-folder }} "airbytePythonReport")
|
|
REPORT_FOLDER="${{ inputs.module-folder }}/reports/"
|
|
./gradlew --no-daemon -Preports_folder=${REPORT_FOLDER} ${GRADLE_JOB}
|
|
|
|
echo "::set-output name=mypy-logs::reports/mypy.log"
|
|
echo "::set-output name=black-diff::reports/black.diff"
|
|
echo "::set-output name=isort-diff::reports/isort.diff"
|
|
echo "::set-output name=flake8-logs::reports/flake.txt"
|