Skip to content

github action for integration pipeline #7

github action for integration pipeline

github action for integration pipeline #7

Workflow file for this run

name: Tutorials CI
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
debug: 'true'
jobs:
integration:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest"] # , "macos-latest", "windows-latest"
python-version: ["3.9"]
steps:
# - uses: actions/checkout@v4
- name: Download Conda YAML file
run: curl -o pipeline_env.yaml https://raw.githubusercontent.com/DendrouLab/panpipes/main/pipeline_env.yaml
- uses: conda-incubator/setup-miniconda@v3
with:
miniforge-version: latest
auto-activate-base: true
auto-update-conda: true
channels: conda-forge
channel-priority: strict
activate-environment: pipeline_env
environment-file: pipeline_env.yaml # consider moving to etc/pipeline_env.yaml
# Note: the pinned versions in pipeline_env.yaml are not respected during the miniconda step above
- name: Pin version of pip dependencies
shell: bash -el {0}
run: pip install --force-reinstall -v \
boto3==1.34.34 \
botocore==1.34.34 \
flax==0.8.0 \
fonttools==4.47.2 \
jax==0.4.23 \
jaxlib==0.4.23 \
numpy==1.22.4 \
orbax-checkpoint==0.5.2 \
pytorch-lightning==2.1.4
- name: Conda info
if: env.debug == 'true'
shell: bash -el {0}
run: conda info
- name: Conda list
if: env.debug == 'true'
shell: pwsh
run: conda list
# Note: all three files are renamed during the download to trim the "subsample_" prefix
- name: Preparing the data
run: |
mkdir -p teaseq/integration && cd teaseq/integration
curl -L -o teaseq.h5mu https://figshare.com/ndownloader/files/44471927
# Note: we run the following to test that the commands works
# However, the following task will replacing the file anyway
- name: Preparing the configuration file
shell: bash -el {0}
run: |
cd teaseq/integration
panpipes integration config
- name: Edit the submission file
run: |
cd teaseq/integration
curl -o pipeline.yml https://panpipes-tutorials.readthedocs.io/en/latest/_downloads/f834fdb0a65979b0e4d11d6d75188a8e/pipeline.yml
- name: Replace template contents in configuration file
run: |
cd teaseq/ingest
sed -i 's+/Users/fabiola.curion/Documents/devel/miniconda3/envs/pipeline_env+pipeline_env+g' pipeline.yml
- name: File tree
if: env.debug == 'true'
run: tree
- name: Review pipeline tasks
shell: bash -el {0}
run: |
cd teaseq/integration
panpipes integration show full --local
- name: Run pipeline tasks
shell: bash -el {0}
run: |
cd teaseq/integration
panpipes integration make full --local
- name: File tree
if: env.debug == 'true'
run: tree