Implement #260: Implement a basic CI test-run pipeline in Github Actions #30
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: CI | |
# This workflow runs the pipeline with the minimal test dataset to check that | |
# it completes without any syntax errors | |
on: | |
push: | |
branches: | |
- dev | |
- 260-improve-ci | |
pull_request: | |
release: | |
types: [published] | |
env: | |
NXF_ANSI_LOG: false | |
concurrency: | |
group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}" | |
cancel-in-progress: true | |
jobs: | |
test: | |
name: Run pipeline with test data | |
# Only run on push if this is in the main repository | |
if: "${{ github.event_name == 'push' && github.repository == 'genomic-medicine-sweden/jasen' }}" | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
NXF_VER: | |
- "23.10.1" | |
parameters: | |
- "-profile staphylococcus_aureus" | |
#- "-profile mycobacterium_tuberculosis" | |
#- "-profile klebsiella_pneumoniae" | |
#- "-profile escherichia_coli" | |
steps: | |
- name: Install Singularity | |
run: | | |
sudo apt-get install -y singularity-ce | |
- name: Install Nextflow | |
# For running (locally) with ACT, we use a docker image with Nextflow pre-installed | |
if: "${{ ! github.event.act }}" | |
uses: nf-core/setup-nextflow@v1 | |
with: | |
version: "${{ matrix.NXF_VER }}" | |
- name: Check out pipeline code | |
uses: actions/checkout@v3 | |
- name: Rename old folder | |
run: | | |
mv ${GITHUB_WORKSPACE}/assets/cgmlst ${GITHUB_WORKSPACE}/assets/cgmlst_orig | |
- name: Link minimal folder | |
run: | | |
ln -sr ${GITHUB_WORKSPACE}/assets/cgmlst_minimal ${GITHUB_WORKSPACE}/assets/cgmlst | |
- name: Install containers | |
run: | |
'cd ${GITHUB_WORKSPACE}/container && sudo make build_local_containers && make download_remote_containers' | |
- name: Run Make install | |
run: | |
make install | |
- name: Run pipeline with test data | |
run: | | |
nextflow run ${GITHUB_WORKSPACE}/main.nf ${{ matrix.parameters }} -config configs/nextflow.ci.config --csv assets/test_data/samplelist.testrun.csv |