Skip to content

Commit 053e59e

Browse files
authored
Merge pull request #347 from nf-core/dev
Dev -> Master 2.5.0
2 parents 81f989c + e02fd8c commit 053e59e

45 files changed

Lines changed: 1167 additions & 1072 deletions

Some content is hidden

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

.devcontainer/devcontainer.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
"name": "nfcore",
33
"image": "nfcore/gitpod:latest",
44
"remoteUser": "gitpod",
5+
"runArgs": ["--privileged"],
56

67
// Configure tool-specific properties.
78
"customizations": {

.github/CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @nf-core/methylseq

.github/CONTRIBUTING.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,9 @@ Please use the pre-filled template to save time.
99
However, don't be put off by this template - other more general issues and suggestions are welcome!
1010
Contributions to the code are even more welcome ;)
1111

12-
> If you need help using or modifying nf-core/methylseq then the best place to ask is on the nf-core Slack [#methylseq](https://nfcore.slack.com/channels/methylseq) channel ([join our Slack here](https://nf-co.re/join/slack)).
12+
:::info
13+
If you need help using or modifying nf-core/methylseq then the best place to ask is on the nf-core Slack [#methylseq](https://nfcore.slack.com/channels/methylseq) channel ([join our Slack here](https://nf-co.re/join/slack)).
14+
:::
1315

1416
## Contribution workflow
1517

@@ -116,4 +118,3 @@ To get started:
116118
Devcontainer specs:
117119

118120
- [DevContainer config](.devcontainer/devcontainer.json)
119-
- [Dockerfile](.devcontainer/Dockerfile)

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ body:
4242
attributes:
4343
label: System information
4444
description: |
45-
* Nextflow version _(eg. 22.10.1)_
45+
* Nextflow version _(eg. 23.04.0)_
4646
* Hardware _(eg. HPC, Desktop, Cloud)_
4747
* Executor _(eg. slurm, local, awsbatch)_
4848
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud, or Apptainer)_

.github/workflows/awsfulltest.yml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,24 @@ jobs:
1717
aligner: ["bismark", "bismark_hisat", "bwameth"]
1818
steps:
1919
- name: Launch workflow via tower
20-
uses: seqeralabs/action-tower-launch@v1
20+
uses: seqeralabs/action-tower-launch@v2
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/methylseq/work-${{ github.sha }}
2627
parameters: |
2728
{
28-
"aligner": "${{ matrix.aligner }}",
29+
"hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}",
2930
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/methylseq/results-${{ github.sha }}/${{matrix.aligner}}"
31+
"aligner": "${{ matrix.aligner }}",
3032
}
31-
profiles: test_full,aws_tower
33+
profiles: test_full
34+
3235
- uses: actions/upload-artifact@v3
3336
with:
3437
name: Tower debug log file
35-
path: tower_action_*.log
38+
path: |
39+
tower_action_*.log
40+
tower_action_*.json

.github/workflows/awstest.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,23 @@ jobs:
1515
steps:
1616
# Launch workflow using Tower CLI tool action
1717
- name: Launch workflow via tower
18-
uses: seqeralabs/action-tower-launch@v1
18+
uses: seqeralabs/action-tower-launch@v2
1919
with:
2020
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
2121
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
2222
compute_env: ${{ secrets.TOWER_COMPUTE_ENV }}
23+
revision: ${{ github.sha }}
2324
workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/methylseq/work-${{ github.sha }}
2425
parameters: |
2526
{
2627
"aligner": "${{ matrix.aligner }}",
2728
"outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/methylseq/results-test-${{ github.sha }}/${{matrix.aligner}}"
2829
}
29-
profiles: test,aws_tower
30+
profiles: test
31+
3032
- uses: actions/upload-artifact@v3
3133
with:
3234
name: Tower debug log file
33-
path: tower_action_*.log
35+
path: |
36+
tower_action_*.log
37+
tower_action_*.json

.github/workflows/ci.yml

Lines changed: 25 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -21,58 +21,59 @@ concurrency:
2121
cancel-in-progress: true
2222

2323
jobs:
24+
define_nxf_versions:
25+
name: Choose nextflow versions to test against depending on target branch
26+
runs-on: ubuntu-latest
27+
outputs:
28+
matrix: ${{ steps.nxf_versions.outputs.matrix }}
29+
steps:
30+
- id: nxf_versions
31+
run: |
32+
if [[ "${{ github.event_name }}" == "pull_request" && "${{ github.base_ref }}" == "dev" && "${{ matrix.NXF_VER }}" != "latest-everything" ]]; then
33+
echo matrix='["latest-everything"]' | tee -a $GITHUB_OUTPUT
34+
else
35+
echo matrix='["latest-everything", "23.04.0"]' | tee -a $GITHUB_OUTPUT
36+
fi
37+
2438
test:
2539
name: Run pipeline with test data
40+
needs: define_nxf_versions
2641
runs-on: ubuntu-latest
2742
strategy:
2843
fail-fast: false
2944
matrix:
30-
NXF_VER:
31-
- "22.10.1"
32-
- "latest-everything"
33-
aligner:
45+
NXF_VER: ${{ fromJson(needs.define_nxf_versions.outputs.matrix) }}
46+
test_tags:
3447
- "bismark"
3548
- "bismark_hisat"
3649
- "bwameth"
3750
profile:
3851
- "docker"
39-
steps:
40-
# Skip if it's a pull_request to dev and NXF_VER is '22.10.1'
41-
- name: Skip condition
42-
id: condition
43-
run: |
44-
if [[ "${{ github.event_name }}" == "pull_request" && "${{ github.base_ref }}" == "dev" && "${{ matrix.NXF_VER }}" != "latest-everything" ]]; then
45-
echo "skip=true" >> $GITHUB_OUTPUT
46-
fi
4752

53+
steps:
4854
- name: Check out pipeline code
49-
if: steps.condition.outputs.skip != 'true'
5055
uses: actions/checkout@v3
5156

5257
- name: Hash Github Workspace
53-
if: steps.condition.outputs.skip != 'true'
5458
id: hash_workspace
5559
run: |
5660
echo "digest=$(echo methylseq2_${{ github.workspace }} | md5sum | cut -c 1-25)" >> $GITHUB_OUTPUT
5761
5862
- name: Cache test data
59-
if: steps.condition.outputs.skip != 'true'
6063
id: cache-testdata
6164
uses: actions/cache@v3
6265
with:
6366
path: test-datasets/
6467
key: ${{ steps.hash_workspace.outputs.digest }}
6568

6669
- name: Check out test data
67-
if: steps.cache-testdata.outputs.cache-hit != 'true' && steps.condition.outputs.skip != 'true'
6870
uses: actions/checkout@v3
6971
with:
7072
repository: nf-core/test-datasets
7173
ref: methylseq
7274
path: test-datasets/
7375

7476
- name: Replace remote paths in samplesheets
75-
if: steps.condition.outputs.skip != 'true'
7677
run: |
7778
for f in ./test-datasets/samplesheet/*csv; do
7879
sed -i 's=https://github.com/nf-core/test-datasets/raw/methylseq/=./test-datasets/=g' $f
@@ -83,25 +84,27 @@ jobs:
8384
done;
8485
8586
- name: Install Nextflow
86-
if: steps.condition.outputs.skip != 'true'
8787
uses: nf-core/setup-nextflow@v1
8888
with:
8989
version: "${{ matrix.NXF_VER }}"
9090

9191
- name: Install nf-test
92-
if: steps.condition.outputs.skip != 'true'
9392
run: |
9493
wget -qO- https://code.askimed.com/install/nf-test | bash -s $NFTEST_VER
9594
sudo mv nf-test /usr/local/bin/
9695
9796
- name: Run nf-test
98-
if: steps.condition.outputs.skip != 'true'
9997
run: |
100-
nf-test test tests/pipeline/${{ matrix.aligner }}/ --profile "test,${{ matrix.profile }}" --tap=test.tap
98+
nf-test test --tag ${{ matrix.test_tags }} --profile "test,${{ matrix.profile }}" --junitxml=test.xml
10199
102-
# If the test fails, output the software_versions.yml using the 'batcat' utility
103100
- name: Output log on failure
104101
if: failure()
105102
run: |
106103
sudo apt install bat > /dev/null
107104
batcat --decorations=always --color=always ${{ github.workspace }}/.nf-test/tests/*/output/pipeline_info/software_versions.yml
105+
106+
- name: Publish Test Report
107+
uses: mikepenz/action-junit-report@v3
108+
if: always() # always run even if the previous step fails
109+
with:
110+
report_paths: test.xml

.github/workflows/linting.yml

Lines changed: 1 addition & 1 deletion
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.8"
81+
python-version: "3.11"
8282
architecture: "x64"
8383

8484
- name: Install dependencies
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
name: release-announcements
2+
# Automatic release toot and tweet anouncements
3+
on:
4+
release:
5+
types: [published]
6+
workflow_dispatch:
7+
8+
jobs:
9+
toot:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: rzr/fediverse-action@master
13+
with:
14+
access-token: ${{ secrets.MASTODON_ACCESS_TOKEN }}
15+
host: "mstdn.science" # custom host if not "mastodon.social" (default)
16+
# GitHub event payload
17+
# https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#release
18+
message: |
19+
Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}!
20+
21+
Please see the changelog: ${{ github.event.release.html_url }}
22+
23+
send-tweet:
24+
runs-on: ubuntu-latest
25+
26+
steps:
27+
- uses: actions/setup-python@v4
28+
with:
29+
python-version: "3.10"
30+
- name: Install dependencies
31+
run: pip install tweepy==4.14.0
32+
- name: Send tweet
33+
shell: python
34+
run: |
35+
import os
36+
import tweepy
37+
38+
client = tweepy.Client(
39+
access_token=os.getenv("TWITTER_ACCESS_TOKEN"),
40+
access_token_secret=os.getenv("TWITTER_ACCESS_TOKEN_SECRET"),
41+
consumer_key=os.getenv("TWITTER_CONSUMER_KEY"),
42+
consumer_secret=os.getenv("TWITTER_CONSUMER_SECRET"),
43+
)
44+
tweet = os.getenv("TWEET")
45+
client.create_tweet(text=tweet)
46+
env:
47+
TWEET: |
48+
Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}!
49+
50+
Please see the changelog: ${{ github.event.release.html_url }}
51+
TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }}
52+
TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }}
53+
TWITTER_ACCESS_TOKEN: ${{ secrets.TWITTER_ACCESS_TOKEN }}
54+
TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }}
55+
56+
bsky-post:
57+
runs-on: ubuntu-latest
58+
steps:
59+
- uses: zentered/bluesky-post-action@v0.0.2
60+
with:
61+
post: |
62+
Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}!
63+
64+
Please see the changelog: ${{ github.event.release.html_url }}
65+
env:
66+
BSKY_IDENTIFIER: ${{ secrets.BSKY_IDENTIFIER }}
67+
BSKY_PASSWORD: ${{ secrets.BSKY_PASSWORD }}
68+
#

.gitpod.yml

Lines changed: 5 additions & 0 deletions
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

0 commit comments

Comments
 (0)