Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2.0 #11

Merged
merged 87 commits into from
Jun 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
1fa040d
initial template build from nf-core/tools, version 2.5
muffato Sep 12, 2022
0e85b5c
Version bump on dev
muffato Oct 19, 2022
f7546d1
Added support for the annotation method
muffato Dec 12, 2022
32ecbd9
typo
muffato Dec 20, 2022
8f65859
Documentation update
muffato Dec 20, 2022
cec6ce9
Added a check
muffato Dec 20, 2022
8bb1ce7
Evaluate relative paths from `--outdir`
muffato Dec 20, 2022
80ebc48
Linting: prettier, black, and updated nf-core yaml
muffato Jan 9, 2023
112a1af
Pinning the version of nf-core as long as this is a 2.5 pipeline
muffato Jan 9, 2023
c59c4f7
--outdir should actually be considered a mandatory parameter
muffato Jan 9, 2023
f7f1719
Converted most "it" iterators to explicitly-named variables
muffato Jan 13, 2023
16a2312
Removed extra }
muffato Jan 13, 2023
af6a773
Merge pull request #2 from sanger-tol/new_ftp
muffato Jan 16, 2023
7bceea5
Updated logo
muffato Jan 17, 2023
de69ba1
Typo: assembly_name is not a recognised command-line parameter
muffato Jan 17, 2023
45f24e4
Added 130 for MEMLIMIT
muffato Jan 17, 2023
3cdab16
Don't complain about missing files on the Ensembl FTP
muffato Jan 17, 2023
f8abd23
Read properties of the fasta file, and augment meta
muffato Jan 17, 2023
95fa096
samtools dict needs an amount of RAM proportional to the length of th…
muffato Jan 17, 2023
9003772
Select the right tabix indexing based on the coordinates actually use…
muffato Jan 17, 2023
a47cad2
Updated tag to match the convention
muffato Jan 17, 2023
def4ff6
For comprehensiveness, provide channels for the unavailable indices
muffato Jan 17, 2023
bad66d0
Adjusted the memory requirement for sort+tabix
muffato Jan 18, 2023
e06d280
Updated the change-log
muffato Jan 20, 2023
8653486
Doc update
muffato Jan 20, 2023
e50ca13
Nextflow version bump due to the way Conda is enabled/disabled
muffato Feb 1, 2023
d6f0bba
Documentation update
muffato Feb 1, 2023
86d4aeb
Documentation update
muffato Feb 1, 2023
6176673
Brought some consistency
muffato Feb 1, 2023
cb668f6
Merge branch 'full_test' into dev
muffato Feb 2, 2023
bb36957
Template update for nf-core/tools version 2.6
muffato Jul 15, 2023
686c3ee
Template update for nf-core/tools version 2.7
muffato Jul 15, 2023
0fb5829
Template update for nf-core/tools version 2.8
muffato Jul 15, 2023
53effee
Merge branch 'TEMPLATE' into dev
muffato Jul 15, 2023
489f613
Merge branch 'TEMPLATE' into dev
muffato Jul 15, 2023
198c7ca
Merge branch 'TEMPLATE' into dev
muffato Jul 15, 2023
24c00f9
we use prettier for the cff files
muffato Jul 15, 2023
c7a7029
Now need nf-core 2.8
muffato Jul 15, 2023
acbb420
[linting] black
muffato Jul 15, 2023
75a0fa3
[linting] prettier
muffato Jul 15, 2023
82bd43a
module update
muffato Jul 15, 2023
ad2b431
Fixed the Conda directives
muffato Jul 15, 2023
52d51e7
Fixed the wget conda package
muffato Jul 15, 2023
04dc3a3
The quay.io prefix should now be skipped
muffato Jul 15, 2023
b492851
Not needed
muffato Jul 15, 2023
3e18a38
be consistent
muffato Jul 15, 2023
294e1eb
Moved sanger-tol to local
muffato Jul 15, 2023
937c61e
No more sanger-tol shared repository
muffato Jul 15, 2023
1b2fdda
Fixed the example params.yaml
muffato Jul 15, 2023
756ff70
This file is now identical
muffato Jul 15, 2023
99d3f07
[linting] prettier
muffato Jul 15, 2023
ce1d036
was 2 before the template update
muffato Jul 16, 2023
cc18f7b
We do this through a profile
muffato Jul 16, 2023
8ce9192
Not needed
muffato Jul 16, 2023
2cdc4af
We don't use MultiQC
muffato Jul 16, 2023
6e3558c
The template was erroneously hardcoding sanger-tol/readmapping
muffato Jul 31, 2023
10e8ac0
Added a redirection notice to the pipeline website
muffato Jul 31, 2023
4ee5ed2
The convention is now to put all the pipeline_info files in per-pipel…
muffato Jul 31, 2023
bc8150a
Added the code of conduct
muffato Aug 3, 2023
347f90d
Fixed the README
muffato Aug 3, 2023
5506423
Fixed the date format
muffato Aug 3, 2023
6a089c3
Added some instructions about fetching the Ensembl parameters
muffato Aug 3, 2023
044f196
Updated the DOI
muffato Aug 3, 2023
0f28eae
Wrong copy/paste
muffato Aug 4, 2023
433965e
One more file now in line with the template
muffato Aug 4, 2023
0acf02a
Added the farm tests (through Tower)
muffato Aug 4, 2023
f56341b
prettier
muffato Aug 4, 2023
ba5dcba
Latest nomenclature
muffato Aug 10, 2023
02a0b32
The warning should be on the README too
muffato Aug 10, 2023
2cf5ba2
Merge pull request #6 from sanger-tol/template_update
muffato Aug 11, 2023
693c53d
Now use "outdir", which is equivalent to a ToL analysis directory
muffato Aug 4, 2023
d041a70
Use the latest version of the Tower action
muffato Aug 14, 2023
30f351c
Update sanger_test.yml
gq1 Aug 16, 2023
085ee2a
Update sanger_test_full.yml
gq1 Aug 16, 2023
cab4333
Update sanger_test_full.yml
gq1 Aug 16, 2023
96c499c
Merge pull request #9 from sanger-tol/tower_action
gq1 Aug 16, 2023
147d668
New tolsoft details
muffato Aug 18, 2023
24e75ee
Fixed the repository name
muffato Aug 18, 2023
63d5bdc
Merge pull request #10 from sanger-tol/new_tolsoft_details
gq1 Aug 18, 2023
27b5e8a
Made the relation between --outdir and the samplesheet outdir clearer
muffato Sep 23, 2023
04b7a5e
Merge pull request #8 from sanger-tol/outdir
muffato Oct 10, 2023
49e2311
Version bump
muffato May 24, 2024
8ebe0ce
Updated the changelog
muffato May 24, 2024
d095e4b
change default branch to main for PR branch checking
gq1 Jun 3, 2024
bcc3f29
Add one more unchanged file for nf-core linting
gq1 Jun 3, 2024
697f1be
Merge pull request #12 from sanger-tol/ci_branch
muffato Jun 3, 2024
637edc8
Updated the release date
muffato Jun 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"name": "nfcore",
"image": "nfcore/gitpod:latest",
"remoteUser": "gitpod",

// Configure tool-specific properties.
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Set *default* container specific settings.json values on container create.
"settings": {
"python.defaultInterpreterPath": "/opt/conda/bin/python",
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"python.formatting.autopep8Path": "/opt/conda/bin/autopep8",
"python.formatting.yapfPath": "/opt/conda/bin/yapf",
"python.linting.flake8Path": "/opt/conda/bin/flake8",
"python.linting.pycodestylePath": "/opt/conda/bin/pycodestyle",
"python.linting.pydocstylePath": "/opt/conda/bin/pydocstyle",
"python.linting.pylintPath": "/opt/conda/bin/pylint"
},

// Add the IDs of extensions you want installed when the container is created.
"extensions": ["ms-python.python", "ms-python.vscode-pylance", "nf-core.nf-core-extensionpack"]
}
}
}
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ trim_trailing_whitespace = true
indent_size = 4
indent_style = space

[*.{md,yml,yaml,html,css,scss,js,cff}]
[*.{md,yml,yaml,html,css,scss,js}]
indent_size = 2

# These files are edited and tested upstream in nf-core/modules
Expand Down
3 changes: 1 addition & 2 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
*.config linguist-language=nextflow
*.nf.test linguist-language=nextflow
modules/nf-core/** linguist-generated
modules/sanger-tol/** linguist-generated
subworkflows/nf-core/** linguist-generated
subworkflows/sanger-tol/** linguist-generated
16 changes: 16 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,3 +93,19 @@ If you are using a new feature from core Nextflow, you may bump the minimum requ
### Images and figures

For overview images and other documents we follow the nf-core [style guidelines and examples](https://nf-co.re/developers/design_guidelines).

## GitHub Codespaces

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.

To get started:

- Open the repo in [Codespaces](https://github.com/sanger-tol/ensemblgenedownload/codespaces)
- Tools installed
- nf-core
- Nextflow

Devcontainer specs:

- [DevContainer config](.devcontainer/devcontainer.json)
- [Dockerfile](.devcontainer/Dockerfile)
5 changes: 3 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,14 @@ body:
id: system
attributes:
label: System information
description: "* Nextflow version _(eg. 22.04.0)_
description: "* Nextflow version _(eg. 22.10.1)_

* Hardware _(eg. HPC, Desktop, Cloud)_

* Executor _(eg. slurm, local, awsbatch)_

* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter or Charliecloud)_
* Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud,
or Apptainer)_

* OS _(eg. CentOS Linux, macOS, Linux Mint)_

Expand Down
18 changes: 9 additions & 9 deletions .github/workflows/branch.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
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`
# This workflow is triggered on PRs to main branch on the repository
# It fails when someone tries to make a PR against the nf-core `main` branch instead of `dev`
on:
pull_request_target:
branches: [master]
branches: [main]

jobs:
test:
runs-on: ubuntu-latest
steps:
# PRs to the nf-core repo master branch are only ok if coming from the nf-core repo `dev` or any `patch` branches
# PRs to the nf-core repo main branch are only ok if coming from the nf-core repo `dev` or any `patch` branches
- name: Check PRs
if: github.repository == 'sanger-tol/ensemblgenedownload'
run: |
{ [[ ${{github.event.pull_request.head.repo.full_name }} == sanger-tol/ensemblgenedownload ]] && [[ $GITHUB_HEAD_REF = "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]]
{ [[ ${{github.event.pull_request.head.repo.full_name }} == sanger-tol/ensemblgenedownload ]] && [[ $GITHUB_HEAD_REF == "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]]

# If the above check failed, post a comment on the PR explaining the failure
# NOTE - this doesn't currently work if the PR is coming from a fork, due to limitations in GitHub actions secrets
Expand All @@ -22,7 +22,7 @@ jobs:
uses: mshick/add-pr-comment@v1
with:
message: |
## This PR is against the `master` branch :x:
## This PR is against the `main` branch :x:

* Do not close this PR
* Click _Edit_ and change the `base` to `dev`
Expand All @@ -32,9 +32,9 @@ jobs:

Hi @${{ github.event.pull_request.user.login }},

It looks like this pull-request is has been made against the [${{github.event.pull_request.head.repo.full_name }}](https://github.com/${{github.event.pull_request.head.repo.full_name }}) `master` branch.
The `master` branch on nf-core repositories should always contain code from the latest release.
Because of this, PRs to `master` are only allowed if they come from the [${{github.event.pull_request.head.repo.full_name }}](https://github.com/${{github.event.pull_request.head.repo.full_name }}) `dev` branch.
It looks like this pull-request is has been made against the [${{github.event.pull_request.head.repo.full_name }}](https://github.com/${{github.event.pull_request.head.repo.full_name }}) `main` branch.
The `main` branch on nf-core repositories should always contain code from the latest release.
Because of this, PRs to `main` are only allowed if they come from the [${{github.event.pull_request.head.repo.full_name }}](https://github.com/${{github.event.pull_request.head.repo.full_name }}) `dev` branch.

You do not need to close this PR, you can change the target branch to `dev` by clicking the _"Edit"_ button at the top of this page.
Note that even after this, the test will continue to show as failing until you push a new commit.
Expand Down
8 changes: 6 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@ on:
env:
NXF_ANSI_LOG: false

concurrency:
group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}"
cancel-in-progress: true

jobs:
test:
name: Run pipeline with test data
Expand All @@ -20,11 +24,11 @@ jobs:
strategy:
matrix:
NXF_VER:
- "22.04.0"
- "22.10.1"
- "latest-everything"
steps:
- name: Check out pipeline code
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Install Nextflow
uses: nf-core/setup-nextflow@v1
Expand Down
24 changes: 24 additions & 0 deletions .github/workflows/clean-up.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: "Close user-tagged issues and PRs"
on:
schedule:
- cron: "0 0 * * 0" # Once a week

jobs:
clean-up:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v7
with:
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."
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."
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."
days-before-stale: 30
days-before-close: 20
days-before-pr-close: -1
any-of-labels: "awaiting-changes,awaiting-feedback"
exempt-issue-labels: "WIP"
exempt-pr-labels: "WIP"
repo-token: "${{ secrets.GITHUB_TOKEN }}"
18 changes: 9 additions & 9 deletions .github/workflows/fix-linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,23 @@ jobs:
# Only run if comment is on a PR with the main repo, and if it contains the magic keywords
if: >
contains(github.event.comment.html_url, '/pull/') &&
contains(github.event.comment.body, '@nf-core-bot fix linting') &&
contains(github.event.comment.body, '@sanger-tolsoft fix linting') &&
github.repository == 'sanger-tol/ensemblgenedownload'
runs-on: ubuntu-latest
steps:
# Use the @nf-core-bot token to check out so we can push later
# Use the @sanger-tolsoft token to check out so we can push later
- uses: actions/checkout@v3
with:
token: ${{ secrets.nf_core_bot_auth_token }}
token: ${{ secrets.sangertolsoft_access_token }}

# Action runs on the issue comment, so we don't get the PR by default
# Use the gh cli to check out the PR
- name: Checkout Pull Request
run: gh pr checkout ${{ github.event.issue.number }}
env:
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}
GITHUB_TOKEN: ${{ secrets.sangertolsoft_access_token }}

- uses: actions/setup-node@v2
- uses: actions/setup-node@v3

- name: Install Prettier
run: npm install -g prettier @prettier/plugin-php
Expand All @@ -34,9 +34,9 @@ jobs:
id: prettier_status
run: |
if prettier --check ${GITHUB_WORKSPACE}; then
echo "::set-output name=result::pass"
echo "result=pass" >> $GITHUB_OUTPUT
else
echo "::set-output name=result::fail"
echo "result=fail" >> $GITHUB_OUTPUT
fi

- name: Run 'prettier --write'
Expand All @@ -46,8 +46,8 @@ jobs:
- name: Commit & push changes
if: steps.prettier_status.outputs.result == 'fail'
run: |
git config user.email "[email protected]"
git config user.name "nf-core-bot"
git config user.email "[email protected]"
git config user.name "sanger-tolsoft"
git config push.default upstream
git add .
git status
Expand Down
24 changes: 13 additions & 11 deletions .github/workflows/linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ name: nf-core linting
# that the code meets the nf-core guidelines.
on:
push:
branches:
- dev
pull_request:
release:
types: [published]
Expand All @@ -12,22 +14,22 @@ jobs:
EditorConfig:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- uses: actions/setup-node@v2
- uses: actions/setup-node@v3

- name: Install editorconfig-checker
run: npm install -g editorconfig-checker

- name: Run ECLint check
run: editorconfig-checker -exclude README.md $(find .* -type f | grep -v '.git\|.py\|.md\|json\|yml\|yaml\|html\|css\|work\|.nextflow\|build\|nf_core.egg-info\|log.txt\|Makefile')
run: editorconfig-checker -exclude README.md $(find .* -type f | grep -v '.git\|.py\|.md\|cff\|json\|yml\|yaml\|html\|css\|work\|.nextflow\|build\|nf_core.egg-info\|log.txt\|Makefile')

Prettier:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- uses: actions/setup-node@v2
- uses: actions/setup-node@v3

- name: Install Prettier
run: npm install -g prettier
Expand All @@ -38,7 +40,7 @@ jobs:
PythonBlack:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- name: Check code lints with Black
uses: psf/black@stable
Expand Down Expand Up @@ -69,20 +71,20 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out pipeline code
uses: actions/checkout@v2
uses: actions/checkout@v3

- name: Install Nextflow
uses: nf-core/setup-nextflow@v1

- uses: actions/setup-python@v3
- uses: actions/setup-python@v4
with:
python-version: "3.7"
python-version: "3.8"
architecture: "x64"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install nf-core
pip install nf-core==2.8

- name: Run nf-core lint
env:
Expand All @@ -97,7 +99,7 @@ jobs:

- name: Upload linting log file artifact
if: ${{ always() }}
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: linting-logs
path: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/linting_comment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:

- name: Get PR number
id: pr_number
run: echo "::set-output name=pr_number::$(cat linting-logs/PR_number.txt)"
run: echo "pr_number=$(cat linting-logs/PR_number.txt)" >> $GITHUB_OUTPUT

- name: Post PR comment
uses: marocchino/sticky-pull-request-comment@v2
Expand Down
29 changes: 29 additions & 0 deletions .github/workflows/sanger_test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: sanger-tol LSF tests

on:
workflow_dispatch:
jobs:
run-tower:
name: Run LSF tests
runs-on: ubuntu-latest
steps:
- name: Launch workflow via tower
uses: seqeralabs/action-tower-launch@v2
with:
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
compute_env: ${{ secrets.TOWER_COMPUTE_ENV }}
revision: ${{ github.sha }}
workdir: ${{ secrets.TOWER_WORKDIR_PARENT }}/work/${{ github.repository }}/work-${{ github.sha }}
parameters: |
{
"outdir": "${{ secrets.TOWER_WORKDIR_PARENT }}/results/${{ github.repository }}/results-${{ github.sha }}",
}
profiles: test,sanger,singularity,cleanup

- uses: actions/upload-artifact@v3
with:
name: Tower debug log file
path: |
tower_action_*.log
tower_action_*.json
43 changes: 43 additions & 0 deletions .github/workflows/sanger_test_full.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: sanger-tol LSF full size tests

on:
push:
branches:
- main
- dev
workflow_dispatch:
jobs:
run-tower:
name: Run LSF full size tests
runs-on: ubuntu-latest
steps:
- name: Sets env vars for push
run: |
echo "REVISION=${{ github.sha }}" >> $GITHUB_ENV
if: github.event_name == 'push'

- name: Sets env vars for workflow_dispatch
run: |
echo "REVISION=${{ github.sha }}" >> $GITHUB_ENV
if: github.event_name == 'workflow_dispatch'

- name: Launch workflow via tower
uses: seqeralabs/action-tower-launch@v2
with:
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
access_token: ${{ secrets.TOWER_ACCESS_TOKEN }}
compute_env: ${{ secrets.TOWER_COMPUTE_ENV }}
revision: ${{ env.REVISION }}
workdir: ${{ secrets.TOWER_WORKDIR_PARENT }}/work/${{ github.repository }}/work-${{ env.REVISION }}
parameters: |
{
"outdir": "${{ secrets.TOWER_WORKDIR_PARENT }}/results/${{ github.repository }}/results-${{ env.REVISION }}",
}
profiles: test_full,sanger,singularity,cleanup

- uses: actions/upload-artifact@v3
with:
name: Tower debug log file
path: |
tower_action_*.log
tower_action_*.json
Loading
Loading