DeepRVAT 🧬🧪💻🧑🔬 #372
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: DeepRVAT | |
run-name: DeepRVAT 🧬🧪💻🧑🔬 | |
on: [ push ] | |
jobs: | |
DeepRVAT-Pipeline-Smoke-Tests: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v3 | |
- name: Training Association Testing smoke test | |
uses: snakemake/snakemake-github-action@v1.24.0 | |
with: | |
directory: 'example' | |
snakefile: 'pipelines/training_association_testing.snakefile' | |
args: '-j 2 -n' | |
- name: Link pretrained models | |
run: cd ${{ github.workspace }}/example && ln -s ../pretrained_models | |
- name: Association Testing Pretrained Smoke Test | |
uses: snakemake/snakemake-github-action@v1.24.0 | |
with: | |
directory: 'example' | |
snakefile: 'pipelines/association_testing_pretrained.snakefile' | |
args: '-j 2 -n' | |
- name: Seed Gene Discovery Smoke Test | |
uses: snakemake/snakemake-github-action@v1.24.0 | |
with: | |
directory: 'example' | |
snakefile: 'pipelines/seed_gene_discovery.snakefile' | |
args: '-j 2 -n' | |
DeepRVAT-Pipeline-Tests: | |
runs-on: ubuntu-latest | |
needs: DeepRVAT-Pipeline-Smoke-Tests | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v3 | |
- uses: mamba-org/setup-micromamba@v1.4.3 | |
with: | |
environment-name: deeprvat-gh-action | |
environment-file: ${{ github.workspace }}/deeprvat_env_no_gpu.yml | |
cache-environment: true | |
cache-downloads: true | |
- name: Install DeepRVAT | |
run: pip install -e ${{ github.workspace }} | |
shell: micromamba-shell {0} | |
# There are no GPUs on the gh worker, so we disable it in the config | |
- name: Update config to use no gpus | |
run: "sed -i 's/gpus: 1/gpus: 0/' ${{ github.workspace }}/example/config.yaml" | |
shell: bash -el {0} | |
- name: Run training_association_testing pipeline | |
run: | | |
python -m snakemake -j 2 --directory ${{ github.workspace }}/example \ | |
--snakefile ${{ github.workspace }}/pipelines/training_association_testing.snakefile --show-failed-logs | |
shell: micromamba-shell {0} | |
- name: Link pretrained models | |
run: cd ${{ github.workspace }}/example && ln -s ../pretrained_models | |
shell: bash -el {0} | |
- name: Run association_testing_pretrained pipeline | |
run: | | |
python -m snakemake -j 2 --directory ${{ github.workspace }}/example \ | |
--snakefile ${{ github.workspace }}/pipelines/association_testing_pretrained.snakefile --show-failed-logs | |
shell: micromamba-shell {0} | |
- name: Copy seed gene discovery snakemake config | |
run: cd ${{ github.workspace }}/example && cp ../deeprvat/seed_gene_discovery/config.yaml . | |
shell: bash -el {0} | |
- name: Run seed_gene_discovery pipeline | |
run: | | |
python -m snakemake -j 2 --directory ${{ github.workspace }}/example \ | |
--snakefile ${{ github.workspace }}/pipelines/seed_gene_discovery.snakefile --show-failed-logs | |
shell: micromamba-shell {0} | |
DeepRVAT-Preprocessing-Pipeline-Smoke-Tests: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v3 | |
- name: Preprocessing Smoke Test With QC | |
uses: snakemake/snakemake-github-action@v1.24.0 | |
with: | |
directory: 'example/preprocess' | |
snakefile: 'pipelines/preprocess_with_qc.snakefile' | |
args: '-j 2 -n --configfile pipelines/config/deeprvat_preprocess_config.yaml' | |
stagein: 'touch example/preprocess/workdir/reference/GRCh38.primary_assembly.genome.fa' | |
- name: Preprocessing Smoke Test No QC | |
uses: snakemake/snakemake-github-action@v1.24.0 | |
with: | |
directory: 'example/preprocess' | |
snakefile: 'pipelines/preprocess_no_qc.snakefile' | |
args: '-j 2 -n --configfile pipelines/config/deeprvat_preprocess_config.yaml' | |
stagein: 'touch example/preprocess/workdir/reference/GRCh38.primary_assembly.genome.fa' | |
DeepRVAT-Annotation-Pipeline-Smoke-Tests: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v3 | |
- name: Annotations Smoke Test | |
uses: snakemake/snakemake-github-action@v1.25.1 | |
with: | |
directory: 'example/annotations' | |
snakefile: 'pipelines/annotations.snakefile' | |
args: '-j 2 -n --configfile pipelines/config/deeprvat_annotation_config.yaml' | |
DeepRVAT-Preprocessing-Pipeline-Tests-No-QC: | |
runs-on: ubuntu-latest | |
needs: DeepRVAT-Preprocessing-Pipeline-Smoke-Tests | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v3 | |
- uses: mamba-org/setup-micromamba@v1.4.3 | |
with: | |
environment-name: deeprvat-preprocess-gh-action | |
environment-file: ${{ github.workspace }}/deeprvat_preprocessing_env.yml | |
cache-environment: true | |
cache-downloads: true | |
- name: Install DeepRVAT | |
run: pip install -e ${{ github.workspace }} | |
shell: micromamba-shell {0} | |
- name: Cache Fasta file | |
id: cache-fasta | |
uses: actions/cache@v3 | |
with: | |
path: example/preprocess/workdir/reference | |
key: ${{ runner.os }}-reference-fasta | |
- name: Download and unpack fasta data | |
if: steps.cache-fasta.outputs.cache-hit != 'true' | |
run: | | |
cd ${{ github.workspace }}/example/preprocess && \ | |
wget https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_44/GRCh38.primary_assembly.genome.fa.gz \ | |
-O workdir/reference/GRCh38.primary_assembly.genome.fa.gz \ | |
&& gzip -d workdir/reference/GRCh38.primary_assembly.genome.fa.gz | |
- name: Run preprocessing pipeline | |
run: | | |
python -m snakemake -j 2 --directory ${{ github.workspace }}/example/preprocess \ | |
--snakefile ${{ github.workspace }}/pipelines/preprocess_no_qc.snakefile \ | |
--configfile ${{ github.workspace }}/pipelines/config/deeprvat_preprocess_config.yaml --show-failed-logs | |
shell: micromamba-shell {0} | |
DeepRVAT-Preprocessing-Pipeline-Tests-With-QC: | |
runs-on: ubuntu-latest | |
needs: DeepRVAT-Preprocessing-Pipeline-Smoke-Tests | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v3 | |
- uses: mamba-org/setup-micromamba@v1.4.3 | |
with: | |
environment-name: deeprvat-preprocess-gh-action | |
environment-file: ${{ github.workspace }}/deeprvat_preprocessing_env.yml | |
cache-environment: true | |
cache-downloads: true | |
- name: Install DeepRVAT | |
run: pip install -e ${{ github.workspace }} | |
shell: micromamba-shell {0} | |
- name: Cache Fasta file | |
id: cache-fasta | |
uses: actions/cache@v3 | |
with: | |
path: example/preprocess/workdir/reference | |
key: ${{ runner.os }}-reference-fasta | |
- name: Download and unpack fasta data | |
if: steps.cache-fasta.outputs.cache-hit != 'true' | |
run: | | |
cd ${{ github.workspace }}/example/preprocess && \ | |
wget https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_44/GRCh38.primary_assembly.genome.fa.gz \ | |
-O workdir/reference/GRCh38.primary_assembly.genome.fa.gz \ | |
&& gzip -d workdir/reference/GRCh38.primary_assembly.genome.fa.gz | |
- name: Run preprocessing pipeline | |
run: | | |
python -m snakemake -j 2 --directory ${{ github.workspace }}/example/preprocess \ | |
--snakefile ${{ github.workspace }}/pipelines/preprocess_with_qc.snakefile \ | |
--configfile ${{ github.workspace }}/pipelines/config/deeprvat_preprocess_config.yaml --show-failed-logs | |
shell: micromamba-shell {0} |