Skip to content

Check exit status of PBS Pro jobs #191

Check exit status of PBS Pro jobs

Check exit status of PBS Pro jobs #191

Workflow file for this run

name: ReFrame CI
on: [push, pull_request]
jobs:
unittest:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
./bootstrap.sh
- name: Generic Unittests
if: matrix.python-version != '3.8'
run: |
./test_reframe.py
- name: Generic Unittests and Coverage Report
if: matrix.python-version == '3.8'
run: |
python -m pip install coverage
coverage run --source=reframe ./test_reframe.py
coverage report -m
- name: Upload Coverage to Codecov
if: matrix.python-version == '3.8'
uses: codecov/codecov-action@v3
with:
fail_ci_if_error: true
unittest-py36:
runs-on: ubuntu-20.04
strategy:
matrix:
python-version: ['3.6']
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
./bootstrap.sh
- name: Generic Unittests
run: |
./test_reframe.py
unittest-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python 3.9
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install dependencies
run: |
./bootstrap.sh
- name: Generic Unittests
run: |
./test_reframe.py
modulestest:
runs-on: ubuntu-latest
strategy:
matrix:
modules-version: [Lmod, Lmod77, Tmod32, Tmod4]
steps:
- uses: actions/checkout@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build Image for ${{ matrix.modules-version }}
run: |
docker build -f ci-scripts/dockerfiles/${{ matrix.modules-version }}.dockerfile -t reframe:${{ matrix.modules-version }} .
- name: Run Unittests
run: |
docker run reframe:${{ matrix.modules-version }}
tutorialtest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build Image for Tutorial Tests
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin
docker build -f ci-scripts/dockerfiles/tutorials.dockerfile -t reframe:tutorials .
docker logout
- name: Run Tutorial Tests
run: |
docker run reframe:tutorials
unusedimports:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Lint Code Base
uses: github/super-linter@v4
env:
VALIDATE_ALL_CODEBASE: false
VALIDATE_PYTHON_FLAKE8: true
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
wheelvalidation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup up Python 3.8
uses: actions/setup-python@v4
with:
python-version: 3.8
- name: Generate Wheel
run: |
python -m pip install --upgrade pip setuptools build
python -m build
- name: Install Wheel
run: |
python -m pip install dist/ReFrame_HPC*.whl
- name: Test Installation
run: |
reframe -V
reframe -l
docvalidation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup up Python 3.8
uses: actions/setup-python@v4
with:
python-version: 3.8
- name: Install Doc Requirements
run: |
python -m pip install -r docs/requirements.txt
- name: Build documentation
run: |
make -C docs