Require hwloc-ohpc for all OSes #1487
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 | |
components/admin/docs/SPECS/docs.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@v3 | |
- id: files | |
uses: Ana06/[email protected] | |
- 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@v3 | |
- name: Lint markdown | |
uses: DavidAnson/markdownlint-cli2-action@v9 | |
with: | |
globs: | | |
README.md | |
CONTRIBUTING.md | |
lint: | |
strategy: | |
matrix: | |
step: [codespell, flake8, shellcheck, whitespace] | |
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 | |
- uses: actions/checkout@v3 | |
- name: Run ${{ matrix.step }} | |
run: make -C tests/ci/ ${{ matrix.step }}-lint | |
build_on_rhel: | |
strategy: | |
matrix: | |
compiler: [gnu12, gnu13] | |
runs-on: ubuntu-latest | |
name: Build on RHEL (${{ matrix.compiler}}) | |
container: | |
image: docker.io/library/rockylinux:9 | |
steps: | |
- name: Install git | |
run: dnf -y install git | |
- uses: actions/checkout@v3 | |
- name: Setup | |
run: tests/ci/prepare-ci-environment.sh | |
- id: files | |
uses: Ana06/[email protected] | |
- name: Validate Build | |
run: | | |
. /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@v3 | |
if: matrix.compiler == 'gnu12' | |
with: | |
name: rhel-rpms | |
retention-days: 1 | |
path: | | |
/home/ohpc/rpmbuild/RPMS/noarch/*rpm | |
/home/ohpc/rpmbuild/RPMS/x86_64/*rpm | |
/tmp/empty | |
test_on_rhel: | |
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 | |
needs: build_on_rhel | |
steps: | |
- name: Install git | |
run: dnf -y install git | |
- uses: actions/checkout@v3 | |
- name: Setup | |
run: tests/ci/prepare-ci-environment.sh | |
- id: files | |
uses: Ana06/[email protected] | |
- uses: actions/download-artifact@v3 | |
with: | |
name: rhel-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 ${{ 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@v3 | |
with: | |
name: test-results | |
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 | |
steps: | |
- name: Switch repo | |
run: sed -i "[email protected]@repo.huaweicloud.com/openeuler@g" /etc/yum.repos.d/openEuler.repo | |
- name: Install git | |
run: dnf -y install git | |
- uses: actions/checkout@v3 | |
- name: Setup | |
run: tests/ci/prepare-ci-environment.sh | |
- id: files | |
uses: Ana06/[email protected] | |
- 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@v3 | |
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: | |
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 | |
needs: build_on_openEuler | |
steps: | |
- name: Switch repo | |
run: sed -i "[email protected]@repo.huaweicloud.com/openeuler@g" /etc/yum.repos.d/openEuler.repo | |
- name: Install git | |
run: dnf -y install git | |
- uses: actions/checkout@v3 | |
- name: Setup | |
run: tests/ci/prepare-ci-environment.sh | |
- id: files | |
uses: Ana06/[email protected] | |
- uses: actions/download-artifact@v3 | |
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 ${{ steps.files.outputs.added_modified }} | |
build_on_leap: | |
runs-on: ubuntu-latest | |
name: Build on LEAP | |
container: | |
image: registry.opensuse.org/opensuse/leap:15.4 | |
steps: | |
- name: Install git | |
run: zypper -n update; zypper -n install git | |
- uses: actions/checkout@v3 | |
- name: Setup | |
run: tests/ci/prepare-ci-environment.sh | |
- id: files | |
uses: Ana06/[email protected] | |
- 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@v3 | |
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: | |
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.4 | |
needs: build_on_leap | |
steps: | |
- name: Install git | |
run: zypper -n update; zypper -n install git | |
- uses: actions/checkout@v3 | |
- name: Setup | |
run: tests/ci/prepare-ci-environment.sh | |
- id: files | |
uses: Ana06/[email protected] | |
- uses: actions/download-artifact@v3 | |
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 ${{ steps.files.outputs.added_modified }} | |
build_on_centos_stream_9: | |
runs-on: ubuntu-latest | |
name: Build on CentOS Stream 9 | |
container: | |
image: quay.io/centos/centos:stream9 | |
steps: | |
- name: Install git | |
run: dnf -y install git | |
- uses: actions/checkout@v3 | |
- name: Setup | |
run: tests/ci/prepare-ci-environment.sh | |
- id: files | |
uses: Ana06/[email protected] | |
- name: Validate Build | |
run: | | |
. /etc/profile.d/lmod.sh | |
tests/ci/run_build.py ohpc ${{ steps.files.outputs.added_modified }} | |
event_file: | |
name: "Event File" | |
runs-on: ubuntu-latest | |
steps: | |
- name: Upload | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: event-file | |
retention-days: 1 | |
path: ${{ github.event_path }} |