diff options
author | Gaige B Paulsen <gaige@cluetrust.com> | 2025-01-25 12:47:55 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-01-25 12:47:55 -0500 |
commit | fda50fe09d21b365264c6213bc5883201c460a29 (patch) | |
tree | ce4124381fdcf3617e56e9640aef6889ee6e9ace /.github | |
parent | aab4d38f6cd41eb9a94b34c256f26d55d1e71654 (diff) | |
download | vyos.vyos-fda50fe09d21b365264c6213bc5883201c460a29.tar.gz vyos.vyos-fda50fe09d21b365264c6213bc5883201c460a29.zip |
T7088:Code coverage fix (#376)
* Update codecoverage.yml
* fix: badge for Coverage
Diffstat (limited to '.github')
-rw-r--r-- | .github/workflows/codecoverage.yml | 62 |
1 files changed, 58 insertions, 4 deletions
diff --git a/.github/workflows/codecoverage.yml b/.github/workflows/codecoverage.yml index 458878c..a8a3d65 100644 --- a/.github/workflows/codecoverage.yml +++ b/.github/workflows/codecoverage.yml @@ -1,5 +1,7 @@ --- name: Code Coverage +# cloned from ansible-network/github_actions/.github/workflows/coverage_network_devices.yml@main +# in order to deal with token issue in codecov on: # yamllint disable-line rule:truthy push: @@ -7,10 +9,62 @@ on: # yamllint disable-line rule:truthy branches: [main] jobs: codecoverage: - uses: ansible-network/github_actions/.github/workflows/coverage_network_devices.yml@main - with: + env: + PY_COLORS: "1" + source_directory: "./source" + python_version: "3.10" + ansible_version: "latest" + os: "ubuntu-latest" collection_pre_install: >- git+https://github.com/ansible-collections/ansible.utils.git git+https://github.com/ansible-collections/ansible.netcommon.git - secrets: - token: ${{ secrets.CODECOV_TOKEN }} + runs-on: ubuntu-latest + name: "Code Coverage | Python 3.10" + steps: + - name: Checkout the collection repository + uses: ansible-network/github_actions/.github/actions/checkout_dependency@main + with: + path: ${{ env.source_directory }} + ref: ${{ github.event.pull_request.head.sha }} + fetch-depth: "0" + + - name: Set up Python ${{ env.python_version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ env.python_version }} + + - name: Install ansible-core (${{ env.ansible-version }}) + run: python3 -m pip install ansible-core pytest pytest-cov pytest-ansible-units pytest-forked pytest-xdist + + - name: Read collection metadata from galaxy.yml + id: identify + uses: ansible-network/github_actions/.github/actions/identify_collection@main + with: + source_path: ${{ env.source_directory }} + + - name: Build and install the collection + uses: ansible-network/github_actions/.github/actions/build_install_collection@main + with: + install_python_dependencies: true + source_path: ${{ env.source_directory }} + collection_path: ${{ steps.identify.outputs.collection_path }} + tar_file: ${{ steps.identify.outputs.tar_file }} + + - name: Print the ansible version + run: ansible --version + + - name: Print the python dependencies + run: python3 -m pip list + + - name: Run Coverage tests + run: | + pytest tests/unit -v --cov-report xml --cov=./ + working-directory: ${{ steps.identify.outputs.collection_path }} + + - name: Upload coverage report to Codecov + uses: codecov/codecov-action@v4 + with: + directory: ${{ steps.identify.outputs.collection_path }} + fail_ci_if_error: false + env: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} |