Skip to content

Commit 5d4c686

Browse files
committed
Merged changes from nf-core template
2 parents 5e323fb + c5796cd commit 5d4c686

27 files changed

+500
-145
lines changed

.devcontainer/devcontainer.json

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
{
2+
"name": "nfcore",
3+
"image": "nfcore/gitpod:latest",
4+
"remoteUser": "gitpod",
5+
6+
// Configure tool-specific properties.
7+
"customizations": {
8+
// Configure properties specific to VS Code.
9+
"vscode": {
10+
// Set *default* container specific settings.json values on container create.
11+
"settings": {
12+
"python.defaultInterpreterPath": "/opt/conda/bin/python",
13+
"python.linting.enabled": true,
14+
"python.linting.pylintEnabled": true,
15+
"python.formatting.autopep8Path": "/opt/conda/bin/autopep8",
16+
"python.formatting.yapfPath": "/opt/conda/bin/yapf",
17+
"python.linting.flake8Path": "/opt/conda/bin/flake8",
18+
"python.linting.pycodestylePath": "/opt/conda/bin/pycodestyle",
19+
"python.linting.pydocstylePath": "/opt/conda/bin/pydocstyle",
20+
"python.linting.pylintPath": "/opt/conda/bin/pylint"
21+
},
22+
23+
// Add the IDs of extensions you want installed when the container is created.
24+
"extensions": ["ms-python.python", "ms-python.vscode-pylance", "nf-core.nf-core-extensionpack"]
25+
}
26+
}
27+
}

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ trim_trailing_whitespace = true
88
indent_size = 4
99
indent_style = space
1010

11-
[*.{md,yml,yaml,html,css,scss,js}]
11+
[*.{md,yml,yaml,html,css,scss,js,cff}]
1212
indent_size = 2
1313

1414
# These files are edited and tested upstream in nf-core/modules

.github/workflows/awsfulltest.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,7 @@ jobs:
2828
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/hic/results-${{ github.sha }}"
2929
}
3030
profiles: test_full,aws_tower
31+
- uses: actions/upload-artifact@v3
32+
with:
33+
name: Tower debug log file
34+
path: tower_action_*.log

.github/workflows/awstest.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,7 @@ jobs:
2323
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/hic/results-test-${{ github.sha }}"
2424
}
2525
profiles: test,aws_tower
26+
- uses: actions/upload-artifact@v3
27+
with:
28+
name: Tower debug log file
29+
path: tower_action_*.log

.github/workflows/ci.yml

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@ on:
1010

1111
env:
1212
NXF_ANSI_LOG: false
13-
CAPSULE_LOG: none
13+
14+
concurrency:
15+
group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}"
16+
cancel-in-progress: true
1417

1518
jobs:
1619
test:
@@ -20,27 +23,17 @@ jobs:
2023
runs-on: ubuntu-latest
2124
strategy:
2225
matrix:
23-
# Nextflow versions
24-
include:
25-
# Test pipeline minimum Nextflow version
26-
- NXF_VER: "21.10.3"
27-
NXF_EDGE: ""
28-
# Test latest edge release of Nextflow
29-
- NXF_VER: ""
30-
NXF_EDGE: "1"
26+
NXF_VER:
27+
- "22.10.1"
28+
- "latest-everything"
3129
steps:
3230
- name: Check out pipeline code
33-
uses: actions/checkout@v2
31+
uses: actions/checkout@v3
3432

3533
- name: Install Nextflow
36-
env:
37-
NXF_VER: ${{ matrix.NXF_VER }}
38-
# Uncomment only if the edge release is more recent than the latest stable release
39-
# See https://github.com/nextflow-io/nextflow/issues/2467
40-
# NXF_EDGE: ${{ matrix.NXF_EDGE }}
41-
run: |
42-
wget -qO- get.nextflow.io | bash
43-
sudo mv nextflow /usr/local/bin/
34+
uses: nf-core/setup-nextflow@v1
35+
with:
36+
version: "${{ matrix.NXF_VER }}"
4437

4538
- name: Run pipeline with test data
4639
run: |

.github/workflows/fix-linting.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
env:
2525
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}
2626

27-
- uses: actions/setup-node@v2
27+
- uses: actions/setup-node@v3
2828

2929
- name: Install Prettier
3030
run: npm install -g prettier @prettier/plugin-php
@@ -34,9 +34,9 @@ jobs:
3434
id: prettier_status
3535
run: |
3636
if prettier --check ${GITHUB_WORKSPACE}; then
37-
echo "::set-output name=result::pass"
37+
echo "result=pass" >> $GITHUB_OUTPUT
3838
else
39-
echo "::set-output name=result::fail"
39+
echo "result=fail" >> $GITHUB_OUTPUT
4040
fi
4141
4242
- name: Run 'prettier --write'

.github/workflows/linting_comment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818

1919
- name: Get PR number
2020
id: pr_number
21-
run: echo "name=pr_number::$(cat linting-logs/PR_number.txt)" >> $GITHUB_OUTPUT
21+
run: echo "pr_number=$(cat linting-logs/PR_number.txt)" >> $GITHUB_OUTPUT
2222

2323
- name: Post PR comment
2424
uses: marocchino/sticky-pull-request-comment@v2

README.md

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,22 @@
11
# ![nf-core/hic](docs/images/nf-core-hic_logo_light.png#gh-light-mode-only) ![nf-core/hic](docs/images/nf-core-hic_logo_dark.png#gh-dark-mode-only)
22

3-
[![GitHub Actions CI Status](https://github.com/nf-core/hic/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/hic/actions?query=workflow%3A%22nf-core+CI%22)
4-
[![GitHub Actions Linting Status](https://github.com/nf-core/hic/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/hic/actions?query=workflow%3A%22nf-core+linting%22)
5-
[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?logo=Amazon%20AWS)](https://nf-co.re/hic/results)
6-
[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8)](https://doi.org/10.5281/zenodo.XXXXXXX)
7-
8-
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A521.10.3-23aa62.svg)](https://www.nextflow.io/)
9-
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?logo=anaconda)](https://docs.conda.io/en/latest/)
10-
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?logo=docker)](https://www.docker.com/)
11-
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg)](https://sylabs.io/docs/)
3+
[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/hic/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)
4+
5+
[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A522.10.1-23aa62.svg)](https://www.nextflow.io/)
6+
[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)
7+
[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)
8+
[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)
129
[![Launch on Nextflow Tower](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Nextflow%20Tower-%234256e7)](https://tower.nf/launch?pipeline=https://github.com/nf-core/hic)
1310

14-
[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23hic-4A154B?logo=slack)](https://nfcore.slack.com/channels/hic)
15-
[![Follow on Twitter](http://img.shields.io/badge/twitter-%40nf__core-1DA1F2?logo=twitter)](https://twitter.com/nf_core)
16-
[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?logo=youtube)](https://www.youtube.com/c/nf-core)
11+
[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23hic-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/hic)[![Follow on Twitter](http://img.shields.io/badge/twitter-%40nf__core-1DA1F2?labelColor=000000&logo=twitter)](https://twitter.com/nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)
1712

1813
## Introduction
1914

2015
**nf-core/hic** is a bioinformatics best-practice analysis pipeline for Analysis of Chromosome Conformation Capture data (Hi-C).
2116

2217
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!
2318

24-
On release, automated continuous integration tests run the pipeline on a full-sized dataset on the AWS cloud infrastructure. This ensures that the pipeline runs on AWS, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources. The results obtained from the full-sized test can be viewed on the [nf-core website](https://nf-co.re/hic/results).
19+
On release, automated continuous integration tests run the pipeline on a full-sized dataset on the AWS cloud infrastructure. This ensures that the pipeline runs on AWS, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources.The results obtained from the full-sized test can be viewed on the [nf-core website](https://nf-co.re/hic/results).
2520

2621
## Pipeline summary
2722

@@ -43,13 +38,13 @@ On release, automated continuous integration tests run the pipeline on a full-si
4338

4439
## Quick Start
4540

46-
1. Install [`Nextflow`](https://www.nextflow.io/docs/latest/getstarted.html#installation) (`>=21.10.3`)
41+
1. Install [`Nextflow`](https://www.nextflow.io/docs/latest/getstarted.html#installation) (`>=22.10.1`)
4742

4843
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))_.
4944

5045
3. Download the pipeline and test it on a minimal dataset with a single command:
5146

52-
```console
47+
```bash
5348
nextflow run nf-core/hic -profile test,YOURPROFILE --outdir <OUTDIR>
5449
```
5550

@@ -62,7 +57,7 @@ On release, automated continuous integration tests run the pipeline on a full-si
6257
6358
4. Start running your own analysis!
6459

65-
```console
60+
```bash
6661
nextflow run nf-core/hic --input samplesheet.csv --outdir <OUTDIR> --genome GRCh37 -profile <docker/singularity/podman/shifter/charliecloud/conda/institute>
6762
```
6863

assets/adaptivecard.json

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
{
2+
"type": "message",
3+
"attachments": [
4+
{
5+
"contentType": "application/vnd.microsoft.card.adaptive",
6+
"contentUrl": null,
7+
"content": {
8+
"\$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
9+
"msteams": {
10+
"width": "Full"
11+
},
12+
"type": "AdaptiveCard",
13+
"version": "1.2",
14+
"body": [
15+
{
16+
"type": "TextBlock",
17+
"size": "Large",
18+
"weight": "Bolder",
19+
"color": "<% if (success) { %>Good<% } else { %>Attention<%} %>",
20+
"text": "nf-core/hic v${version} - ${runName}",
21+
"wrap": true
22+
},
23+
{
24+
"type": "TextBlock",
25+
"spacing": "None",
26+
"text": "Completed at ${dateComplete} (duration: ${duration})",
27+
"isSubtle": true,
28+
"wrap": true
29+
},
30+
{
31+
"type": "TextBlock",
32+
"text": "<% if (success) { %>Pipeline completed successfully!<% } else { %>Pipeline completed with errors. The full error message was: ${errorReport}.<% } %>",
33+
"wrap": true
34+
},
35+
{
36+
"type": "TextBlock",
37+
"text": "The command used to launch the workflow was as follows:",
38+
"wrap": true
39+
},
40+
{
41+
"type": "TextBlock",
42+
"text": "${commandLine}",
43+
"isSubtle": true,
44+
"wrap": true
45+
}
46+
],
47+
"actions": [
48+
{
49+
"type": "Action.ShowCard",
50+
"title": "Pipeline Configuration",
51+
"card": {
52+
"type": "AdaptiveCard",
53+
"\$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
54+
"body": [
55+
{
56+
"type": "FactSet",
57+
"facts": [<% out << summary.collect{ k,v -> "{\"title\": \"$k\", \"value\" : \"$v\"}"}.join(",\n") %>
58+
]
59+
}
60+
]
61+
}
62+
}
63+
]
64+
}
65+
}
66+
]
67+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
id: "nf-core-hic-methods-description"
2+
description: "Suggested text and references to use when describing pipeline usage within the methods section of a publication."
3+
section_name: "nf-core/hic Methods Description"
4+
section_href: "https://github.com/nf-core/hic"
5+
plot_type: "html"
6+
## TODO nf-core: Update the HTML below to your prefered methods description, e.g. add publication citation for this pipeline
7+
## You inject any metadata in the Nextflow '${workflow}' object
8+
data: |
9+
<h4>Methods</h4>
10+
<p>Data was processed using nf-core/hic v${workflow.manifest.version} ${doi_text} of the nf-core collection of workflows (<a href="https://doi.org/10.1038/s41587-020-0439-x">Ewels <em>et al.</em>, 2020</a>).</p>
11+
<p>The pipeline was executed with Nextflow v${workflow.nextflow.version} (<a href="https://doi.org/10.1038/nbt.3820">Di Tommaso <em>et al.</em>, 2017</a>) with the following command:</p>
12+
<pre><code>${workflow.commandLine}</code></pre>
13+
<h4>References</h4>
14+
<ul>
15+
<li>Di Tommaso, P., Chatzou, M., Floden, E. W., Barja, P. P., Palumbo, E., & Notredame, C. (2017). Nextflow enables reproducible computational workflows. Nature Biotechnology, 35(4), 316-319. <a href="https://doi.org/10.1038/nbt.3820">https://doi.org/10.1038/nbt.3820</a></li>
16+
<li>Ewels, P. A., Peltzer, A., Fillinger, S., Patel, H., Alneberg, J., Wilm, A., Garcia, M. U., Di Tommaso, P., & Nahnsen, S. (2020). The nf-core framework for community-curated bioinformatics pipelines. Nature Biotechnology, 38(3), 276-278. <a href="https://doi.org/10.1038/s41587-020-0439-x">https://doi.org/10.1038/s41587-020-0439-x</a></li>
17+
</ul>
18+
<div class="alert alert-info">
19+
<h5>Notes:</h5>
20+
<ul>
21+
${nodoi_text}
22+
<li>The command above does not include parameters contained in any configs or profiles that may have been used. Ensure the config file is also uploaded with your publication!</li>
23+
<li>You should also cite all software used within this run. Check the "Software Versions" of this report to get version information.</li>
24+
</ul>
25+
</div>

0 commit comments

Comments
 (0)