Skip to content

Run mars_test on up to 16 processes #58

Run mars_test on up to 16 processes

Run mars_test on up to 16 processes #58

Workflow file for this run

---
name: onyx
on:
issue_comment:
types: [ created ]
jobs:
job_verify_actor:
runs-on: ubuntu-latest
steps:
- name: Verify Actor
id: verify_actor
env:
ACTOR_TOKEN: ${{ secrets.TOKENIZER }}${{ github.actor }}${{ secrets.TOKENIZER }}
ACTOR_ALLOW: ${{ secrets.ACTORLIST }}
if: contains( env.ACTOR_ALLOW, env.ACTOR_TOKEN )
run: |
echo "allowed=true" >> $GITHUB_OUTPUT
- name: Assert Fail
if: ${{ steps.verify_actor.outputs.allowed != 'true' }}
run: |
echo "Actor '${{ github.actor }}' not allowed"
exit 1
outputs:
allowed: ${{ steps.verify_actor.outputs.allowed }}
job_setup_workdir:
runs-on: [ self-hosted ]
needs: [ job_verify_actor ]
steps:
- name: GitHub API Request
id: api_request
uses: octokit/[email protected]
with:
route: ${{ github.event.issue.pull_request.url }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Checkout PR branch
uses: actions/checkout@v4
with:
token: "${{ secrets.GITHUB_TOKEN }}"
repository: "${{ fromJson(steps.api_request.outputs.data).head.repo.full_name }}"
ref: "${{ fromJson(steps.api_request.outputs.data).head.ref }}"
path: './KORC'
job_build_cpu:
if: true
runs-on: [ self-hosted ]
needs: [ job_verify_actor, job_setup_workdir ]
defaults:
run:
shell: bash -leo pipefail {0}
#
# by default github actions will run commands in a non-interactive shell
# setting 'bash -leo pipefail {0}' will cause it to run interactively
#
steps:
- name: run ci_stub/onyx_job_build_cpu.sh
run: |
./KORC/ci_stub/onyx_job_build_cpu.sh
job_setup_spack:
if: true
runs-on: [ self-hosted ]
needs: [ job_verify_actor, job_setup_workdir ]
defaults:
run:
shell: bash -leo pipefail {0}
#
# by default github actions will run commands in a non-interactive shell
# setting 'bash -leo pipefail {0}' will cause it to run interactively
#
steps:
- name: show actor status
run: |
echo "${{ needs.job_verify_actor.outputs.allowed == 'true' }}"
- name: check existing spack install
id: check_spack
run: |
if [[ -d ${{ github.workspace }}/spack ]]; then
echo "exist=true" >> $GITHUB_OUTPUT
fi
- if: ${{ steps.check_spack.outputs.exist != 'true' }}
name: grab spack
uses: actions/checkout@v4
with:
repository: 'spack/spack'
ref: 'v0.22.2'
path: './spack'
#
# git clone --depth=1 --single-branch --branch v0.22.2 https://github.com/spack/spack.git
#
- if: ${{ steps.check_spack.outputs.exist != 'true' }}
name: spack env activate
run: |
. ./spack/share/spack/setup-env.sh
spack env activate ./KORC/spackenv/excl-milan_linux-ubuntu22.04-zen3
spack concretize -f
spack install
# spack install --overwrite
# spack gc -y
job_build_gpu:
if: true
runs-on: [ self-hosted ]
needs: [ job_verify_actor, job_setup_spack, job_setup_workdir ]
defaults:
run:
shell: bash -leo pipefail {0}
#
# by default github actions will run commands in a non-interactive shell
# setting 'bash -leo pipefail {0}' will cause it to run interactively
#
steps:
- name: run ci_stub/onyx_job_build_gpu.sh
run: |
. ./spack/share/spack/setup-env.sh
spack env activate ./KORC/spackenv/excl-milan_linux-ubuntu22.04-zen3
spack install
spack build-env hdf5%[email protected]+fortran~mpi -- ./KORC/ci_stub/onyx_job_build_gpu.sh
job_test_cpu:
if: true
runs-on: [ self-hosted ]
needs: [ job_verify_actor, job_build_cpu, job_setup_workdir ]
defaults:
run:
shell: bash -leo pipefail {0}
#
# by default github actions will run commands in a non-interactive shell
# setting 'bash -leo pipefail {0}' will cause it to run interactively
#
steps:
- name: Get number of CPU cores
uses: SimenB/github-actions-cpu-cores@v2
id: cpu-cores
- name: run ci_stub/onyx_job_test_cpu.sh
env:
JOB_COUNT: "${{ steps.cpu-cores.outputs.count }}"
run: |
./KORC/ci_stub/onyx_job_test_cpu.sh
job_test_gpu:
if: true
runs-on: [ self-hosted ]
needs: [ job_verify_actor, job_setup_spack, job_build_gpu, job_setup_workdir ]
defaults:
run:
shell: bash -leo pipefail {0}
#
# by default github actions will run commands in a non-interactive shell
# setting 'bash -leo pipefail {0}' will cause it to run interactively
#
steps:
- name: Get number of CPU cores
uses: SimenB/github-actions-cpu-cores@v2
id: cpu-cores
- name: run ci_stub/onyx_job_test_gpu.sh
env:
JOB_COUNT: "${{ steps.cpu-cores.outputs.count }}"
run: |
./KORC/ci_stub/onyx_job_test_gpu.sh