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

Dev ratio fix channels #336

Closed
wants to merge 194 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
194 commits
Select commit Hold shift + click to select a range
f7dabe4
Template update for nf-core/tools version 2.14.0
nf-core-bot May 8, 2024
41729bc
Template update for nf-core/tools version 2.14.1
nf-core-bot May 9, 2024
d604128
Update differentialabundance_report.Rmd
pinin4fjords May 22, 2024
20a44d6
Update CHANGELOG.md
pinin4fjords May 22, 2024
c05522a
Update CHANGELOG.md
pinin4fjords May 22, 2024
e8b0e58
Merge branch 'TEMPLATE' of https://github.com/nf-core/differentialabu…
WackerO May 22, 2024
e623b0d
prettier
WackerO May 22, 2024
cc7b3e0
Merge pull request #273 from WackerO/template_up2_14_1
WackerO May 22, 2024
ab26e4c
fix files_unchanged
pinin4fjords May 22, 2024
62c5146
Merge branch 'dev' into more_than_10_contrasts
pinin4fjords May 22, 2024
bcfde26
Update CHANGELOG.md
pinin4fjords May 22, 2024
4986420
Merge pull request #272 from nf-core/more_than_10_contrasts
pinin4fjords May 22, 2024
dadf5db
Fix pagination on samples tableee
pinin4fjords May 24, 2024
04635ef
Update CHANGELOG.md
pinin4fjords May 24, 2024
8353e97
Fix CHANGELOG
pinin4fjords May 24, 2024
2d1f602
Reset versions after release
pinin4fjords May 24, 2024
349273f
Fix linting
pinin4fjords May 24, 2024
5ddc8dd
Merge pull request #274 from nf-core/fix_pagination
pinin4fjords May 24, 2024
925527d
bugfix for gprofiler without gene_sets
WackerO Jun 13, 2024
ccb9aa4
add comment, update changelog
WackerO Jun 13, 2024
af2436f
simplified gene_sets logic
WackerO Jun 14, 2024
2dce45a
Merge pull request #278 from WackerO/fix_gpro_genesets
WackerO Jun 14, 2024
4c608da
bump_shinyngs
pinin4fjords Jun 25, 2024
2ab83e7
Wire in new shinyngs log options, remove deprecated guessing option
pinin4fjords Jun 25, 2024
57574cf
Fix contrast specification to app creation
pinin4fjords Jun 25, 2024
b7af68a
Can install from master now
pinin4fjords Jun 25, 2024
8fb05ca
Update CHANGELOG
pinin4fjords Jun 25, 2024
03b7984
Merge pull request #280 from nf-core/bump_shinyngs
pinin4fjords Jun 25, 2024
eff2e81
add propr, mygene and fiter_var module
Jul 18, 2024
708c4db
add functional subworkflows into subworkflows/local
Jul 18, 2024
4a76cef
add schema_tools and tools_samplesheet to assets
Jul 18, 2024
93ae92d
add crg.config and modules.config (as modules_coda) to conf
Jul 18, 2024
da30859
add main.nf as main_coda.nf
Jul 18, 2024
7487789
add nextflow.config and nextflow schema as nextflow_coda and nextflow…
Jul 18, 2024
a91626b
add YMC counts and samplesheet to help for testing
Jul 18, 2024
6f8d5b0
upload mygene module with nf-core module install
Jul 18, 2024
969d15a
fix linting errors
Jul 18, 2024
a2d3824
solve remaining lint erros
Jul 18, 2024
b59f668
update propr/grea with nf-core modules install
Jul 18, 2024
45b776e
modify propr main.nf to match nf-core repository
Jul 18, 2024
d60f031
install propd with nf-core modules install
Jul 18, 2024
8b25351
fix pre-commit errors in .json files
Jul 18, 2024
fc123ec
install propr/propr with nf-core modules install
Jul 18, 2024
bf70167
Merge pull request #281 from caraiz2001/dev-ratio
caraiz2001 Jul 18, 2024
e3fde5b
small fixes to allow main_coda.nf to run
Jul 26, 2024
d45c4aa
Allow caching for -resume
Jul 26, 2024
b8221e3
Allow caching for -resume
Jul 26, 2024
83b8fdc
Use recommended format for optional parameters
Jul 26, 2024
20c6cc6
Use recommended format for optional parameters
Jul 26, 2024
b719387
Skip copying matrix if not necessary to allow resuming pipeline execu…
Jul 26, 2024
5a3727b
Skip copying matrix if not necessary to allow resuming pipeline execu…
Jul 26, 2024
0fbdcd6
Update CHANGELOG.md
Jul 30, 2024
124f21e
Keep original matrix file name in the annotation copy to improve resu…
Jul 30, 2024
0e6b4fc
Update CHANGELOG.md
bjlang Jul 30, 2024
0a3927a
Keep original matrix file name in the annotation copy to improve resu…
Jul 30, 2024
c44e6bc
Merge pull request #282 from bjlang/dev
WackerO Jul 31, 2024
05cfb3a
Move main_coda logic into differentialabundance as experimental study…
Aug 27, 2024
5e5c6e4
Merge pull request #284 from nf-core/dev
bjlang Aug 27, 2024
718075b
Merge branch 'nf-core:dev-ratio' into dev-ratio
bjlang Aug 27, 2024
b218940
Do not put not not in the not wrong place!
Aug 27, 2024
3a69aae
Merge branch 'dev-ratio' of https://github.com/bjlang/differentialabu…
Aug 27, 2024
6e6a740
Merge pull request #283 from bjlang/dev-ratio
bjlang Aug 27, 2024
04abe25
- use validated input for experimental workflow
Sep 3, 2024
2fe78de
Merge branch 'nf-core:dev-ratio' into dev-ratio
bjlang Sep 3, 2024
3254d25
small fix
Sep 3, 2024
d133c6d
Merge branch 'dev-ratio' of https://github.com/bjlang/differentialabu…
Sep 3, 2024
8fcc24c
Add CoDA/experimental branch to CI tests
Sep 6, 2024
9532cfb
fix linting
Sep 6, 2024
318706a
fix testing parameters
Sep 6, 2024
9421df1
Merge pull request #285 from bjlang/dev-ratio
bjlang Sep 10, 2024
b71b83e
Delete conf/crg.config
bjlang Sep 13, 2024
4a41e66
minor code restructuring
Sep 20, 2024
293b30e
Merge pull request #290 from bjlang/dev-ratio
bjlang Sep 20, 2024
a6c2b3d
Store output of different pathways in different folders
Oct 1, 2024
a0ef41b
within differential subworkflow, initialize results channels at the b…
suzannejin Oct 2, 2024
ca6fb97
formatting
suzannejin Oct 2, 2024
328aacd
removed the variable selection block between diff and corr blocks.
suzannejin Oct 2, 2024
f4c4d2f
updated toolsheet to the current experimental workflow status
suzannejin Oct 2, 2024
3160a09
formatting
suzannejin Oct 2, 2024
c9b9482
remove trailing spaces
suzannejin Oct 2, 2024
fc95675
updated schema_tools.json
suzannejin Oct 2, 2024
7bc6ee8
remove filtervar related modules and subworkflows.
suzannejin Oct 2, 2024
283385a
updated modules.config with the correct nomenclature for grea
suzannejin Oct 3, 2024
25ace61
Merge pull request #293 from suzannejin/dev-ratio
suzannejin Oct 7, 2024
aac7085
added new version propd
suzannejin Oct 7, 2024
ecfc184
remove old container comment
suzannejin Oct 8, 2024
6885bfd
added comment to propd.R
suzannejin Oct 8, 2024
b7a2774
trim trailing spaces
suzannejin Oct 8, 2024
8c75e55
[automated] Fix code linting
nf-core-bot Oct 8, 2024
c36e237
prettier modules.json
suzannejin Oct 8, 2024
ed06869
Merge branch 'dev-ratio' of https://github.com/suzannejin/differentia…
suzannejin Oct 8, 2024
1731b3d
add more tests to experimental
suzannejin Oct 8, 2024
36868e1
modify propd.R to not erroring when no FDR cutoff is found
suzannejin Oct 8, 2024
c5ddf64
add comment
suzannejin Oct 8, 2024
c1b8817
Template update for nf-core/tools version 3.0.0
nf-core-bot Oct 8, 2024
c74c341
test_experimental also run propd_fdr
suzannejin Oct 8, 2024
879b8a7
also get ch_results_genewise from propd
suzannejin Oct 8, 2024
1696e1c
added local module propr/propr
suzannejin Oct 8, 2024
bc9c86a
fix bug in propr.R
suzannejin Oct 8, 2024
fed6d45
remove nf-core/propr/grea
suzannejin Oct 8, 2024
cf58a2b
add local propr/grea module
suzannejin Oct 8, 2024
5b56162
modified enrichment subworkflow to fit new grea module
suzannejin Oct 8, 2024
38a32b6
fix bug in enrichment.nf
suzannejin Oct 8, 2024
5626dc7
Template update for nf-core/tools version 3.0.1
nf-core-bot Oct 9, 2024
118b257
added updated local version of propr/grea module
suzannejin Oct 10, 2024
5c44e3c
change test_experimental to remove propd_grea (no container yet)
suzannejin Oct 10, 2024
f8811e4
Merge pull request #296 from suzannejin/dev-ratio
suzannejin Oct 10, 2024
995a656
Skip fastqc, igenomes and nf_schema
pinin4fjords Oct 11, 2024
d719fca
Update CHANGELOG
pinin4fjords Oct 11, 2024
3e5cda8
[automated] Fix code linting
nf-core-bot Oct 11, 2024
19491be
Merge pull request #299 from nf-core/add_exclusions
mashehu Oct 11, 2024
2f1a540
fix structure of `.nf-core.yml`
mashehu Oct 11, 2024
2222062
Merge pull request #300 from nf-core/fix-nf-core.yml
mashehu Oct 11, 2024
b498163
Template update for nf-core/tools version 3.0.1
nf-core-bot Oct 11, 2024
4446eab
Template update for nf-core/tools version 3.0.2
nf-core-bot Oct 11, 2024
7ddbed7
Merge branch 'TEMPLATE' of github.com:nf-core/differentialabundance i…
pinin4fjords Oct 11, 2024
488f1a2
Linting fixes
pinin4fjords Oct 11, 2024
2d0ebac
Fix linting
pinin4fjords Oct 11, 2024
c57a3c0
Fix files_unchanged
pinin4fjords Oct 11, 2024
5bb2b16
Linting fixes
pinin4fjords Oct 11, 2024
4cde832
Fix template pngs
pinin4fjords Oct 11, 2024
f56e710
skip exists check for multiqc config
pinin4fjords Oct 11, 2024
75b5f79
Fix action
pinin4fjords Oct 11, 2024
1c7ad9d
correct skipping
pinin4fjords Oct 11, 2024
cdb7f44
correct skipping
pinin4fjords Oct 11, 2024
4db87df
remove lingering check_max
pinin4fjords Oct 11, 2024
8336577
Fix multiqc config
pinin4fjords Oct 11, 2024
83699b7
Merge pull request #303 from nf-core/merging-template-updates
pinin4fjords Oct 11, 2024
e977214
Merge branch 'dev' into dev-ratio
pinin4fjords Oct 14, 2024
46f1d8e
added the params for experimental workflow
suzannejin Oct 16, 2024
e8f159a
udpate schema for tools
suzannejin Oct 16, 2024
36fcff4
updated fromSamplesheet to samplesheetToList
suzannejin Oct 16, 2024
66148af
set toolsheet schema
suzannejin Oct 16, 2024
576bb8c
remove temporal config
suzannejin Oct 16, 2024
59bd17c
minor changes
suzannejin Oct 16, 2024
bd51d59
fix error related to .nf-core.yml
suzannejin Oct 16, 2024
a077c03
properly set the resources limits for test_experimental.config
suzannejin Oct 16, 2024
d7ab1ca
update propd.R template to compute weighted connectivity for hub genes
suzannejin Oct 17, 2024
9819e84
add parameter for propd_weighted_degree
suzannejin Oct 17, 2024
b566842
updated propr container
suzannejin Oct 18, 2024
ab9587b
modify propd.R so that it output some plots for the top red/yellow/gr…
suzannejin Oct 18, 2024
aa03e1a
Merge pull request #302 from suzannejin/dev-ratio
suzannejin Oct 22, 2024
95e406a
Merge branch 'dev-ratio' of https://github.com/bjlang/differentialabu…
Oct 22, 2024
0464932
finish merge
Oct 22, 2024
41adc93
Split toolsheet data into subworkflow dedicated channels
Oct 22, 2024
1cbdb17
Fix linting and include propd_grea in test
Oct 22, 2024
9d35597
remove duplicate tools declaration
Oct 23, 2024
062c5a3
Temporarily remove pathway from meta to run processes only once per d…
Oct 23, 2024
4075a80
fix typo
Oct 23, 2024
a594ebf
Merge pull request #308 from bjlang/dev-ratio
bjlang Oct 23, 2024
f4e8164
Move pathway related logic out of differential and correlation SWF
Oct 23, 2024
74c77bd
Merge branch 'nf-core:dev-ratio' into dev-ratio
bjlang Oct 23, 2024
bd7d5d4
fix bug with number_of_cutoffs in propd.R
suzannejin Oct 24, 2024
8db59cc
update toolsheet
suzannejin Oct 25, 2024
dab58e5
updated propr container and modified propd.R to loop through FDR test…
suzannejin Oct 25, 2024
3c8be72
Merge pull request #320 from suzannejin/dev-ratio-propd-loop
suzannejin Oct 25, 2024
094452b
shorten test_experimental into the essential tests
suzannejin Oct 28, 2024
14b625b
Merge branch 'dev-ratio' into dev-ratio-plot-exploratory
suzannejin Oct 28, 2024
e345168
trim trailing
suzannejin Oct 28, 2024
0329206
Merge pull request #324 from suzannejin/dev-ratio-plot-exploratory
suzannejin Oct 28, 2024
af86bb2
Modify differential/main.nf to include limma
syangaskhan Oct 28, 2024
aca5f24
modify limma input
suzannejin Oct 29, 2024
afd7522
modify limma input
suzannejin Oct 29, 2024
e8067ac
trim trailing
suzannejin Oct 29, 2024
1f4e926
Merge pull request #328 from syyang93/limma_add
suzannejin Oct 29, 2024
4477e1c
add limma to test_experimental
suzannejin Oct 29, 2024
898af43
add filtering step for limma
suzannejin Oct 29, 2024
c6db7ff
fix bug
suzannejin Oct 29, 2024
3b398ac
change filter_difftable_limma input column names
suzannejin Oct 29, 2024
f97ba6b
add todo
suzannejin Oct 29, 2024
1d5b909
Merge pull request #331 from suzannejin/dev-ratio-limma
suzannejin Oct 29, 2024
f2b6322
add GPROFILER2 module to ENRICHMENT subworkflow
Oct 29, 2024
94d3c8e
Once more reorganize the pathway logic
Oct 29, 2024
e5a5d15
Merge remote-tracking branch 'upstream/dev-ratio' into dev-ratio
Oct 29, 2024
02a38bb
add new pathway_names to test gprofiler2
Oct 29, 2024
067c592
run GPROFILER2 only when enr_method is specified in the ch_tools channel
Oct 29, 2024
47bb659
remove trailing whitespace
Oct 29, 2024
90001a2
add new line at end of file
Oct 29, 2024
f7c5c77
Adapt Limma call
Oct 29, 2024
4889998
Merge pull request #333 from nf-core/323_add_module_gprofiler2
suzannejin Oct 30, 2024
1198761
Merge remote-tracking branch 'upstream/dev-ratio' into dev-ratio
Oct 30, 2024
953eb51
Implement review comments
Oct 30, 2024
4a5aa60
add deseq2 pathway name
Oct 30, 2024
3546cb0
add DESEQ2 block to this workflow
Oct 30, 2024
ba1ea24
set nsub to lower numebr given nature of test data
Oct 30, 2024
d6da7ad
resolve merge conflicts
Oct 30, 2024
a2ddd8a
fix linting
Oct 30, 2024
a282a47
update channel name to samples_and_matrix
roskamsh Oct 30, 2024
0e4a84d
update channel name to samples_and_matrix
roskamsh Oct 30, 2024
a885116
update channel name to samples_and_matrix
roskamsh Oct 30, 2024
0f9c9fc
Merge pull request #335 from nf-core/322_add_module_deseq2
suzannejin Nov 4, 2024
6d0d3b8
Merge pull request #318 from bjlang/dev-ratio
suzannejin Nov 4, 2024
1cba7e6
fix the channels properly with the new preprocess/postprocess scheme …
suzannejin Nov 4, 2024
2a1d9b2
modify preprocess_subworkflow_input to filter the elements where meth…
suzannejin Nov 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
6 changes: 1 addition & 5 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,6 @@ indent_style = unset
[/assets/email*]
indent_size = unset

# ignore Readme
[README.md]
indent_style = unset

# ignore python
# ignore python and markdown
[*.{py,md}]
indent_style = unset
12 changes: 6 additions & 6 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ If you'd like to write some code for nf-core/differentialabundance, the standard
1. Check that there isn't already an issue about your idea in the [nf-core/differentialabundance issues](https://github.com/nf-core/differentialabundance/issues) to avoid duplicating work. If there isn't one already, please create one so that others know you're working on this
2. [Fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) the [nf-core/differentialabundance repository](https://github.com/nf-core/differentialabundance) to your GitHub account
3. Make the necessary changes / additions within your forked repository following [Pipeline conventions](#pipeline-contribution-conventions)
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).
4. Use `nf-core pipelines schema build` and add any new parameters to the pipeline JSON schema (requires [nf-core tools](https://github.com/nf-core/tools) >= 1.10).
5. Submit a Pull Request against the `dev` branch and wait for the code to be reviewed and merged

If you're not used to this workflow with git, you can start with some [docs from GitHub](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests) or even their [excellent `git` resources](https://try.github.io/).
Expand All @@ -40,7 +40,7 @@ There are typically two types of tests that run:
### Lint tests

`nf-core` has a [set of guidelines](https://nf-co.re/developers/guidelines) which all pipelines must adhere to.
To enforce these and ensure that all pipelines stay in sync, we have developed a helper tool which runs checks on the pipeline code. This is in the [nf-core/tools repository](https://github.com/nf-core/tools) and once installed can be run locally with the `nf-core lint <pipeline-directory>` command.
To enforce these and ensure that all pipelines stay in sync, we have developed a helper tool which runs checks on the pipeline code. This is in the [nf-core/tools repository](https://github.com/nf-core/tools) and once installed can be run locally with the `nf-core pipelines lint <pipeline-directory>` command.

If any failures or warnings are encountered, please follow the listed URL for more documentation.

Expand Down Expand Up @@ -75,7 +75,7 @@ If you wish to contribute a new step, please use the following coding standards:
2. Write the process block (see below).
3. Define the output channel if needed (see below).
4. Add any new parameters to `nextflow.config` with a default (see below).
5. Add any new parameters to `nextflow_schema.json` with help text (via the `nf-core schema build` tool).
5. Add any new parameters to `nextflow_schema.json` with help text (via the `nf-core pipelines schema build` tool).
6. Add sanity checks and validation for all relevant parameters.
7. Perform local tests to validate that the new code works as expected.
8. If applicable, add a new test command in `.github/workflow/ci.yml`.
Expand All @@ -86,11 +86,11 @@ If you wish to contribute a new step, please use the following coding standards:

Parameters should be initialised / defined with default values in `nextflow.config` under the `params` scope.

Once there, use `nf-core schema build` to add to `nextflow_schema.json`.
Once there, use `nf-core pipelines schema build` to add to `nextflow_schema.json`.

### Default processes resource requirements

Sensible defaults for process resource requirements (CPUs / memory / time) for a process should be defined in `conf/base.config`. These should generally be specified generic with `withLabel:` selectors so they can be shared across multiple processes/steps of the pipeline. A nf-core standard set of labels that should be followed where possible can be seen in the [nf-core pipeline template](https://github.com/nf-core/tools/blob/master/nf_core/pipeline-template/conf/base.config), which has the default process as a single core-process, and then different levels of multi-core configurations for increasingly large memory requirements defined with standardised labels.
Sensible defaults for process resource requirements (CPUs / memory / time) for a process should be defined in `conf/base.config`. These should generally be specified generic with `withLabel:` selectors so they can be shared across multiple processes/steps of the pipeline. A nf-core standard set of labels that should be followed where possible can be seen in the [nf-core pipeline template](https://github.com/nf-core/tools/blob/main/nf_core/pipeline-template/conf/base.config), which has the default process as a single core-process, and then different levels of multi-core configurations for increasingly large memory requirements defined with standardised labels.

The process resources can be passed on to the tool dynamically within the process with the `${task.cpus}` and `${task.memory}` variables in the `script:` block.

Expand All @@ -103,7 +103,7 @@ Please use the following naming schemes, to make it easy to understand what is g

### Nextflow version bumping

If you are using a new feature from core Nextflow, you may bump the minimum required version of nextflow in the pipeline with: `nf-core bump-version --nextflow . [min-nf-version]`
If you are using a new feature from core Nextflow, you may bump the minimum required version of nextflow in the pipeline with: `nf-core pipelines bump-version --nextflow . [min-nf-version]`

### Images and figures

Expand Down
4 changes: 2 additions & 2 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ Learn more about contributing: [CONTRIBUTING.md](https://github.com/nf-core/diff
- [ ] If you've fixed a bug or added code that should be tested, add tests!
- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/differentialabundance/tree/master/.github/CONTRIBUTING.md)
- [ ] If necessary, also make a PR on the nf-core/differentialabundance _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository.
- [ ] Make sure your code lints (`nf-core lint`).
- [ ] Ensure the test suite passes (`nf-test test main.nf.test -profile test,docker`).
- [ ] Make sure your code lints (`nf-core pipelines lint`).
- [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir <OUTDIR>`).
- [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir <OUTDIR>`).
- [ ] Usage Documentation in `docs/usage.md` is updated.
- [ ] Output Documentation in `docs/output.md` is updated.
Expand Down
35 changes: 26 additions & 9 deletions .github/workflows/awsfulltest.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,36 @@
name: nf-core AWS full size tests
# This workflow is triggered on published releases.
# This workflow is triggered on PRs opened against the master branch.
# It can be additionally triggered manually with GitHub actions workflow dispatch button.
# It runs the -profile 'test_full' on AWS batch

on:
release:
types: [published]
pull_request:
branches:
- master
workflow_dispatch:
pull_request_review:
types: [submitted]

jobs:
run-tower:
run-platform:
name: Run AWS full tests
if: github.repository == 'nf-core/differentialabundance'
# run only if the PR is approved by at least 2 reviewers and against the master branch or manually triggered
if: github.repository == 'nf-core/differentialabundance' && github.event.review.state == 'approved' && github.event.pull_request.base.ref == 'master' || github.event_name == 'workflow_dispatch'
runs-on: ubuntu-latest
steps:
- name: Launch workflow via tower
- uses: octokit/[email protected]
id: check_approvals
with:
route: GET /repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/reviews
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- id: test_variables
if: github.event_name != 'workflow_dispatch'
run: |
JSON_RESPONSE='${{ steps.check_approvals.outputs.data }}'
CURRENT_APPROVALS_COUNT=$(echo $JSON_RESPONSE | jq -c '[.[] | select(.state | contains("APPROVED")) ] | length')
test $CURRENT_APPROVALS_COUNT -ge 2 || exit 1 # At least 2 approvals are required
- name: Launch workflow via Seqera Platform
uses: seqeralabs/action-tower-launch@v2
with:
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
Expand All @@ -30,7 +47,7 @@ jobs:

- uses: actions/upload-artifact@v4
with:
name: Tower debug log file
name: Seqera Platform debug log file
path: |
tower_action_*.log
tower_action_*.json
seqera_platform_action_*.log
seqera_platform_action_*.json
12 changes: 6 additions & 6 deletions .github/workflows/awstest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ name: nf-core AWS test
on:
workflow_dispatch:
jobs:
run-tower:
run-platform:
name: Run AWS tests
if: github.repository == 'nf-core/differentialabundance'
runs-on: ubuntu-latest
steps:
# Launch workflow using Tower CLI tool action
- name: Launch workflow via tower
# Launch workflow using Seqera Platform CLI tool action
- name: Launch workflow via Seqera Platform
uses: seqeralabs/action-tower-launch@v2
with:
workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }}
Expand All @@ -27,7 +27,7 @@ jobs:

- uses: actions/upload-artifact@v4
with:
name: Tower debug log file
name: Seqera Platform debug log file
path: |
tower_action_*.log
tower_action_*.json
seqera_platform_action_*.log
seqera_platform_action_*.json
64 changes: 52 additions & 12 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,46 +7,86 @@ on:
pull_request:
release:
types: [published]
workflow_dispatch:

env:
NXF_ANSI_LOG: false
NXF_SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity
NXF_SINGULARITY_LIBRARYDIR: ${{ github.workspace }}/.singularity

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

jobs:
test:
name: Test Nextflow versions and profiles
name: "Run pipeline with test data (${{ matrix.NXF_VER }} | ${{ matrix.test_profile }} | ${{ matrix.compute_profile }})"
# Only run on push if this is the nf-core dev branch (merged PRs)
if: "${{ github.event_name != 'push' || (github.event_name == 'push' && github.repository == 'nf-core/differentialabundance') }}"
runs-on: ubuntu-latest
strategy:
matrix:
NXF_VER:
- "23.10.0"
- "24.04.2"
- "latest-everything"
profile:
test_profile:
- "test"
- "test_nogtf"
- "test_affy"
- "test_maxquant"
- "test_soft"
- "test_experimental"
compute_profile:
- "conda"
- "docker"
- "singularity"
test_name:
- "test"
isMaster:
- ${{ github.base_ref == 'master' }}
# Exclude conda and singularity on dev
exclude:
- isMaster: false
compute_profile: "conda"
- isMaster: false
compute_profile: "singularity"
steps:
- name: Check out pipeline code
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4

- name: Install Nextflow
uses: nf-core/setup-nextflow@v1
- name: Set up Nextflow
uses: nf-core/setup-nextflow@v2
with:
version: "${{ matrix.NXF_VER }}"

- name: Disk space cleanup
- name: Set up Apptainer
if: matrix.compute_profile == 'singularity'
uses: eWaterCycle/setup-apptainer@main

- name: Set up Singularity
if: matrix.compute_profile == 'singularity'
run: |
mkdir -p $NXF_SINGULARITY_CACHEDIR
mkdir -p $NXF_SINGULARITY_LIBRARYDIR

- name: Set up Miniconda
if: matrix.compute_profile == 'conda'
uses: conda-incubator/setup-miniconda@a4260408e20b96e80095f42ff7f1a15b27dd94ca # v3
with:
miniconda-version: "latest"
auto-update-conda: true
conda-solver: libmamba
channels: conda-forge,bioconda

- name: Set up Conda
if: matrix.compute_profile == 'conda'
run: |
echo $(realpath $CONDA)/condabin >> $GITHUB_PATH
echo $(realpath python) >> $GITHUB_PATH

- name: Clean up Disk space
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1

- name: Run pipeline with test data
# You can customise CI pipeline run tests as required
# For example: adding multiple test runs with different parameters
# Remember that you can parallelise this by using strategy.matrix
- name: "Run pipeline with test data ${{ matrix.NXF_VER }} | ${{ matrix.test_name }} | ${{ matrix.compute_profile }}"
run: |
nextflow run ${GITHUB_WORKSPACE} -profile docker,${{ matrix.profile }} --outdir ./results
nextflow run ${GITHUB_WORKSPACE} -profile ${{ matrix.test_profile }},${{ matrix.compute_profile }} --outdir ./results
73 changes: 60 additions & 13 deletions .github/workflows/download_pipeline.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Test successful pipeline download with 'nf-core download'
name: Test successful pipeline download with 'nf-core pipelines download'

# Run the workflow when:
# - dispatched manually
Expand All @@ -8,12 +8,14 @@ on:
workflow_dispatch:
inputs:
testbranch:
description: "The specific branch you wish to utilize for the test execution of nf-core download."
description: "The specific branch you wish to utilize for the test execution of nf-core pipelines download."
required: true
default: "dev"
pull_request:
types:
- opened
- edited
- synchronize
branches:
- master
pull_request_target:
Expand All @@ -28,15 +30,20 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Install Nextflow
uses: nf-core/setup-nextflow@v1
uses: nf-core/setup-nextflow@v2

- uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5
- name: Disk space cleanup
uses: jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1

- uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5
with:
python-version: "3.11"
python-version: "3.12"
architecture: "x64"
- uses: eWaterCycle/setup-singularity@931d4e31109e875b13309ae1d07c70ca8fbc8537 # v7

- name: Setup Apptainer
uses: eWaterCycle/setup-apptainer@4bb22c52d4f63406c49e94c804632975787312b3 # v2.0.0
with:
singularity-version: 3.8.3
apptainer-version: 1.3.4

- name: Install dependencies
run: |
Expand All @@ -49,24 +56,64 @@ jobs:
echo "REPOTITLE_LOWERCASE=$(basename ${GITHUB_REPOSITORY,,})" >> ${GITHUB_ENV}
echo "REPO_BRANCH=${{ github.event.inputs.testbranch || 'dev' }}" >> ${GITHUB_ENV}

- name: Make a cache directory for the container images
run: |
mkdir -p ./singularity_container_images

- name: Download the pipeline
env:
NXF_SINGULARITY_CACHEDIR: ./
NXF_SINGULARITY_CACHEDIR: ./singularity_container_images
run: |
nf-core download ${{ env.REPO_LOWERCASE }} \
nf-core pipelines download ${{ env.REPO_LOWERCASE }} \
--revision ${{ env.REPO_BRANCH }} \
--outdir ./${{ env.REPOTITLE_LOWERCASE }} \
--compress "none" \
--container-system 'singularity' \
--container-library "quay.io" -l "docker.io" -l "ghcr.io" \
--container-library "quay.io" -l "docker.io" -l "community.wave.seqera.io" \
--container-cache-utilisation 'amend' \
--download-configuration
--download-configuration 'yes'

- name: Inspect download
run: tree ./${{ env.REPOTITLE_LOWERCASE }}

- name: Run the downloaded pipeline
- name: Count the downloaded number of container images
id: count_initial
run: |
image_count=$(ls -1 ./singularity_container_images | wc -l | xargs)
echo "Initial container image count: $image_count"
echo "IMAGE_COUNT_INITIAL=$image_count" >> ${GITHUB_ENV}

- name: Run the downloaded pipeline (stub)
id: stub_run_pipeline
continue-on-error: true
env:
NXF_SINGULARITY_CACHEDIR: ./
NXF_SINGULARITY_CACHEDIR: ./singularity_container_images
NXF_SINGULARITY_HOME_MOUNT: true
run: nextflow run ./${{ env.REPOTITLE_LOWERCASE }}/$( sed 's/\W/_/g' <<< ${{ env.REPO_BRANCH }}) -stub -profile test,singularity --outdir ./results
- name: Run the downloaded pipeline (stub run not supported)
id: run_pipeline
if: ${{ job.steps.stub_run_pipeline.status == failure() }}
env:
NXF_SINGULARITY_CACHEDIR: ./singularity_container_images
NXF_SINGULARITY_HOME_MOUNT: true
run: nextflow run ./${{ env.REPOTITLE_LOWERCASE }}/$( sed 's/\W/_/g' <<< ${{ env.REPO_BRANCH }}) -profile test,singularity --outdir ./results

- name: Count the downloaded number of container images
id: count_afterwards
run: |
image_count=$(ls -1 ./singularity_container_images | wc -l | xargs)
echo "Post-pipeline run container image count: $image_count"
echo "IMAGE_COUNT_AFTER=$image_count" >> ${GITHUB_ENV}

- name: Compare container image counts
run: |
if [ "${{ env.IMAGE_COUNT_INITIAL }}" -ne "${{ env.IMAGE_COUNT_AFTER }}" ]; then
initial_count=${{ env.IMAGE_COUNT_INITIAL }}
final_count=${{ env.IMAGE_COUNT_AFTER }}
difference=$((final_count - initial_count))
echo "$difference additional container images were \n downloaded at runtime . The pipeline has no support for offline runs!"
tree ./singularity_container_images
exit 1
else
echo "The pipeline can be downloaded successfully!"
fi
6 changes: 3 additions & 3 deletions .github/workflows/fix-linting.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
# Use the @nf-core-bot token to check out so we can push later
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4
with:
token: ${{ secrets.nf_core_bot_auth_token }}

Expand All @@ -32,9 +32,9 @@ jobs:
GITHUB_TOKEN: ${{ secrets.nf_core_bot_auth_token }}

# Install and run pre-commit
- uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5
- uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5
with:
python-version: 3.11
python-version: "3.12"

- name: Install pre-commit
run: pip install pre-commit
Expand Down
Loading
Loading