Skip to content

Latest commit

 

History

History
101 lines (77 loc) · 3.45 KB

File metadata and controls

101 lines (77 loc) · 3.45 KB

Usage Examples

This directory contains ready-to-use examples for integrating brucemoran/Singularity containers into common HPC workflow frameworks.

Directory Structure

examples/
  nextflow/        Nextflow DSL2 pipeline + nextflow.config
  snakemake/       Snakemake Snakefile + config.yaml
  slurm/           SLURM submission templates + Snakemake SLURM profile
  wdl/             WDL workflow + Cromwell inputs/config

Container Pull Commands

All containers are published to GitHub Container Registry (GHCR) and can be pulled directly:

# Pull a specific version
apptainer pull oras://ghcr.io/brucemoran/singularity/bwa--0-7-17:latest

# Pull and save to a named file
apptainer pull bwa.sif oras://ghcr.io/brucemoran/singularity/bwa--0-7-17:latest

# Inspect labels/metadata
apptainer inspect bwa.sif

Nextflow

cd examples/nextflow
nextflow run main.nf \
    -profile singularity \
    --ref_fasta /path/to/reference.fa \
    --reads '/path/to/data/*_{R1,R2}.fastq.gz' \
    --outdir results

The nextflow.config defines:

  • Container URIs per process name
  • Singularity cache directory (~/.singularity/cache)
  • autoMounts = true so host bind paths work automatically
  • A SLURM profile for HPC execution

Snakemake

cd examples/snakemake

# Edit config.yaml with your samples and reference
# Then run locally
snakemake --use-singularity --cores 8

# Or on SLURM
snakemake --use-singularity --profile slurm --jobs 50

Direct SLURM Submission

Use submit_singularity.sh to run any container command as a SLURM job:

sbatch examples/slurm/submit_singularity.sh \
    "samtools--1-9:latest" \
    samtools sort -@ 8 -o sorted.bam input.bam

WDL / Cromwell

cd examples/wdl

# Validate with Cromwell or miniwdl tooling available at your site
# Example:
java -jar cromwell.jar run workflow.wdl --inputs inputs.json

The WDL example demonstrates a simple BWA indexing and alignment workflow using the published GHCR container URI directly in WDL runtime.container.

Available Containers

Tool Version GHCR URI
bwa 0.7.17 oras://ghcr.io/brucemoran/singularity/bwa--0-7-17:latest
samtools 1.9 oras://ghcr.io/brucemoran/singularity/samtools--1-9:latest
bcftools 1.9 oras://ghcr.io/brucemoran/singularity/bcftools--1-9:latest
bedtools 2.27.1 oras://ghcr.io/brucemoran/singularity/bedtools--2-27-1:latest
STAR 2.7.0b oras://ghcr.io/brucemoran/singularity/star--2-7-0b:latest
kallisto 0.45.0 oras://ghcr.io/brucemoran/singularity/kallisto--0-45-0:latest
FastQC 0.11.8 oras://ghcr.io/brucemoran/singularity/fastqc--0-11-8:latest
MultiQC 1.7 oras://ghcr.io/brucemoran/singularity/multiqc--1-7:latest
Picard 2.18.26 oras://ghcr.io/brucemoran/singularity/picard--2-18-26:latest
GATK4 4.1.0 oras://ghcr.io/brucemoran/singularity/gatk4--4-1-0:latest
Manta + Strelka2 1.5.1 + 2.9.10 oras://ghcr.io/brucemoran/singularity/manta-strelka2--1-5-1-2-9-10:latest
VEP 92.1 oras://ghcr.io/brucemoran/singularity/vep--92-1:latest
PCGR latest oras://ghcr.io/brucemoran/singularity/pcgr-centos7:latest
Lancet 1.0.7 oras://ghcr.io/brucemoran/singularity/lancet--1-0-7:latest
GRIDSS-PURPLE-LINX 1.2.0 oras://ghcr.io/brucemoran/singularity/gridss-purple-linx--1-2-0:latest
Varlociraptor 1.2.1 oras://ghcr.io/brucemoran/singularity/varlociraptor--1-2-1:latest