Skip to content

Commit

Permalink
Disallow using the Conda/Mamba profile
Browse files Browse the repository at this point in the history
Disallow using the Conda or Mamba profiles for the QUARTONOTEBOOK
module, as the environment created differs from that created with
containers. The Conda version of Quarto does not work on ARM64
architectures due to Pandoc-related issues, but installing outside Conda
works in a container-context. It is thus impossible to get the same
environment in a container image and using Conda, if compatibility with
both AMD64 and ARM64 architectures is desired (which it is). Hopefully
the issues with Conda will be solved in the future.
  • Loading branch information
fasterius committed Feb 8, 2024
1 parent 2f87b27 commit 94acf9b
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 6 deletions.
2 changes: 2 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -542,6 +542,8 @@ jobs:
tags: merquryfk/merquryfk
- profile: conda
tags: merquryfk/ploidyplot
- profile: conda
tags: quartonotebook
- profile: conda
tags: sentieon/bwaindex
- profile: conda
Expand Down
8 changes: 2 additions & 6 deletions modules/nf-core/quartonotebook/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ process QUARTONOTEBOOK {
// required dependencies for your analyses. You'll at least need Quarto
// itself, Papermill and whatever language you are running your analyses on;
// you can see an example in this module's Dockerfile.
conda "conda-forge::jupyter=1.0.0 conda-forge::matplotlib=3.4.3 conda-forge::papermill=2.4.0 conda-forge::quarto=1.3.433 conda-forge::r-rmarkdown=2.25"
container "docker.io/erikfas/quartonotebook"

input:
Expand All @@ -26,12 +25,9 @@ process QUARTONOTEBOOK {
task.ext.when == null || task.ext.when

script:
// Exit if running this module with -profile conda / -profile mamba on ARM64
// Exit if running this module with -profile conda / -profile mamba
if (workflow.profile.tokenize(',').intersect(['conda', 'mamba']).size() >= 1) {
arch = System.getProperty("os.arch")
if (arch == "arm64" || arch == "aarch64") {
exit 1, "The QUARTONOTEBOOK module does not support Conda/Mamba on ARM64. Please use Docker / Singularity / Podman instead."
}
exit 1, "The QUARTONOTEBOOK module does not support Conda/Mamba, please use Docker / Singularity / Podman instead."
}
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
Expand Down

0 comments on commit 94acf9b

Please sign in to comment.