Skip to content

Hotfix neoantigen-editing:1.1 -- fix PATH/exec bit for bundled scripts - #77

Merged
nikhil merged 2 commits into
developfrom
hotfix/neoantigen-editing-path
Aug 19, 2026
Merged

Hotfix neoantigen-editing:1.1 -- fix PATH/exec bit for bundled scripts#77
nikhil merged 2 commits into
developfrom
hotfix/neoantigen-editing-path

Conversation

@nikhil

@nikhil nikhil commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

NEOANTIGENEDITING_ALIGNTOIEDB and NEOANTIGENEDITING_COMPUTEFITNESS invoke align_neoantigens_to_IEDB.py / compute_fitness.py as bare commands, relying on PATH:

.command.sh: line 3: compute_fitness.py: command not found
.command.sh: line 3: align_neoantigens_to_IEDB.py: command not found

Root cause: cp -r /tmp/NeoantigenEditing/ /usr/bin copies the whole git checkout in as a subdirectory, /usr/bin/NeoantigenEditing/, rather than flattening its contents onto /usr/bin -- so the scripts never actually land on PATH (which is just /usr/bin, /usr/local/bin, etc.). Separately, the checked-out files also aren't executable (-rw-r--r--), so even a full-path invocation fails with "Permission denied".

(This previously worked because these two modules carried their own executable copies of these scripts as local nf-core module resources under resources/usr/bin/, which Nextflow stages onto PATH regardless of what's in the container. mskcc-omics-workflows/modules#258 removed those local copies in favor of the ones baked into this image.)

Fix: add /usr/bin/NeoantigenEditing to PATH via ENV, and chmod +x the checkout's *.py scripts, instead of relying on flattening everything into /usr/bin (which would also dump the checkout's README, Dockerfile, ACRRI_TERMS_OF_USE, .git/, data/, and Results/ directly into /usr/bin). The scripts take all their inputs as explicit CLI args (verified no hardcoded relative-path defaults), so relocating them onto PATH this way doesn't change their behavior.

Hotfixing 1.1 in place rather than cutting a new version, following the precedent set by PR #71 and the neoantigen-utils-base:1.6.1 unzip hotfix -- modules#258 already pins both modules to neoantigen-editing:1.1.

Verified: rebuilt the image and confirmed both scripts now resolve on PATH, are executable, and run successfully via bare invocation (compute_fitness.py --help, align_neoantigens_to_IEDB.py --help), matching exactly how the modules' .command.sh scripts call them.

nikhil added 2 commits August 18, 2026 16:29
NEOANTIGENEDITING_ALIGNTOIEDB and NEOANTIGENEDITING_COMPUTEFITNESS
invoke align_neoantigens_to_IEDB.py / compute_fitness.py as bare
commands, relying on PATH:

  .command.sh: line 3: compute_fitness.py: command not found
  .command.sh: line 3: align_neoantigens_to_IEDB.py: command not found

Root cause: `cp -r /tmp/NeoantigenEditing/ /usr/bin` copies the whole
git checkout in as a subdirectory, /usr/bin/NeoantigenEditing/, rather
than flattening its contents onto /usr/bin -- so the scripts never
actually land on PATH (which is just /usr/bin, /usr/local/bin, etc.).
Separately, the checked-out files also aren't executable (-rw-r--r--),
so even a full-path invocation fails with "Permission denied".

(This previously worked because these two modules carried their own
executable copies of these scripts as local nf-core module resources
under resources/usr/bin/, which Nextflow stages onto PATH regardless
of what's in the container. mskcc-omics-workflows/modules#258 removed
those local copies in favor of the ones baked into this image.)

Fix: add /usr/bin/NeoantigenEditing to PATH via ENV, and chmod +x the
checkout's *.py scripts, instead of relying on flattening everything
into /usr/bin (which would also dump the checkout's README, Dockerfile,
ACRRI_TERMS_OF_USE, .git/, data/, and Results/ directly into /usr/bin).
The scripts take all their inputs as explicit CLI args (verified no
hardcoded relative-path defaults), so relocating them onto PATH this
way doesn't change their behavior.

Hotfixing 1.1 in place rather than cutting a new version, following
the precedent set by PR #71 and the neoantigen-utils-base:1.6.1 unzip
hotfix -- modules#258 already pins both modules to
neoantigen-editing:1.1.

Verified: rebuilt the image and confirmed both scripts now resolve on
PATH, are executable, and run successfully via bare invocation
(`compute_fitness.py --help`, `align_neoantigens_to_IEDB.py --help`),
matching exactly how the modules' .command.sh scripts call them.
Updated Dockerfile to modify PATH for NeoantigenEditing scripts.
@nikhil
nikhil merged commit 5a9546b into develop Aug 19, 2026
6 checks passed
@nikhil
nikhil deleted the hotfix/neoantigen-editing-path branch August 19, 2026 13:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant