summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSviatoslav Sydorenko (Святослав Сидоренко) <wk@sydorenko.org.ua>2024-09-18 01:06:36 +0200
committerGitHub <noreply@github.com>2024-09-18 01:06:36 +0200
commit2fdb776ce77c271849dab5997c8cbac4beb0d409 (patch)
treede2c3fc5c6849a9c14e5d3874ac0f941e8875304
parent🧪🚑 Fix escaping EOLs in `curl` invocation (#15538) (diff)
downloadawx-2fdb776ce77c271849dab5997c8cbac4beb0d409.tar.xz
awx-2fdb776ce77c271849dab5997c8cbac4beb0d409.zip
🧪 Run sanity tests w/ ansible-test-gh-action (#15539)
* 🧪 Run sanity tests w/ `ansible-test-gh-action` * 🧪 Upload sanity results to unified dashboard
-rw-r--r--.github/workflows/ci.yml83
1 files changed, 35 insertions, 48 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index a41c143451..fcced878e3 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -200,59 +200,46 @@ jobs:
timeout-minutes: 30
strategy:
fail-fast: false
+ matrix:
+ ansible:
+ - stable-2.17
+ # - devel
steps:
- - uses: actions/checkout@v4
- with:
- show-progress: false
-
- # The containers that GitHub Actions use have Ansible installed, so upgrade to make sure we have the latest version.
- - name: Upgrade ansible-core
- 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
+ - name: Perform sanity testing
+ uses: ansible-community/ansible-test-gh-action@release/v1
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
+ ansible-core-version: ${{ matrix.ansible }}
+ codecov-token: ${{ secrets.CODECOV_TOKEN }}
+ collection-root: awx_collection
+ pre-test-cmd: >-
+ ansible-playbook
+ -i localhost,
+ tools/template_galaxy.yml
+ -e collection_package=awx
+ -e collection_namespace=awx
+ -e collection_version=1.0.0
+ -e '{"awx_template_version": false}'
+ testing-type: sanity
+
+ - name: Upload awx jUnit test reports to the unified dashboard
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 }}
+ && github.event_name == 'push'
+ && env.UPSTREAM_REPOSITORY_ID == github.repository_id
+ && github.ref_name == github.event.repository.default_branch
+ run: |
+ for junit_file in $(echo '${{ steps.make-run.outputs.test-result-files }}' | sed 's/,/ /')
+ do
+ curl \
+ -v \
+ --user "${{ vars.PDE_ORG_RESULTS_AGGREGATOR_UPLOAD_USER }}:${{ secrets.PDE_ORG_RESULTS_UPLOAD_PASSWORD }}" \
+ --form "xunit_xml=@${junit_file}" \
+ --form "component_name=awx" \
+ --form "git_commit_sha=${{ github.sha }}" \
+ --form "git_repository_url=https://github.com/${{ github.repository }}" \
+ "${{ vars.PDE_ORG_RESULTS_AGGREGATOR_UPLOAD_URL }}/api/results/upload/"
+ done
collection-integration:
name: awx_collection integration