summaryrefslogtreecommitdiffstats
path: root/.github/workflows
diff options
context:
space:
mode:
authorSviatoslav Sydorenko (Святослав Сидоренко) <wk@sydorenko.org.ua>2024-09-17 22:45:06 +0200
committerGitHub <noreply@github.com>2024-09-17 22:45:06 +0200
commitcf25a093230865fdce94e07f5376c4e948288b01 (patch)
tree7c0c9c26dfccb42429a4aba5909e0b948a53b937 /.github/workflows
parentUpload API unit test results to dashboard (#15532) (diff)
downloadawx-cf25a093230865fdce94e07f5376c4e948288b01.tar.xz
awx-cf25a093230865fdce94e07f5376c4e948288b01.zip
🧪 Upload ansible-test coverage to Codecov (#15527)
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/ci.yml66
1 files changed, 65 insertions, 1 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 6da76033b5..72eac92a01 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -210,8 +210,50 @@ jobs:
run: python3 -m pip install --upgrade ansible-core
- name: Run sanity tests
+ id: make-run
run: make test_collection_sanity
+ - name: Upload test coverage to Codecov
+ if: >-
+ !cancelled()
+ && steps.make-run.outputs.cov-report-files != ''
+ uses: codecov/codecov-action@v4
+ with:
+ fail_ci_if_error: >-
+ ${{
+ toJSON(env.UPSTREAM_REPOSITORY_ID == github.repository_id)
+ }}
+ files: >-
+ ${{ steps.make-run.outputs.cov-report-files }}
+ flags: >-
+ CI-GHA,
+ ansible-test,
+ sanity,
+ OS-${{
+ runner.os
+ }}
+ token: ${{ secrets.CODECOV_TOKEN }}
+ - name: Upload test results to Codecov
+ if: >-
+ !cancelled()
+ && steps.make-run.outputs.test-result-files != ''
+ uses: codecov/test-results-action@v1
+ with:
+ fail_ci_if_error: >-
+ ${{
+ toJSON(env.UPSTREAM_REPOSITORY_ID == github.repository_id)
+ }}
+ files: >-
+ ${{ steps.make-run.outputs.test-result-files }}
+ flags: >-
+ CI-GHA,
+ ansible-test,
+ sanity,
+ OS-${{
+ runner.os
+ }}
+ token: ${{ secrets.CODECOV_TOKEN }}
+
collection-integration:
name: awx_collection integration
runs-on: ubuntu-latest
@@ -243,6 +285,7 @@ jobs:
python3 -m pip install -r awx_collection/requirements.txt
- name: Run integration tests
+ id: make-run
run: |
echo "::remove-matcher owner=python::" # Disable annoying annotations from setup-python
echo '[general]' > ~/.tower_cli.cfg
@@ -250,10 +293,31 @@ jobs:
echo 'oauth_token = ${{ steps.awx.outputs.admin-token }}' >> ~/.tower_cli.cfg
echo 'verify_ssl = false' >> ~/.tower_cli.cfg
TARGETS="$(ls awx_collection/tests/integration/targets | grep '${{ matrix.target-regex.regex }}' | tr '\n' ' ')"
- make COLLECTION_VERSION=100.100.100-git COLLECTION_TEST_TARGET="--coverage --requirements $TARGETS" test_collection_integration
+ make COLLECTION_VERSION=100.100.100-git COLLECTION_TEST_TARGET="--requirements $TARGETS" test_collection_integration
env:
ANSIBLE_TEST_PREFER_PODMAN: 1
+ - name: Upload test coverage to Codecov
+ if: >-
+ !cancelled()
+ && steps.make-run.outputs.cov-report-files != ''
+ uses: codecov/codecov-action@v4
+ with:
+ fail_ci_if_error: >-
+ ${{
+ toJSON(env.UPSTREAM_REPOSITORY_ID == github.repository_id)
+ }}
+ files: >-
+ ${{ steps.make-run.outputs.cov-report-files }}
+ flags: >-
+ CI-GHA,
+ ansible-test,
+ integration,
+ OS-${{
+ runner.os
+ }}
+ token: ${{ secrets.CODECOV_TOKEN }}
+
# Upload coverage report as artifact
- uses: actions/upload-artifact@v3
if: always()