Skip to content

Commit

Permalink
Merge branch 'TEMPLATE' into dev
Browse files Browse the repository at this point in the history
  • Loading branch information
maxulysse committed Feb 26, 2020
2 parents 8972a6c + 309b7ce commit 829875d
Show file tree
Hide file tree
Showing 28 changed files with 663 additions and 399 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ A clear and concise description of what you expected to happen.

- Engine: <!-- [e.g. Conda, Docker or Singularity] -->
- version: <!-- [e.g. 1.0.0] -->
- Image tag: <!-- [e.g. nfcore/sarek:2.5.1] -->
- Image tag: <!-- [e.g. nfcore/sarek:2.5.2] -->

## Additional context

Expand Down
4 changes: 0 additions & 4 deletions .github/markdownlint.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
# Markdownlint configuration file
default: true,
line-length: false
no-multiple-blanks: 0
blanks-around-headers: false
blanks-around-lists: false
header-increment: false
no-duplicate-header:
siblings_only: true
no-inline-html:
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/branch.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
name: sarek branch protection
# This workflow is triggered on PRs to master branch on the repository
name: nf-core branch protection
# This workflow is triggered on PRs to `master` branch on the repository
# It fails when someone tries to make a PR against the nf-core `master` branch instead of `dev`
on:
pull_request:
branches:
- master

jobs:
test:
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
steps:
# PRs are only ok if coming from an nf-core `dev` branch or a fork `patch` branch
- name: Check PRs
run: |
{ [[ $(git remote get-url origin) == *nf-core/sarek ]] && [[ ${GITHUB_HEAD_REF} = "dev" ]]; } || [[ ${GITHUB_HEAD_REF} == "patch" ]]
{ [[ $(git remote get-url origin) == *nf-core/sarek ]] && [[ ${GITHUB_HEAD_REF} = "dev" ]]; } || [[ ${GITHUB_HEAD_REF} == "patch" ]]
101 changes: 63 additions & 38 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,61 +1,74 @@
name: sarek CI
name: nf-core CI
# This workflow is triggered on pushes and PRs to the repository.
on: [push, pull_request]
# It runs the pipeline with the minimal test dataset to check that it completes without any syntax errors.
on: [push, pull_request]

jobs:
test:
runs-on: ubuntu-18.04
env:
NXF_VER: ${{ matrix.nxf_ver }}
NXF_ANSI_LOG: false
runs-on: ubuntu-latest
strategy:
matrix:
# Nextflow versions: check pipeline minimum and current latest
nxf_ver: ['19.10.0', '']
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Install Nextflow
run: |
export NXF_VER=${{ matrix.nxf_ver }}
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/
- name: Download and tag image
- name: Pull docker image
run: |
docker pull nfcore/sarek:dev && docker tag nfcore/sarek:dev nfcore/sarek:dev
docker pull nfcore/sarek:dev
docker tag nfcore/sarek:dev nfcore/sarek:dev
- name: Run test
run: |
nextflow run ${GITHUB_WORKSPACE} -profile test,docker
run: nextflow run ${GITHUB_WORKSPACE} -profile test,docker

annotation:
runs-on: ubuntu-18.04
env:
NXF_ANSI_LOG: false
runs-on: ubuntu-latest
strategy:
matrix:
tools: [snpeff]
species: [GRCh37]
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Install Nextflow
run: |
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/
env:
# Only check Nextflow pipeline minimum version for other C
NXF_VER: '19.10.0'
- name: Download and tag images
- name: Pull docker image
run: |
docker pull nfcore/sarek:dev && docker tag nfcore/sarek:dev nfcore/sarek:dev
docker pull nfcore/sarek:dev
docker tag nfcore/sarek:dev nfcore/sarek:dev
docker pull nfcore/sarek${{ matrix.tools }}:dev.${{ matrix.species }}
docker tag nfcore/sarek${{ matrix.tools }}:dev.${{ matrix.species }} nfcore/sarek${{ matrix.tools }}:dev.${{ matrix.species }}
- name: Run annotation test
run: |
nextflow run . -profile test_annotation,docker --verbose --tools ${{ matrix.tools }}
run: nextflow run . -profile test_annotation,docker --verbose --tools ${{ matrix.tools }}

germline:
runs-on: ubuntu-18.04
env:
NXF_ANSI_LOG: false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Install Nextflow
run: |
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/
env:
# Only check Nextflow pipeline minimum version for other C
NXF_VER: '19.10.0'
- name: Download and tag image
- name: Pull docker image
run: |
docker pull nfcore/sarek:dev && docker tag nfcore/sarek:dev nfcore/sarek:dev
docker pull nfcore/sarek:dev
docker tag nfcore/sarek:dev nfcore/sarek:dev
- name: Get test data
run: |
git clone --single-branch --branch sarek https://github.com/nf-core/test-datasets.git data
Expand All @@ -64,61 +77,73 @@ jobs:
nextflow run . -profile test,docker --input data/testdata/tiny/normal
nextflow run . -profile test,docker --input=false --step recalibrate -resume
nextflow run . -profile test,docker --input=false --step variantCalling
minimal:
runs-on: ubuntu-18.04
env:
NXF_ANSI_LOG: false
runs-on: ubuntu-latest
strategy:
matrix:
genome: [smallerGRCh37, minimalGRCh37]
intervals: [--no_intervals, '']
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Install Nextflow
run: |
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/
env:
# Only check Nextflow pipeline minimum version for other C
NXF_VER: '19.10.0'
- name: Download and tag image
- name: Pull docker image
run: |
docker pull nfcore/sarek:dev && docker tag nfcore/sarek:dev nfcore/sarek:dev
docker pull nfcore/sarek:dev
docker tag nfcore/sarek:dev nfcore/sarek:dev
- name: Run test for minimal genomes
run: |
nextflow run . -profile test,docker --skipQC all --verbose --genome ${{ matrix.genome }} ${{ matrix.intervals }} --tools Manta,mpileup,Strelka
run: nextflow run . -profile test,docker --skipQC all --verbose --genome ${{ matrix.genome }} ${{ matrix.intervals }} --tools Manta,mpileup,Strelka

profile:
runs-on: ubuntu-18.04
env:
NXF_ANSI_LOG: false
runs-on: ubuntu-latest
strategy:
matrix:
profile: [test_splitfastq, test_targeted]
profile: [test_splitfastq, test_targeted, test_trimming]
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Install Nextflow
run: |
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/
env:
# Only check Nextflow pipeline minimum version for other C
NXF_VER: '19.10.0'
- name: Download and tag image
- name: Pull docker image
run: |
docker pull nfcore/sarek:dev && docker tag nfcore/sarek:dev nfcore/sarek:dev
docker pull nfcore/sarek:dev
docker tag nfcore/sarek:dev nfcore/sarek:dev
- name: Run ${{ matrix.profile }} test
run: |
nextflow run . -profile ${{ matrix.profile }},docker --verbose
run: nextflow run . -profile ${{ matrix.profile }},docker --verbose

tools:
runs-on: ubuntu-18.04
env:
NXF_ANSI_LOG: false
runs-on: ubuntu-latest
strategy:
matrix:
tool: [Haplotypecaller, Freebayes, Manta, mpileup, Strelka, TIDDIT]
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Install Nextflow
run: |
wget -qO- get.nextflow.io | bash
sudo mv nextflow /usr/local/bin/
env:
# Only check Nextflow pipeline minimum version for other C
NXF_VER: '19.10.0'
- name: Download and tag image
- name: Pull docker image
run: |
docker pull nfcore/sarek:dev && docker tag nfcore/sarek:dev nfcore/sarek:dev
docker pull nfcore/sarek:dev
docker tag nfcore/sarek:dev nfcore/sarek:dev
- name: Run ${{ matrix.tool }} test
run: |
nextflow run . -profile test_tool,docker --verbose --tools ${{ matrix.tool }}
run: nextflow run . -profile test_tool,docker --verbose --tools ${{ matrix.tool }}
47 changes: 22 additions & 25 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
@@ -1,38 +1,39 @@
name: sarek linting
name: nf-core linting
# This workflow is triggered on pushes and PRs to the repository.
on: [push, pull_request]
# It runs the `nf-core lint` and markdown lint tests to ensure that the code meets the nf-core guidelines
on:
push:
pull_request:
release:
types: [published]

jobs:
Markdown:
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '10'
- name: Install markdownlint
run: |
npm install -g markdownlint-cli
run: npm install -g markdownlint-cli
- name: Run Markdownlint
run: |
markdownlint ${GITHUB_WORKSPACE} -c ${GITHUB_WORKSPACE}/.github/markdownlint.yml
run: markdownlint ${GITHUB_WORKSPACE} -c ${GITHUB_WORKSPACE}/.github/markdownlint.yml
YAML:
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: '10'
- name: Install yamllint
run: |
npm install -g yaml-lint
- name: Run yamllint
run: |
yamllint $(find ${GITHUB_WORKSPACE} -type f -name "*.yml")
- name: Install yaml-lint
run: npm install -g yaml-lint
- name: Run yaml-lint
run: yamllint $(find ${GITHUB_WORKSPACE} -type f -name "*.yml")
nf-core:
runs-on: ubuntu-18.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
- name: Install Nextflow
run: |
wget -qO- get.nextflow.io | bash
Expand All @@ -41,13 +42,9 @@ jobs:
with:
python-version: '3.6'
architecture: 'x64'
- name: Install pip
- name: Install dependencies
run: |
sudo apt install python3-pip
pip install --upgrade pip
- name: Install nf-core tools
run: |
pip install --upgrade --force-reinstall git+https://github.com/nf-core/tools.git@dev
python -m pip install --upgrade pip
pip install nf-core
- name: Run nf-core lint
run: |
nf-core lint ${GITHUB_WORKSPACE}
run: nf-core lint ${GITHUB_WORKSPACE}
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,6 @@ data/
references/
results/
.DS_Store
tests/test_data
tests/
testing/
*.pyc
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a
## dev

### `Added`

- [#117](https://github.com/nf-core/sarek/pull/117) - Add `Trim Galore` possibilities to Sarek
- [#76](https://github.com/nf-core/sarek/pull/76) - Add `GATK Spark` possibilities to Sarek
- [#87](https://github.com/nf-core/sarek/pull/87) - Add `GATK BaseRecalibrator` plot to `MultiQC` report
Expand All @@ -22,12 +23,17 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a
- [#107](https://github.com/nf-core/sarek/pull/107) - Switch params to snake_case
- [#109](https://github.com/nf-core/sarek/pull/109) - Update publication with F1000Research preprint
- [#113](https://github.com/nf-core/sarek/pull/113) - Move social preview image
- [#120](https://github.com/nf-core/sarek/pull/120) - Sync TEMPLATE
- [#121](https://github.com/nf-core/sarek/pull/121) - Update `MultiQC` to `1.8`
- [#126](https://github.com/nf-core/sarek/pull/126) - Update docs

### `Fixed`

- [#83](https://github.com/nf-core/sarek/pull/83) - Fix some typos in `docs/input.md`
- [#107](https://github.com/nf-core/sarek/pull/107) - Fix linting
- [#110](https://github.com/nf-core/sarek/pull/110) - Fix `snpEff` report issue cf [#106](https://github.com/nf-core/sarek/issues/106)
- [#126](https://github.com/nf-core/sarek/pull/126) - Fix `iGenomes` paths
- [#127](https://github.com/nf-core/sarek/pull/127), [#128](https://github.com/nf-core/sarek/pull/128) - Fix `ASCAT`

### `Deprecated`

Expand Down
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ This Code of Conduct applies both within project spaces and in public spaces whe

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team on [Slack](https://nf-core-invite.herokuapp.com/). The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team on [Slack](https://nf-co.re/join/slack). The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.

Expand Down
11 changes: 8 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
FROM nfcore/base:dev
FROM nfcore/base:1.9
LABEL authors="Maxime Garcia, Szilveszter Juhos" \
description="Docker image containing all requirements for nf-core/sarek pipeline"
description="Docker image containing all software requirements for the nf-core/sarek pipeline"

# Install the conda environment
COPY environment.yml /
RUN conda env create -f /environment.yml && conda clean -a

# Add conda installation dir to PATH (instead of doing 'conda activate')
ENV PATH /opt/conda/envs/nf-core-sarek-dev/bin:$PATH

# Dump the details of the installed packages to a file for posterity
RUN conda env export --name nf-core-sarek-dev > nf-core-sarek-dev.yml
ENV PATH /opt/conda/envs/nf-core-sarek-dev/bin:$PATH
Loading

0 comments on commit 829875d

Please sign in to comment.