Skip to content

Merge branch 'main' of github.com:courtois-neuromod/cneuromax #624

Merge branch 'main' of github.com:courtois-neuromod/cneuromax

Merge branch 'main' of github.com:courtois-neuromod/cneuromax #624

name: On push workflows requiring the CNeuroMax image
on:
push:
branches: [main]
jobs:
docker-build:
runs-on: self-hosted
steps:
- name: Checkout the GitHub repo
uses: actions/checkout@v4
- name: Build the tentative CNeuroMax Docker image
run: docker build -t cneuromod/cneuromax:latest .
docker-push:
needs: docker-build
runs-on: self-hosted
steps:
- name: Push the tentative CNeuroMax Docker image
run: docker push cneuromod/cneuromax:latest
sphinx-build:
needs: docker-build
runs-on: self-hosted
steps:
- name: Checkout the GitHub repo
uses: actions/checkout@v4
- name: Build the documentation with Sphinx
run: >
docker run --rm -v ${PWD}:${PWD} -w ${PWD} cneuromod/cneuromax:latest
sphinx-build -b html ./docs/ ./docs/build/
- name: Deploy the documentation
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs/build/
- name: Cleanup
run: >
find ${HOME} -name "actions_github_pages_*" -exec rm -rf {} +
mypy:
needs: docker-build
runs-on: self-hosted
steps:
- name: Checkout the GitHub repo
uses: actions/checkout@v4
- name: Static type checking with Mypy
run: >
docker run --rm -v ${PWD}:${PWD} -w ${PWD} cneuromod/cneuromax:latest
mypy --config-file=pyproject.toml cneuromax
pytest:
needs: docker-build
runs-on: self-hosted
steps:
- name: Checkout the GitHub repo
uses: actions/checkout@v4
- name: Unit testing with pytest
run: >
docker run --rm -v ${PWD}:${PWD} -w ${PWD} cneuromod/cneuromax:latest
pytest --cov cneuromax
apptainer-build:
needs: docker-push
runs-on: self-hosted
env:
APPTAINER_CACHEDIR: /scratch/cneuromax/.apptainer/
steps:
- name: Build the CNeuroMax Apptainer Image
run: >
apptainer build -F /scratch/cneuromax/cneuromax.sif
docker://cneuromod/cneuromax:latest
- name: Give permissions to the CNeuroMax Apptainer Image
run: >
chmod a+rwx /scratch/cneuromax/cneuromax.sif