Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .github/pseudo-cluster/reframe/docker-entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,13 @@ sudo service munge start
cp -r /usr/local/share/reframe .
cd reframe
./bootstrap.sh
pip install pytest-cov
pip install coverage
source $HOME/.profile

echo "Running unittests with backend scheduler: ${BACKEND}"

tempdir=$(mktemp -d -p /scratch)
TMPDIR=$tempdir ./test_reframe.py --cov=reframe --cov-report=xml \
TMPDIR=$tempdir coverage run --source=reframe ./test_reframe.py \
--rfm-user-config=ci-scripts/configs/ci-cluster.py \
--rfm-user-system=pseudo-cluster:compute-${BACKEND:-squeue}
coverage xml -o coverage.xml
37 changes: 11 additions & 26 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand All @@ -19,33 +19,17 @@ jobs:
./bootstrap.sh
- name: Generic Unittests
run: |
pip install pytest-cov
./test_reframe.py --cov=reframe --cov-report=xml
- name: Upload coverage reports
uses: codecov/codecov-action@v4.2.0

unittest-py-eol:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.6', '3.7']
steps:
- uses: actions/checkout@v4
- name: Build Image for Python ${{ matrix.python-version }}
run: |
docker build --build-arg PYTHON_VERSION=${{ matrix.python-version }} -f ci-scripts/dockerfiles/reframe-python.dockerfile -t reframe-python${{ matrix.python-version }}:latest .
- name: Run Unittests
run: |
docker run --name reframe-python${{ matrix.python-version }} reframe-python${{ matrix.python-version }}:latest
docker cp reframe-python${{ matrix.python-version }}:/home/rfmuser/reframe/coverage.xml .
pip install coverage
coverage run --source=reframe ./test_reframe.py
coverage xml -o coverage.xml
- name: Upload coverage reports
uses: codecov/codecov-action@v4.2.0

unittest-macos:
runs-on: macos-latest
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand All @@ -57,16 +41,17 @@ jobs:
./bootstrap.sh
- name: Generic Unittests
run: |
pip install pytest-cov
./test_reframe.py --cov=reframe --cov-report=xml
pip install coverage
coverage run --source=reframe ./test_reframe.py
coverage xml -o coverage.xml
- name: Upload coverage reports
uses: codecov/codecov-action@v4.2.0

modulestest:
runs-on: ubuntu-latest
strategy:
matrix:
modules-version: [lmod, lmod77, tmod32, tmod4]
modules-version: [envmodules, lmod, spack]
steps:
- uses: actions/checkout@v4
- name: Login to GitHub Container Registry
Expand Down Expand Up @@ -121,7 +106,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
- name: Setup up Python ${{ matrix.python-version }}
Expand All @@ -144,7 +129,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/test-flux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
strategy:
fail-fast: false
matrix:
container: ['fluxrm/flux-sched:focal']
container: ['fluxrm/flux-sched:noble']

container:
image: ${{ matrix.container }}
Expand All @@ -30,7 +30,6 @@ jobs:
run: |
apt-get update && apt-get install -y python3-pip
./bootstrap.sh
pip install pytest-cov
export PATH=$PWD/bin:$PATH
which reframe

Expand All @@ -41,6 +40,7 @@ jobs:
which reframe
flux start reframe -c examples/howto/flux -C examples/howto/flux/settings.py -l
flux start reframe -c examples/howto/flux -C examples/howto/flux/settings.py -r
flux start python3 ./test_reframe.py --cov=reframe --cov-report=xml --rfm-user-config=examples/howto/flux/settings.py
flux start coverage run --source=reframe ./test_reframe.py --rfm-user-config=examples/howto/flux/settings.py
coverage xml -o coverage.xml
- name: Upload coverage reports
uses: codecov/codecov-action@v4.2.0
153 changes: 0 additions & 153 deletions ci-scripts/configs/cscs-ci.py

This file was deleted.

23 changes: 23 additions & 0 deletions ci-scripts/configs/envmod.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Copyright 2016-2024 Swiss National Supercomputing Centre (CSCS/ETH Zurich)
# ReFrame Project Developers. See the top-level LICENSE file for details.
#
# SPDX-License-Identifier: BSD-3-Clause

site_configuration = {
'systems': [
{
'name': 'envmodsys',
'descr': 'Generic system using Environment Modules',
'hostnames': ['.*'],
'modules_system': 'envmod',
'partitions': [
{
'name': 'default',
'scheduler': 'local',
'launcher': 'local',
'environs': ['builtin']
}
]
}
]
}
53 changes: 3 additions & 50 deletions ci-scripts/configs/lmod.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,11 @@
#
# SPDX-License-Identifier: BSD-3-Clause

#
# Generic fallback configuration
#

site_configuration = {
'systems': [
{
'name': 'generic',
'descr': 'Generic example system',
'name': 'lmodsys',
'descr': 'Generic system using Lmod',
'hostnames': ['.*'],
'modules_system': 'lmod',
'partitions': [
Expand All @@ -22,49 +18,6 @@
'environs': ['builtin']
}
]
},
],
'environments': [
{
'name': 'builtin',
'cc': 'cc',
'cxx': '',
'ftn': ''
},
],
'logging': [
{
'handlers': [
{
'type': 'stream',
'name': 'stdout',
'level': 'info',
'format': '%(message)s'
},
{
'type': 'file',
'level': 'debug',
'format': '[%(asctime)s] %(levelname)s: %(check_info)s: %(message)s', # noqa: E501
'append': False
}
],
'handlers_perflog': [
{
'type': 'filelog',
'prefix': '%(check_system)s/%(check_partition)s',
'level': 'info',
'format': (
'%(check_job_completion_time)s|reframe %(version)s|'
'%(check_info)s|jobid=%(check_jobid)s|'
'%(check_perf_var)s=%(check_perf_value)s|'
'ref=%(check_perf_ref)s '
'(l=%(check_perf_lower_thres)s, '
'u=%(check_perf_upper_thres)s)|'
'%(check_perf_unit)s'
),
'append': True
}
]
}
],
]
}
Loading
Loading