Skip to content

Add unified C++/Python coverage via xmsconan 2.15.2 #7

Add unified C++/Python coverage via xmsconan 2.15.2

Add unified C++/Python coverage via xmsconan 2.15.2 #7

Workflow file for this run

# Generated by xmsconan_ci — do not edit manually.
name: XmsCore-Coverage
on:
push:
pull_request:
jobs:
coverage:
name: Coverage (Linux)
runs-on: ubuntu-latest
container:
image: ghcr.io/aquaveo/conan-gcc13-py3.13:latest
env:
LIBRARY_NAME: xmscore
XMS_VERSION: '0.0.0'
CONAN_LOGIN_USERNAME: ${{ secrets.CONAN2_USER_SECRET }}
CONAN_PASSWORD: ${{ secrets.CONAN2_PASSWORD_SECRET }}
CONAN_REMOTE_URL: https://conan2.aquaveo.com/artifactory/api/conan/aquaveo-stable
AQUAPI_USERNAME: ${{ secrets.AQUAPI_USERNAME_SECRET }}
AQUAPI_PASSWORD: ${{ secrets.AQUAPI_PASSWORD_SECRET }}
AQUAPI_URL: ${{ secrets.AQUAPI_URL_DEV }}
PYTHON_TARGET_VERSION: '3.13'
CTEST_PARALLEL_LEVEL: '8'
steps:
- name: Checkout Source
uses: actions/checkout@v2
- name: Install Python Dependencies
run: |
pip install conan wheel "gcovr>=7,<9"
pip install --upgrade "xmsconan>=2.15.1" -i https://public.aquapi.aquaveo.com/aquaveo/dev/+simple
pip show xmsconan
- name: Setup Conan
run: xmsconan_conan_setup --remote-url ${{ env.CONAN_REMOTE_URL }} --login
shell: bash
# Get Tag Name (so coverage reports advertise the tag rather than 0.0.0
# when the workflow runs on a tagged push).
- name: Get Tag
id: gitTag
uses: little-core-labs/get-git-tag@v3.0.2
if: startsWith(github.ref, 'refs/tags/')
- name: Set Coverage Version
uses: allenevans/set-env@v2.0.0
with:
XMS_VERSION: ${{ steps.gitTag.outputs.tag }}
if: startsWith(github.ref, 'refs/tags/')
- name: Run Coverage
run: xmsconan_coverage --version ${{ env.XMS_VERSION }} build.toml
shell: bash
- name: Upload Coverage HTML
uses: actions/upload-artifact@v4
with:
name: coverage-html
path: |
coverage-html-cpp/
coverage-html-py/
if-no-files-found: ignore
if: always()
- name: Upload Coverage XML
uses: actions/upload-artifact@v4
with:
name: coverage-xml
path: |
cov-cpp.xml
cov-py.xml
if-no-files-found: ignore
if: always()