3261889e3a
A few packages have version directives evaluated within if statements, conditional on the value of `platform.platform()`. Sometimes there are no cases for e.g. platform=darwin and that causes a lot of spurious failures with version existence audits. This PR allows expressing conditions to skip version existence checks in audits and avoid these spurious reports.
47 lines
1.5 KiB
YAML
47 lines
1.5 KiB
YAML
name: audit
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
with_coverage:
|
|
required: true
|
|
type: string
|
|
python_version:
|
|
required: true
|
|
type: string
|
|
|
|
concurrency:
|
|
group: audit-${{inputs.python_version}}-${{github.ref}}-${{github.event.pull_request.number || github.run_number}}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
# Run audits on all the packages in the built-in repository
|
|
package-audits:
|
|
runs-on: ${{ matrix.operating_system }}
|
|
strategy:
|
|
matrix:
|
|
operating_system: ["ubuntu-latest", "macos-latest"]
|
|
steps:
|
|
- uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # @v2
|
|
- uses: actions/setup-python@bd6b4b6205c4dbad673328db7b31b7fab9e241c0 # @v2
|
|
with:
|
|
python-version: ${{inputs.python_version}}
|
|
- name: Install Python packages
|
|
run: |
|
|
pip install --upgrade pip setuptools pytest coverage[toml]
|
|
- name: Package audits (with coverage)
|
|
if: ${{ inputs.with_coverage == 'true' }}
|
|
run: |
|
|
. share/spack/setup-env.sh
|
|
coverage run $(which spack) audit packages
|
|
coverage combine
|
|
coverage xml
|
|
- name: Package audits (without coverage)
|
|
if: ${{ inputs.with_coverage == 'false' }}
|
|
run: |
|
|
. share/spack/setup-env.sh
|
|
$(which spack) audit packages
|
|
- uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # @v2.1.0
|
|
if: ${{ inputs.with_coverage == 'true' }}
|
|
with:
|
|
flags: unittests,audits
|