Skip to content

Commit f5e54b6

Browse files
authored
Merge pull request #219 from qbic-pipelines/dev
Release 2.2
2 parents 64f7f63 + c30e7eb commit f5e54b6

File tree

87 files changed

+37623
-1338
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

87 files changed

+37623
-1338
lines changed

.editorconfig

+1-1
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,cff}]
11+
[*.{md,yml,yaml,html,css,scss,js}]
1212
indent_size = 2
1313

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

.github/CONTRIBUTING.md

+19-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# qbic-pipelines/rnadeseq: Contributing Guidelines
22

33
Hi there!
4-
Many thanks for taking an interest in improving nf-core/rnadeseq.
4+
Many thanks for taking an interest in improving qbic-pipelines/rnadeseq.
55

6-
We try to manage the required tasks for nf-core/rnadeseq using GitHub issues, you probably came to this page when creating one.
6+
We try to manage the required tasks for qbic-pipelines/rnadeseq using GitHub issues, you probably came to this page when creating one.
77
Please use the pre-filled template to save time.
88

99
However, don't be put off by this template - other more general issues and suggestions are welcome!
@@ -13,8 +13,8 @@ Contributions to the code are even more welcome ;)
1313

1414
If you'd like to write some code for qbic-pipelines/rnadeseq, the standard workflow is as follows:
1515

16-
1. Check that there isn't already an issue about your idea in the [nf-core/rnadeseq issues](https://github.com/nf-core/rnadeseq/issues) to avoid duplicating work. If there isn't one already, please create one so that others know you're working on this
17-
2. [Fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) the [nf-core/rnadeseq repository](https://github.com/nf-core/rnadeseq) to your GitHub account
16+
1. Check that there isn't already an issue about your idea in the [qbic-pipelines/rnadeseq issues](https://github.com/qbic-pipelines/rnadeseq/issues) to avoid duplicating work. If there isn't one already, please create one so that others know you're working on this
17+
2. [Fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) the [qbic-pipelines/rnadeseq repository](https://github.com/qbic-pipelines/rnadeseq) to your GitHub account
1818
3. Make the necessary changes / additions within your forked repository following [Pipeline conventions](#pipeline-contribution-conventions)
1919
4. Use `nf-core schema build` and add any new parameters to the pipeline JSON schema (requires [nf-core tools](https://github.com/nf-core/tools) >= 1.10).
2020
5. Submit a Pull Request against the `dev` branch and wait for the code to be reviewed and merged
@@ -99,3 +99,18 @@ If you are using a new feature from core Nextflow, you may bump the minimum requ
9999
### Images and figures
100100

101101
For overview images and other documents we follow the nf-core [style guidelines and examples](https://nf-co.re/developers/design_guidelines).
102+
103+
## GitHub Codespaces
104+
105+
This repo includes a devcontainer configuration which will create a GitHub Codespaces for Nextflow development! This is an online developer environment that runs in your browser, complete with VSCode and a terminal.
106+
107+
To get started:
108+
109+
- Open the repo in [Codespaces](https://github.com/qbic-pipelines/rnadeseq/codespaces)
110+
- Tools installed
111+
- nf-core
112+
- Nextflow
113+
114+
Devcontainer specs:
115+
116+
- [DevContainer config](.devcontainer/devcontainer.json)

.github/ISSUE_TEMPLATE/bug_report.yml

+4-2
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@ body:
2727
placeholder: |
2828
$ nextflow run ...
2929
30+
Some output where something broke
31+
3032
- type: textarea
3133
id: files
3234
attributes:
@@ -40,9 +42,9 @@ body:
4042
attributes:
4143
label: System information
4244
description: |
43-
* Nextflow version _(eg. 22.10.1)_
45+
* Nextflow version _(eg. 23.04.0)_
4446
* Hardware _(eg. HPC, Desktop, Cloud)_
4547
* Executor _(eg. slurm, local, awsbatch)_
46-
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter or Charliecloud)_
48+
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud, or Apptainer)_
4749
* OS _(eg. CentOS Linux, macOS, Linux Mint)_
4850
* Version of qbic-pipelines/rnadeseq _(eg. 1.1, 1.5, 1.8.2)_

.github/ISSUE_TEMPLATE/feature_request.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: Feature request
2-
description: Suggest an idea for the nf-core/rnadeseq pipeline
2+
description: Suggest an idea for the qbic-pipelines/rnadeseq pipeline
33
labels: enhancement
44
body:
55
- type: textarea

.github/PULL_REQUEST_TEMPLATE.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@ Learn more about contributing: [CONTRIBUTING.md](https://github.com/qbic-pipelin
1515

1616
- [ ] This comment contains a description of changes (with reason).
1717
- [ ] If you've fixed a bug or added code that should be tested, add tests!
18-
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/rnadeseq/tree/master/.github/CONTRIBUTING.md)
19-
- [ ] If necessary, also make a PR on the nf-core/rnadeseq _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository.
18+
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/qbic-pipelines/rnadeseq/tree/master/.github/CONTRIBUTING.md)
2019
- [ ] Make sure your code lints (`nf-core lint`).
2120
- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`).
2221
- [ ] Usage Documentation in `docs/usage.md` is updated.

.github/workflows/awsfulltest.yml

+11-5
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,26 @@ jobs:
1414
runs-on: ubuntu-latest
1515
steps:
1616
- name: Launch workflow via tower
17-
uses: nf-core/tower-action@v3
17+
uses: seqeralabs/action-tower-launch@v2
1818
# TODO nf-core: You can customise AWS full pipeline tests as required
1919
# Add full size test data (but still relatively small datasets for few samples)
2020
# on the `test_full.config` test runs with only one set of parameters
2121
with:
2222
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
2323
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
2424
compute_env: ${{ secrets.TOWER_COMPUTE_ENV }}
25+
revision: ${{ github.sha }}
2526
workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/rnadeseq/work-${{ github.sha }}
2627
parameters: |
2728
{
29+
"hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}",
2830
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/rnadeseq/results-${{ github.sha }}"
2931
}
30-
profiles: test_full,aws_tower
31-
nextflow_config: |
32-
process.errorStrategy = 'retry'
33-
process.maxRetries = 3
32+
profiles: test_full
33+
34+
- uses: actions/upload-artifact@v3
35+
with:
36+
name: Tower debug log file
37+
path: |
38+
tower_action_*.log
39+
tower_action_*.json

.github/workflows/awstest.yml

+10-5
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,22 @@ jobs:
1212
steps:
1313
# Launch workflow using Tower CLI tool action
1414
- name: Launch workflow via tower
15-
uses: nf-core/tower-action@v3
15+
uses: seqeralabs/action-tower-launch@v2
1616
with:
1717
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
1818
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
1919
compute_env: ${{ secrets.TOWER_COMPUTE_ENV }}
20+
revision: ${{ github.sha }}
2021
workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/rnadeseq/work-${{ github.sha }}
2122
parameters: |
2223
{
2324
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/rnadeseq/results-test-${{ github.sha }}"
2425
}
25-
profiles: test,aws_tower
26-
nextflow_config: |
27-
process.errorStrategy = 'retry'
28-
process.maxRetries = 3
26+
profiles: test
27+
28+
- uses: actions/upload-artifact@v3
29+
with:
30+
name: Tower debug log file
31+
path: |
32+
tower_action_*.log
33+
tower_action_*.json

.github/workflows/ci.yml

+17-10
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ env:
1212
NXF_ANSI_LOG: false
1313
CAPSULE_LOG: none
1414

15+
concurrency:
16+
group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}"
17+
cancel-in-progress: true
18+
1519
jobs:
1620
test:
1721
name: Run pipeline with test data
@@ -22,11 +26,11 @@ jobs:
2226
matrix:
2327
# Nextflow versions
2428
NXF_VER:
25-
- "22.10.1"
29+
- "23.04.0"
2630
- "latest-everything"
2731
steps:
2832
- name: Check out pipeline code
29-
uses: actions/checkout@v2
33+
uses: actions/checkout@v3
3034

3135
- name: Check if Dockerfile or Conda environment changed
3236
uses: technote-space/get-diff-action@v4
@@ -36,13 +40,14 @@ jobs:
3640
environment.yml
3741
- name: Build new docker image
3842
if: env.MATCHED_FILES
39-
run: docker build --no-cache . -t qbicpipelines/rnadeseq:2.1
43+
run: docker build --no-cache . -t ghcr.io/qbic-pipelines/rnadeseq:2.2
4044

45+
# Change the version above and the third version below before/after release
4146
- name: Pull docker image
4247
if: ${{ !env.MATCHED_FILES }}
4348
run: |
44-
docker pull qbicpipelines/rnadeseq:dev
45-
docker tag qbicpipelines/rnadeseq:dev qbicpipelines/rnadeseq:2.1
49+
docker pull ghcr.io/qbic-pipelines/rnadeseq:dev
50+
docker tag ghcr.io/qbic-pipelines/rnadeseq:dev ghcr.io/qbic-pipelines/rnadeseq:2.2
4651
4752
- name: Install Nextflow
4853
uses: nf-core/setup-nextflow@v1
@@ -56,7 +61,7 @@ jobs:
5661
name: Test workflow parameters
5762
runs-on: ubuntu-latest
5863
env:
59-
NXF_VER: "22.10.1"
64+
NXF_VER: "23.04.0"
6065
NXF_ANSI_LOG: false
6166
strategy:
6267
# This tells github to continue running other profile tests if some tests fail (default cancels all tests upon failure)
@@ -70,6 +75,7 @@ jobs:
7075
"test_contrast_list",
7176
"test_no_multiqc",
7277
"test_relevel",
78+
"test_smrnaseq",
7379
"test_star_rsem",
7480
"test_star_salmon",
7581
"test_use_vst",
@@ -78,7 +84,7 @@ jobs:
7884
]
7985
steps:
8086
- name: Check out pipeline code
81-
uses: actions/checkout@v2
87+
uses: actions/checkout@v3
8288

8389
- name: Check if Dockerfile or Conda environment changed
8490
uses: technote-space/get-diff-action@v4
@@ -88,13 +94,14 @@ jobs:
8894
environment.yml
8995
- name: Build new docker image
9096
if: env.MATCHED_FILES
91-
run: docker build --no-cache . -t qbicpipelines/rnadeseq:2.1
97+
run: docker build --no-cache . -t ghcr.io/qbic-pipelines/rnadeseq:2.2
9298

99+
# Change the version above and the third version below before/after release
93100
- name: Pull docker image
94101
if: ${{ !env.MATCHED_FILES }}
95102
run: |
96-
docker pull qbicpipelines/rnadeseq:dev
97-
docker tag qbicpipelines/rnadeseq:dev qbicpipelines/rnadeseq:2.1
103+
docker pull ghcr.io/qbic-pipelines/rnadeseq:dev
104+
docker tag ghcr.io/qbic-pipelines/rnadeseq:dev ghcr.io/qbic-pipelines/rnadeseq:2.2
98105
99106
- name: Install Nextflow
100107
uses: nf-core/setup-nextflow@v1

.github/workflows/clean-up.yml

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
name: "Close user-tagged issues and PRs"
2+
on:
3+
schedule:
4+
- cron: "0 0 * * 0" # Once a week
5+
6+
jobs:
7+
clean-up:
8+
runs-on: ubuntu-latest
9+
permissions:
10+
issues: write
11+
pull-requests: write
12+
steps:
13+
- uses: actions/stale@v7
14+
with:
15+
stale-issue-message: "This issue has been tagged as awaiting-changes or awaiting-feedback by an nf-core contributor. Remove stale label or add a comment otherwise this issue will be closed in 20 days."
16+
stale-pr-message: "This PR has been tagged as awaiting-changes or awaiting-feedback by an nf-core contributor. Remove stale label or add a comment if it is still useful."
17+
close-issue-message: "This issue was closed because it has been tagged as awaiting-changes or awaiting-feedback by an nf-core contributor and then staled for 20 days with no activity."
18+
days-before-stale: 30
19+
days-before-close: 20
20+
days-before-pr-close: -1
21+
any-of-labels: "awaiting-changes,awaiting-feedback"
22+
exempt-issue-labels: "WIP"
23+
exempt-pr-labels: "WIP"
24+
repo-token: "${{ secrets.GITHUB_TOKEN }}"

.github/workflows/fix-linting.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ jobs:
3434
id: prettier_status
3535
run: |
3636
if prettier --check ${GITHUB_WORKSPACE}; then
37-
echo "name=result::pass" >> $GITHUB_OUTPUT
37+
echo "result=pass" >> $GITHUB_OUTPUT
3838
else
39-
echo "name=result::fail" >> $GITHUB_OUTPUT
39+
echo "result=fail" >> $GITHUB_OUTPUT
4040
fi
4141
4242
- name: Run 'prettier --write'

.github/workflows/linting.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ jobs:
7878

7979
- uses: actions/setup-python@v4
8080
with:
81-
python-version: "3.7"
81+
python-version: "3.8"
8282
architecture: "x64"
8383

8484
- name: Install dependencies

.github/workflows/push_dockerhub.yml

-40
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Docker push
2+
# This builds the docker image and pushes it to GHCR
3+
# Runs on qbic-pipelines repo releases and push event to 'dev' branch (PR merges)
4+
on:
5+
push:
6+
branches:
7+
- dev
8+
release:
9+
types: [published]
10+
11+
jobs:
12+
push_github:
13+
name: Push new Docker image to GHCR
14+
runs-on: ubuntu-latest
15+
# Only run for the qbic-pipelines repo, for releases and merged PRs
16+
if: ${{ github.repository == 'qbic-pipelines/rnadeseq' }}
17+
steps:
18+
- name: Check out pipeline code
19+
uses: actions/checkout@v2
20+
21+
- name: Build new docker image
22+
run: docker build --no-cache . -t ghcr.io/qbic-pipelines/rnadeseq:latest
23+
24+
- name: Log in to registry
25+
# Update the personal access token to GITHUB_TOKEN
26+
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin
27+
28+
- name: Push image to GHCR (dev)
29+
if: ${{ github.event_name == 'push' }}
30+
run: |
31+
docker tag ghcr.io/qbic-pipelines/rnadeseq:latest ghcr.io/qbic-pipelines/rnadeseq:dev
32+
docker push ghcr.io/qbic-pipelines/rnadeseq:dev
33+
34+
- name: Push image to GHCR (release)
35+
if: ${{ github.event_name == 'release' }}
36+
run: |
37+
docker tag ghcr.io/qbic-pipelines/rnadeseq:latest ghcr.io/qbic-pipelines/rnadeseq:${{ github.event.release.tag_name }}
38+
docker push ghcr.io/qbic-pipelines/rnadeseq:${{ github.event.release.tag_name }}

.gitpod.yml

+5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
image: nfcore/gitpod:latest
2+
tasks:
3+
- name: Update Nextflow and setup pre-commit
4+
command: |
5+
pre-commit install --install-hooks
6+
nextflow self-update
27
38
vscode:
49
extensions: # based on nf-core.nf-core-extensionpack

.nf-core.yml

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
repository_type: pipeline
2+
13
lint:
24
files_unchanged:
35
- .github/CONTRIBUTING.md
@@ -18,7 +20,6 @@ lint:
1820
- .github/ISSUE_TEMPLATE/config.yml
1921
- .github/workflows/awsfulltest.yml
2022
- .github/workflows/awstest.yml
21-
- .github/workflows/push_dockerhub.yml
2223
- assets/multiqc_config.yaml
2324
- assets/nf-core-qbic-pipelines/rnadeseq_logo_light.png
2425
- bin/markdown_to_html.r
@@ -35,5 +36,3 @@ lint:
3536

3637
multiqc_config:
3738
- report_comment # otherwise throws error: multiqc_config: 'assets/multiqc_config.yml' does not contain a matching 'report_comment'. │
38-
39-
repository_type: pipeline

.pre-commit-config.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
repos:
2+
- repo: https://github.com/pre-commit/mirrors-prettier
3+
rev: "v2.7.1"
4+
hooks:
5+
- id: prettier

0 commit comments

Comments
 (0)