2022-09-07 18:12:57 +00:00
|
|
|
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:
|
2024-04-26 17:38:09 +00:00
|
|
|
runs-on: ${{ matrix.system.os }}
|
2023-07-13 10:47:47 +00:00
|
|
|
strategy:
|
|
|
|
matrix:
|
2024-04-26 17:38:09 +00:00
|
|
|
system:
|
|
|
|
- { os: windows-latest, shell: 'powershell Invoke-Expression -Command "./share/spack/qa/windows_test_setup.ps1"; {0}' }
|
|
|
|
- { os: ubuntu-latest, shell: bash }
|
|
|
|
- { os: macos-latest, shell: bash }
|
|
|
|
defaults:
|
|
|
|
run:
|
|
|
|
shell: ${{ matrix.system.shell }}
|
2022-09-07 18:12:57 +00:00
|
|
|
steps:
|
2024-05-04 22:49:26 +00:00
|
|
|
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b
|
2024-03-27 09:49:45 +00:00
|
|
|
- uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d
|
2022-09-07 18:12:57 +00:00
|
|
|
with:
|
2023-08-03 21:21:39 +00:00
|
|
|
python-version: ${{inputs.python_version}}
|
2022-09-07 18:12:57 +00:00
|
|
|
- name: Install Python packages
|
|
|
|
run: |
|
2023-05-02 17:28:24 +00:00
|
|
|
pip install --upgrade pip setuptools pytest coverage[toml]
|
2024-04-26 17:38:09 +00:00
|
|
|
- name: Setup for Windows run
|
|
|
|
if: runner.os == 'Windows'
|
|
|
|
run: |
|
|
|
|
python -m pip install --upgrade pywin32
|
2022-09-07 18:12:57 +00:00
|
|
|
- name: Package audits (with coverage)
|
2024-04-26 17:38:09 +00:00
|
|
|
if: ${{ inputs.with_coverage == 'true' && runner.os != 'Windows' }}
|
2022-09-07 18:12:57 +00:00
|
|
|
run: |
|
|
|
|
. share/spack/setup-env.sh
|
|
|
|
coverage run $(which spack) audit packages
|
2024-04-26 17:38:09 +00:00
|
|
|
coverage run $(which spack) -d audit externals
|
2022-09-07 18:12:57 +00:00
|
|
|
coverage combine
|
|
|
|
coverage xml
|
|
|
|
- name: Package audits (without coverage)
|
2024-04-26 17:38:09 +00:00
|
|
|
if: ${{ inputs.with_coverage == 'false' && runner.os != 'Windows' }}
|
2022-09-07 18:12:57 +00:00
|
|
|
run: |
|
2024-04-26 17:38:09 +00:00
|
|
|
. share/spack/setup-env.sh
|
|
|
|
spack -d audit packages
|
|
|
|
spack -d audit externals
|
|
|
|
- name: Package audits (without coverage)
|
|
|
|
if: ${{ runner.os == 'Windows' }}
|
|
|
|
run: |
|
|
|
|
. share/spack/setup-env.sh
|
|
|
|
spack -d audit packages
|
|
|
|
./share/spack/qa/validate_last_exit.ps1
|
|
|
|
spack -d audit externals
|
|
|
|
./share/spack/qa/validate_last_exit.ps1
|
2024-05-04 22:39:42 +00:00
|
|
|
- uses: codecov/codecov-action@5ecb98a3c6b747ed38dc09f787459979aebb39be
|
2022-09-07 18:12:57 +00:00
|
|
|
if: ${{ inputs.with_coverage == 'true' }}
|
|
|
|
with:
|
2023-07-13 10:47:47 +00:00
|
|
|
flags: unittests,audits
|
2024-03-26 21:49:26 +00:00
|
|
|
token: ${{ secrets.CODECOV_TOKEN }}
|
2024-03-27 08:15:34 +00:00
|
|
|
verbose: true
|