Skip to content

Spack-Manager Tests #1717

Spack-Manager Tests

Spack-Manager Tests #1717

Workflow file for this run

# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Spack-Manager Tests
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main, develop ]
workflow_dispatch:
schedule:
- cron: "0 8 * * *"
jobs:
unit-tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: [3.8, 3.9, 3.12]
spack-version: [v0.20.3, v0.21.2, v0.22.0, v0.22.1, develop]
exclude:
- python-version: 3.12
spack-version: v0.20.3
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Checkout Spack
uses: actions/checkout@v4
with:
repository: spack/spack
ref: ${{ matrix.spack-version }}
path: spack
- name: Setup Spack ${{ matrix.spack-version }}
run: echo "$PWD/spack/bin" >> "$GITHUB_PATH"
- name: Install extension
run: |
./install.py --scope site
spack manager --help
- name: Run unit tests
run: |
. spack/share/spack/setup-env.sh
spack unit-test --extension manager
style-checks:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: [3.9]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Checkout Spack
uses: actions/checkout@v4
with:
repository: spack/spack
path: spack
- name: Setup Spack
run: echo "$PWD/spack/bin" >> "$GITHUB_PATH"
- name: Install dependencies
run: |
ls -lh "$PWD/spack"
ls -lh "$PWD/spack/.github/"
if [ -f ${GITHUB_WORKSPACE}/spack/.github/workflows/style/requirements.txt ]; then cp ${GITHUB_WORKSPACE}/spack/.github/workflows/style/requirements.txt "$PWD"; fi
if [ -f ${GITHUB_WORKSPACE}/spack/.github/workflows/requirements/style/requirements.txt ]; then cp ${GITHUB_WORKSPACE}/spack/.github/workflows/requirements/style/requirements.txt "$PWD"; fi
python -m pip install --upgrade pip
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Install extension
run: spack config add config:extensions:[${GITHUB_WORKSPACE}]
- name: Spack Style
run: spack style ${GITHUB_WORKSPACE}/manager ${GITHUB_WORKSPACE}/tests
quick-commands:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: [3.8, 3.9]
spack-version: [v0.20.3, v0.21.2, v0.22.0, v0.22.1, develop]
exclude:
- python-version: 3.12
spack-version: v0.20.3
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Checkout Spack
uses: actions/checkout@v4
with:
repository: spack/spack
ref: ${{ matrix.spack-version }}
path: spack
- name: Setup Spack ${{ matrix.spack-version }}
run: echo "$PWD/spack/bin" >> "$GITHUB_PATH"
- name: Install extension
run: |
./install.py --scope site
spack manager --help
- name: Run quick-tests
run: |
. spack/share/spack/setup-env.sh
. scripts/quick_commands.sh
spack config add config:debug:True
quick-create --name managed -s zlib
spack env deactivate
quick-create --dir unmanaged -s zlib
spack env deactivate
quick-create-dev --name develop -s [email protected]