Skip to content

Guide Notebooks Regression #10

Guide Notebooks Regression

Guide Notebooks Regression #10

name: Guide Notebooks Regression
run-name: Guide Notebooks Regression
on: [push]
jobs:
start-node-runner:
runs-on: [self-hosted, nobrainer-self-hosted-ci]
outputs:
jobid: ${{ steps.sbatch.jobid }}
steps:
- name: sbatch
id: sbatch
run: |
jobid=$(sbatch \
-t 100 \
--mem 16G \
-p gablab \
-D ${HOME}/actions-runner \
run.sh | cut -d ' ' -f 4)
echo "Submitted batch job with id ${jobid}"
echo "Waiting for job to start"
while [ 1 ]; do
node=$(squeue --noheader -j ${jobid} -o "%N")
echo "Found node ${node}"
if [ -z ${node} ]; then
sleep 1;
else
break;
fi
done
echo "jobid=${jobid}" >> "$GITHUB_OUTPUT"
guide-notebooks-regression:
needs: start-node-runner
runs-on: [self-hosted, nobrainer-ci-self-hosted-runner]
steps:
- name: clone
uses: actions/checkout@v3
- name: install
run: |
cd ${{ github.workspace }}
python -m venv env
source env/bin/activate
pip install --upgrade pip
pip install jupyter
pip install -e .
nobrainer info
- name: run
run: |
cd ${{ github.workspace }}
for notebook in $(ls guide/[0-9][0-9]-*.ipynb); do
echo "running ${notebook} from ${PWD}"
singularity exec \
--nv -B /om \
${HOME}/img/tensorflow_latest-gpu.sif \
./run-in-env.sh \
jupyter nbconvert \
--execute ${notebook} \
--to markdown \
--stdout
done
shutdown-node-runner:
if: always()
needs: [start-node-runner, guide-notebooks-regression]
runs-on: [self-hosted, nobrainer-self-hosted-ci]
steps:
- name: cleanup
env:
jobid: ${{needs.start-node-runner.outputs.jobid}}
run: |
echo "jobid is ${jobid}"
scancel ${jobid}