Skip to content

Commit

Permalink
Merge pull request #177 from nf-cmgg/dev
Browse files Browse the repository at this point in the history
v1.6.0 release PR
  • Loading branch information
nvnieuwk authored Apr 29, 2024
2 parents f7ce20f + 8de555b commit 5ad1ca9
Show file tree
Hide file tree
Showing 105 changed files with 5,277 additions and 4,346 deletions.
42 changes: 42 additions & 0 deletions .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: build docs
on:
push:
branches:
- master
- main
- dev
permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0 # fetch all commits/branches
- uses: actions/setup-python@v4
with:
python-version: 3.x
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
- name: Obtain version from nextflow config
run: |
version=$(grep "version" nextflow.config | tail -1 | sed -e s'/[^=]*= //' | cut -d "'" -f 2)
[[ $version == *"dev"* ]] && pipeline_version="dev" || pipeline_version=$version
echo "pipeline_version=$pipeline_version" >> $GITHUB_ENV
- name: Setup git user
run: |
git config --global user.name "${{github.actor}}"
git config --global user.email "${{github.actor}}@users.noreply.github.com"
- uses: actions/cache@v3
with:
key: mkdocs-material-${{ env.cache_id }}
path: .cache
restore-keys: |
mkdocs-material-
- name: Install dependencies
run: pip install mkdocs-material pymdown-extensions pillow cairosvg mike
- name: Build docs
run: |
[[ ${{ env.pipeline_version }} == "dev" ]] && mike deploy --push ${{ env.pipeline_version }} || mike deploy --push --update-aliases ${{ env.pipeline_version }} latest
- name: Set default docs
run: mike set-default --push latest
25 changes: 15 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,23 @@ jobs:
strategy:
matrix:
NXF_VER:
- "23.04.0"
- "23.10.0"
- "latest-everything"
test:
- "vardict"
- "haplotypecaller"
- "fails"
- "annotate_test"
- "filter_test"
- "gemini_test"
- "full_wes"
- "full_wgs"
- "only_call"
- "pipeline_default"
- "pipeline_callers"
- "pipeline_variations"
- "pipeline_variations2"
- "pipeline_gvcfs"
- "cram_call_genotype_gatk4"
- "cram_call_vardictjava"
- "cram_prepare_samtools_bedtools"
- "input_split_bedtools"
- "vcf_annotation"
- "vcf_extract_relate_somalier"
- "vcf_ped_rtgtools"
- "vcf_upd_updio"
- "vcf_validate_small_variants"
steps:
- name: Free some space
run: |
Expand Down
75 changes: 0 additions & 75 deletions .github/workflows/release-announcements.yml

This file was deleted.

4 changes: 3 additions & 1 deletion .nf-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ lint:
- assets/nf-core-germline_logo_light.png
- docs/images/nf-core-germline_logo_light.png
- docs/images/nf-core-germline_logo_dark.png
- CITATIONS.md
- docs/README.md
nextflow_config:
- manifest.name
- manifest.homePage
Expand All @@ -16,6 +18,6 @@ lint:
repository_type: pipeline
template:
author: nvnieuwk
description: A nextflow pipeline for calling and annotating variants
description: A nextflow pipeline for calling and annotating small germline variants from short DNA reads for WES and WGS data
name: germline
prefix: nf-cmgg
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,19 @@
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## v1.6.0 - Offbeat Ostend - [April 29 2024]

### New features

1. Added UPDio for Uniparental Disomy detection in family samples. This introduces the `--updio` parameter to turn on this detection and `--updio_common_cnvs` to supply a common CNVs file to UPDio. The family needs to contain at least one child with its mother and father.
2. Added docs built with MkDocs. See the documentation [site](https://nf-cmgg.github.io/germline/latest) here.
3. Added AutoMap to find regions of homozygosity from human samples. This introduces the `--automap` parameter to turn on this feature and the `--automap_repeats`, `--automap_panel` and `--automap_panel_name` parameters to configure AutoMap (see the [parameters](https://nf-cmgg.github.io/germline/latest/parameters) docs for more information)

### Changes

1. Updated all tests to use snapshots instead.
2. Made the pipeline pluggable to enable the use of it in a meta pipeline.

## v1.5.1 - Great Geraardsbergen - [March 7 2024]

### Fixes
Expand Down
54 changes: 3 additions & 51 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,62 +1,14 @@
# nf-cmgg/germline

[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A523.04.0-23aa62.svg)](https://www.nextflow.io/)
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A523.10.0-23aa62.svg)](https://www.nextflow.io/)
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?logo=docker)](https://www.docker.com/)
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg)](https://sylabs.io/docs/)
[![nf-test](https://img.shields.io/badge/tested_with-nf--test-337ab7.svg)](https://github.com/askimed/nf-test)

## Introduction

**germline** is a bioinformatics best-practice analysis pipeline for calling, joint-genotyping and annotating small variants variants for WGS and WES data. It uses HaplotypeCaller and/or Vardict to call variants, GenotypeGVCFs to genotype and EnsemblVEP to annotate.
**nf-cmgg/germline** is a nextflow pipeline for calling and annotating small germline variants from short DNA reads for WES and WGS data.

The pipeline is built using [Nextflow](https://www.nextflow.io), a workflow tool to run tasks across multiple compute infrastructures in a very portable manner. It uses Docker/Singularity containers making installation trivial and results highly reproducible. The [Nextflow DSL2](https://www.nextflow.io/docs/latest/dsl2.html) implementation of this pipeline uses one container per process which makes it much easier to maintain and update software dependencies. Where possible, these processes have been submitted to and installed from [nf-core/modules](https://github.com/nf-core/modules) in order to make them available to all nf-core pipelines, and to everyone within the Nextflow community!

## Pipeline summary

![metro graph](docs/images/germline_metro.png)

:::note
If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how
to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline)
with `-profile test` before running the workflow on actual data.
:::

## Quick Start

1. Install [`Nextflow`](https://www.nextflow.io/docs/latest/getstarted.html#installation) (`>=23.04.0`)
2. Install any of [`Docker`](https://docs.docker.com/engine/installation/), [`Singularity`](https://www.sylabs.io/guides/3.0/user-guide/) (you can follow [this tutorial](https://singularity-tutorial.github.io/01-installation/)), [`Podman`](https://podman.io/), [`Shifter`](https://nersc.gitlab.io/development/shifter/how-to-use/) or [`Charliecloud`](https://hpc.github.io/charliecloud/) for full pipeline reproducibility _(you can use [`Conda`](https://conda.io/miniconda.html) both to install Nextflow itself and also to manage software within pipelines. Please only use it within pipelines as a last resort; see [docs](https://nf-co.re/usage/configuration#basic-configuration-profiles))_.

`samplesheet.csv`:

```csv
sample,family,cram,crai
SAMPLE_1,FAMILY_1,SAMPLE_1.cram,SAMPLE_1.crai
```

Each row represents a single sample to be analysed. More information can be found in the [usage](docs/usage.md) documentation.

-->

Now, you can run the pipeline using:

```bash
nextflow run nf-cmgg/germline --input samplesheet.csv --outdir <OUTDIR> --genome GRCh38 -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>
```

> [!WARNING]
> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_;
> see [docs](https://nf-co.re/usage/configuration#custom-configuration-files).
## Credits

germline was originally written and is maintained by [@nvnieuwk](https://github.com/nvnieuwk).

Special thanks to [@matthdsm](https://github.com/matthdsm) for the many tips and feedback and to [@mvheetve](https://github.com/mvheetve) for testing the pipeline.

## Contributions and Support

If you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).

## Citations

An extensive list of references can be found in the [`CITATIONS.md`](CITATIONS.md) file.
Please have a look at the [documentation](https://nf-cmgg.github.io/germline/latest/) on how to run the pipeline.
9 changes: 7 additions & 2 deletions assets/multiqc_config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
report_comment: >
This report has been generated by the <a href="https://github.com/nf-core/germline/releases/tag/1.5.1" target="_blank">nf-core/germline</a> analysis pipeline. For information about how to interpret these results, please see the <a
href="https://nf-co.re/germline/1.5.1/docs/output" target="_blank">documentation</a>.
This report has been generated by the <a href="https://github.com/nf-core/germline/releases/tag/1.6.0" target="_blank">nf-core/germline</a> analysis pipeline. For information about how to interpret these results, please see the <a
href="https://nf-co.re/germline/1.6.0/docs/output" target="_blank">documentation</a>.
report_section_order:
"nf-cmgg-germline-methods-description":
order: -1000
Expand All @@ -12,3 +12,8 @@ report_section_order:
export_plots: true

disable_version_detection: true

extra_fn_clean_exts:
- type: regex_keep
pattern: "^[^\\.]*"
module: bcftools
5 changes: 3 additions & 2 deletions assets/samplesheet.csv
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
sample,family,cram,crai,roi,ped,truth_vcf,truth_tbi,truth_bed,vardict_min_af
DNA049572,Proband_12345,https://raw.githubusercontent.com/nf-cmgg/test-datasets/main/data/genomics/homo_sapiens/illumina/cram/test.cram,,,https://raw.githubusercontent.com/nf-cmgg/germline/dev/assets/test.ped,https://raw.githubusercontent.com/nf-cmgg/test-datasets/main/data/genomics/homo_sapiens/illumina/vcf/test.vcf.gz,https://raw.githubusercontent.com/nf-cmgg/test-datasets/main/data/genomics/homo_sapiens/illumina/vcf/test.vcf.gz.tbi,https://raw.githubusercontent.com/nf-cmgg/test-datasets/main/data/genomics/homo_sapiens/illumina/regions/roi.bed,0.01
NA24385D2_NVQ_034,Proband_12345,https://raw.githubusercontent.com/nf-cmgg/test-datasets/main/data/genomics/homo_sapiens/illumina/cram/test2.cram,https://raw.githubusercontent.com/nf-cmgg/test-datasets/main/data/genomics/homo_sapiens/illumina/cram/test2.cram.crai,https://raw.githubusercontent.com/nf-cmgg/test-datasets/main/data/genomics/homo_sapiens/illumina/regions/roi.bed,,https://raw.githubusercontent.com/nf-cmgg/test-datasets/main/data/genomics/homo_sapiens/illumina/vcf/test2.vcf.gz,,,
NA24143,Proband_12345,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/crams/NA24143.cram,,,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/genome/test.ped,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/vcfs/NA24143.vcf.gz,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/vcfs/NA24143.vcf.gz.tbi,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/regions/roi.bed,0.01
NA24149,Proband_12345,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/crams/NA24149.cram,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/crams/NA24149.cram.crai,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/regions/roi.bed,,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/vcfs/NA24149.vcf.gz,,,
NA24385,Proband_12345,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/crams/NA24385.cram,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/crams/NA24385.cram.crai,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/regions/roi.bed,,https://github.com/nf-cmgg/test-datasets/raw/germline/data/genomics/homo_sapiens/illumina/vcfs/NA24385.vcf.gz,,,
8 changes: 7 additions & 1 deletion assets/schema_input.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/nf-cmgg/germline/master/assets/schema_input.json",
"title": "Samplesheet validation schema",
"description": "Schema for the samplesheet used in this pipeline",
Expand Down Expand Up @@ -75,5 +75,11 @@
}
},
"required": ["sample"]
},
"dependentRequired": {
"truth_tbi": ["truth_vcf"],
"truth_bed": ["truth_vcf"],
"tbi": ["gvcf"],
"crai": ["cram"]
}
}
3 changes: 0 additions & 3 deletions assets/test.ped

This file was deleted.

Loading

0 comments on commit 5ad1ca9

Please sign in to comment.