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

Simplify charliecloud profile #867

Merged
merged 3 commits into from
Mar 10, 2021
Merged

Conversation

phue
Copy link
Member

@phue phue commented Mar 5, 2021

With charliecloud v0.22, docker ENV layers are supported. Nextflow supports this feature since v21.03.0-edge (nextflow-io/nextflow@4553648).
This means we don't have to explicitly set the PATH variable within the container anymore, greatly simplifying the config.

I included a nag that this requires v21.03.0-edge

charliecloud {
manifest.nextflowVersion = '>=21.03.0-edge'
charliecloud.enabled = true
}

but I don't think this will work because the manifest is set after the profile config:

manifest {
name = '{{ cookiecutter.name }}'
author = '{{ cookiecutter.author }}'
homePage = 'https://github.com/{{ cookiecutter.name }}'
description = '{{ cookiecutter.description }}'
mainScript = 'main.nf'
nextflowVersion = '>=20.04.0'
version = '{{ cookiecutter.version }}'
}

So either we move that up or remove the override in the charliecloud profile entirely, assuming that there will be no tools release before 21.04.0?

phue added 2 commits March 5, 2021 15:00
with charliecloud 0.22, docker ENV layers are supported. Nextflow supports this feature since v21.03.0-edge. This means we don't have to explicitly pass set the PATH variable within the container, greatly simplifying the config
This reverts commit 995b8ed.

We don't need this anymore
@phue phue added the template nf-core pipeline/component template label Mar 5, 2021
@codecov
Copy link

codecov bot commented Mar 5, 2021

Codecov Report

Merging #867 (ddcafcd) into dev (bdba529) will increase coverage by 1.31%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##              dev     #867      +/-   ##
==========================================
+ Coverage   73.20%   74.52%   +1.31%     
==========================================
  Files          22       29       +7     
  Lines        2784     3183     +399     
==========================================
+ Hits         2038     2372     +334     
- Misses        746      811      +65     
Impacted Files Coverage Δ
nf_core/bump_version.py 85.93% <ø> (-0.22%) ⬇️
nf_core/lint/schema_params.py 78.94% <0.00%> (-5.27%) ⬇️
nf_core/lint/actions_awstest.py 83.33% <0.00%> (ø)
nf_core/lint/files_exist.py 81.39% <0.00%> (ø)
nf_core/lint/actions_ci.py 94.33% <0.00%> (ø)
nf_core/lint/actions_schema_validation.py 90.62% <0.00%> (ø)
nf_core/lint/actions_awsfulltest.py 93.10% <0.00%> (ø)
nf_core/__init__.py 100.00% <0.00%> (ø)
nf_core/lint/__init__.py 79.72% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 87b009a...f1a9600. Read the comment docs.

@ewels
Copy link
Member

ewels commented Mar 9, 2021

The downside of modifying this in the profile is that when it gets out of date, this will clobber anything specified by the pipeline author in the nextflow.config.. I'm inclined to leave it out and let people figure this out themselves for now. I guess there aren't loads of people using Charliecloud yet so shouldn't affect a lot of people? And will be mainstream version by the time it's widely used I would think..

@phue
Copy link
Member Author

phue commented Mar 10, 2021

Agreed, it is not going to affect a lot of users so we're probably good in leaving it out.
But generally, with nextflow switching to a 6 month release cycle, it might be good to think about how we could handle different version requirements for different profiles (as an example, the current edge requirement for nf-core/rnaseq only affects the singularity profile)

@ewels ewels merged commit c904f03 into nf-core:dev Mar 10, 2021
@phue phue deleted the simplify_charliecloud_profile branch March 10, 2021 09:23
@ewels
Copy link
Member

ewels commented Mar 10, 2021

Could maybe open a new issue to think about the question of multiple minimum required versions 👍🏻

Can't think of anything obvious now except manually adding checks for this in a boilerplate library file. That shouldn't be too difficult in the new DSL2 template structure I think.

ewels added a commit to ewels/nf-core-tools that referenced this pull request Mar 10, 2021
ewels added a commit that referenced this pull request Mar 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
template nf-core pipeline/component template
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants