nextflow-io / nextflow-io/nextflow
when activating conda env, `conda info --json` returned error report instead of paths
Nobody has claimed this yet.
- Dominant language
- Groovy
- Stars
- 3.5k
- Forks
- 811
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 61
Description
Bug report
(Please follow this template replacing the text between parentheses with the requested information)
Expected behavior and actual behavior
Expected behavior:
echo $(conda info --json | awk '/conda_prefix/ { gsub(/"|,/, "", $2); print $2 }')
/Users/path/to/miniconda3
actual behavior
(base) bash-4.4$ conda info --json
{
"caused_by": "OSError(28, 'No space left on device')",
"error": "NoSpaceLeftError: No space left on devices.",
"exception_name": "NoSpaceLeftError",
"exception_type": "<class 'conda.exceptions.NoSpaceLeftError'>",
"message": "No space left on devices."
}
Steps to reproduce the problem
As suggested above.
Program output
As listed above.
Environment
- Nextflow version: version 23.10.0 build 5889
- Java version: openjdk 20-internal 2023-03-21
- Operating system: Linux
- Bash version: GNU bash, version 4.4.20(1)-release (x86_64-redhat-linux-gnu)
Comments
This issue is meant to point out an unexpected behavior of conda info --json. I'm using the cluster from my school. For some reason the disk that the conda is in is full but I can use the conda env without any issue.
I had to debug this by digging into the .command.run file. I suggest improving the way nextflow finds the activate binary so that it will work even if some temp disks are full.
Best,
Dongze
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the failure with conda info --json when the conda disk or temporary disk is full, then inspect the generated .command.run file and the logic that locates the activate binary. Compare the reported behavior with using the conda environment directly; done means activation handling still finds the required binary and reports a usable path under this condition.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- bash, groovy
- Domain
- cli, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100