From b21569958692ffd9f8772f4757008daab20e5127 Mon Sep 17 00:00:00 2001 From: Lila Yasin Date: Thu, 2 Jan 2025 13:10:51 -0500 Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=AA=20Run=20sanity=20tests=20w/=20ansi?= =?UTF-8?q?ble-test-gh-action=20(#15539)=20(#6773)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 🧪 Run sanity tests w/ `ansible-test-gh-action` * 🧪 Upload sanity results to unified dashboard Co-authored-by: Sviatoslav Sydorenko (Святослав Сидоренко) --- .github/workflows/ci.yml | 49 ++++++++++++++++++++++++++++++---------- 1 file changed, 37 insertions(+), 12 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7bbebcb68f..0dd93f0f94 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -139,21 +139,46 @@ jobs: timeout-minutes: 30 strategy: fail-fast: false + matrix: + ansible: + - stable-2.17 + # - devel steps: - - uses: actions/checkout@v4 + - name: Perform sanity testing + uses: ansible-community/ansible-test-gh-action@release/v1 with: - show-progress: false + 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 - - uses: actions/setup-python@v5 - with: - python-version: '3.x' - - # 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 - run: make test_collection_sanity + - name: Upload awx jUnit test reports to the unified dashboard + if: >- + !cancelled() + && steps.make-run.outputs.test-result-files != '' + && 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