Skip to content

R: upgrade to 4.4.1 #2103

R: upgrade to 4.4.1

R: upgrade to 4.4.1 #2103

Workflow file for this run

name: Validate
on:
push:
branches:
- 3.x
pull_request:
branches:
- 3.x
env:
SKIP_CI_SPECS: |
components/fs/lustre-client/SPECS/lustre.spec
components/parallel-libs/trilinos/SPECS/trilinos.spec
jobs:
check_spec:
env:
JOB_SKIP_CI_SPECS: |
components/admin/ohpc-filesystem/SPECS/ohpc-filesystem.spec
runs-on: ubuntu-latest
container:
image: docker.io/library/rockylinux:9
steps:
- name: Setup
run: |
dnf install -y epel-release git python3
- uses: actions/checkout@v4
- id: files
uses: Ana06/get-changed-files@v2.3.0
- name: Validate Changes
run: |
export SKIP_CI_SPECS="${{ env.SKIP_CI_SPECS }}${{ env.JOB_SKIP_CI_SPECS }}"
tests/ci/check_spec.py ${{ steps.files.outputs.added_modified }}
lint_markdown:
name: Run markdown linter
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Lint markdown
uses: DavidAnson/markdownlint-cli2-action@v15
with:
globs: |
README.md
CONTRIBUTING.md
lint:
strategy:
matrix:
step: [codespell, flake8, shellcheck, whitespace, shfmt]
name: Run ${{ matrix.step }} linter
runs-on: ubuntu-latest
container:
image: registry.fedoraproject.org/fedora:latest
steps:
- name: Setup
run: dnf -y install codespell make python3-flake8 ShellCheck shfmt
- uses: actions/checkout@v4
- name: Run ${{ matrix.step }}
run: make -C tests/ci/ ${{ matrix.step }}-lint
build_on_rhel:
strategy:
matrix:
compiler: [gnu14, intel]
runs-on: ubuntu-latest
name: Build on RHEL (${{ matrix.compiler}})
container:
image: docker.io/library/rockylinux:9
volumes:
- /usr:/host/usr
- /opt:/host/opt
steps:
- name: Delete unneeded tools on the host
# Needed to have enough space to install the Intel compiler
run: |
rm -rf /host/usr/share/dotnet /host/usr/local/lib/android /host/opt/ghc
- name: Install git
run: dnf -y install git
- uses: actions/checkout@v4
- name: Setup
run: tests/ci/prepare-ci-environment.sh ${{ matrix.compiler }}
- id: files
uses: Ana06/get-changed-files@v2.3.0
- name: Validate Build
run: |
if [ "${{ matrix.compiler }}" == "intel" ]; then
export SKIP_CI_SPECS="${{ env.SKIP_CI_SPECS }} components/serial-libs/openblas/SPECS/openblas.spec"
export SKIP_CI_SPECS="${SKIP_CI_SPECS} components/dev-tools/scipy/SPECS/python-scipy.spec"
export SKIP_CI_SPECS="${SKIP_CI_SPECS} components/serial-libs/R/SPECS/R.spec"
fi
. /etc/profile.d/lmod.sh
tests/ci/run_build.py ohpc ${{ steps.files.outputs.added_modified }} --compiler-family ${{ matrix.compiler }}
touch /tmp/empty
- uses: actions/upload-artifact@v4
with:
name: rhel-rpms-${{ matrix.compiler }}
retention-days: 1
path: |
/home/ohpc/rpmbuild/RPMS/noarch/*rpm
/home/ohpc/rpmbuild/RPMS/x86_64/*rpm
/tmp/empty
test_on_rhel:
strategy:
matrix:
compiler: [gnu14, intel]
runs-on: ubuntu-latest
name: Test on RHEL
env:
JOB_SKIP_CI_SPECS: |
components/perf-tools/likwid/SPECS/likwid.spec
container:
image: docker.io/library/rockylinux:9
options: --privileged
volumes:
- /usr:/host/usr
- /opt:/host/opt
needs: build_on_rhel
steps:
- name: Delete unneeded tools on the host
# Needed to have enough space to install the Intel compiler
run: |
rm -rf /host/usr/share/dotnet /host/usr/local/lib/android /host/opt/ghc
- name: Install git
run: dnf -y install git
- uses: actions/checkout@v4
- name: Setup
run: tests/ci/prepare-ci-environment.sh ${{ matrix.compiler }}
- id: files
uses: Ana06/get-changed-files@v2.3.0
- uses: actions/download-artifact@v4
with:
name: rhel-rpms-${{ matrix.compiler }}
path: /home/ohpc/rpmbuild/RPMS
- name: Run CI Tests
run: |
export SKIP_CI_SPECS="${{ env.SKIP_CI_SPECS }}${{ env.JOB_SKIP_CI_SPECS }}"
if [ "${{ matrix.compiler }}" == "intel" ]; then
export SKIP_CI_SPECS="${SKIP_CI_SPECS} components/serial-libs/openblas/SPECS/openblas.spec"
export SKIP_CI_SPECS="${SKIP_CI_SPECS} components/dev-tools/scipy/SPECS/python-scipy.spec"
export SKIP_CI_SPECS="${SKIP_CI_SPECS} components/serial-libs/R/SPECS/R.spec"
fi
. /etc/profile.d/lmod.sh
chown ohpc -R tests
tests/ci/setup_slurm_and_run_tests.sh ohpc ${{ matrix.compiler }} ${{ steps.files.outputs.added_modified }}
- name: Upload Test Results
# To display test results from forked repositories they need to
# be uploaded and then analyzed.
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-${{ matrix.compiler }}
retention-days: 1
path: tests/**/*.log.xml
build_on_openEuler:
runs-on: ubuntu-latest
name: Build on openEuler
container:
image: docker.io/openeuler/openeuler:22.03-lts-sp3
steps:
- name: Switch repo
run: sed -i "s@repo.openeuler.org@repo.huaweicloud.com/openeuler@g" /etc/yum.repos.d/openEuler.repo
- name: Install git
run: dnf -y install git
- uses: actions/checkout@v4
- name: Setup
run: tests/ci/prepare-ci-environment.sh
- id: files
uses: Ana06/get-changed-files@v2.3.0
- name: Validate Build
run: |
. /etc/profile.d/lmod.sh
tests/ci/run_build.py ohpc ${{ steps.files.outputs.added_modified }}
touch /tmp/empty
- uses: actions/upload-artifact@v4
with:
name: openEuler-rpms
retention-days: 1
path: |
/home/ohpc/rpmbuild/RPMS/noarch/*rpm
/home/ohpc/rpmbuild/RPMS/x86_64/*rpm
/tmp/empty
test_on_openEuler:
strategy:
matrix:
compiler: [gnu14]
env:
JOB_SKIP_CI_SPECS: |
components/runtimes/charliecloud/SPECS/charliecloud.spec
components/perf-tools/likwid/SPECS/likwid.spec
runs-on: ubuntu-latest
name: Test on openEuler
container:
image: docker.io/openeuler/openeuler:22.03-lts-sp3
needs: build_on_openEuler
steps:
- name: Switch repo
run: sed -i "s@repo.openeuler.org@repo.huaweicloud.com/openeuler@g" /etc/yum.repos.d/openEuler.repo
- name: Install git
run: dnf -y install git
- uses: actions/checkout@v4
- name: Setup
run: tests/ci/prepare-ci-environment.sh
- id: files
uses: Ana06/get-changed-files@v2.3.0
- uses: actions/download-artifact@v4
with:
name: openEuler-rpms
path: /home/ohpc/rpmbuild/RPMS
- name: Run CI Tests
run: |
export SKIP_CI_SPECS="${{ env.SKIP_CI_SPECS }}${{ env.JOB_SKIP_CI_SPECS }}"
. /etc/profile.d/lmod.sh
chown ohpc -R tests
tests/ci/setup_slurm_and_run_tests.sh ohpc ${{ matrix.compiler }} ${{ steps.files.outputs.added_modified }}
build_on_leap:
runs-on: ubuntu-latest
name: Build on LEAP
container:
image: registry.opensuse.org/opensuse/leap:15.5
steps:
- name: Install git
run: zypper -n update; zypper -n install git
- uses: actions/checkout@v4
- name: Setup
run: tests/ci/prepare-ci-environment.sh
- id: files
uses: Ana06/get-changed-files@v2.3.0
- name: Validate Build
run: |
. /etc/profile.d/lmod.sh
tests/ci/run_build.py ohpc ${{ steps.files.outputs.added_modified }}
touch /tmp/empty
- uses: actions/upload-artifact@v4
with:
name: leap-rpms
retention-days: 1
path: |
/home/ohpc/rpmbuild/RPMS/noarch/*rpm
/home/ohpc/rpmbuild/RPMS/x86_64/*rpm
/tmp/empty
test_on_leap:
strategy:
matrix:
compiler: [gnu14]
env:
JOB_SKIP_CI_SPECS: |
components/runtimes/charliecloud/SPECS/charliecloud.spec
components/perf-tools/likwid/SPECS/likwid.spec
runs-on: ubuntu-latest
name: Test on LEAP
container:
image: registry.opensuse.org/opensuse/leap:15.5
needs: build_on_leap
steps:
- name: Install git
run: zypper -n update; zypper -n install git
- uses: actions/checkout@v4
- name: Setup
run: tests/ci/prepare-ci-environment.sh
- id: files
uses: Ana06/get-changed-files@v2.3.0
- uses: actions/download-artifact@v4
with:
name: leap-rpms
path: /home/ohpc/rpmbuild/RPMS
- name: Run CI Tests
run: |
export SKIP_CI_SPECS="${{ env.SKIP_CI_SPECS }}${{ env.JOB_SKIP_CI_SPECS }}"
. /etc/profile.d/lmod.sh
chown ohpc -R tests
tests/ci/setup_slurm_and_run_tests.sh ohpc ${{ matrix.compiler }} ${{ steps.files.outputs.added_modified }}
event_file:
name: "Event File"
runs-on: ubuntu-latest
steps:
- name: Upload
if: always()
uses: actions/upload-artifact@v4
with:
name: event-file
retention-days: 1
path: ${{ github.event_path }}