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

z option is mishandled when adding custom docker_volumes #18989

Open
hexylena opened this issue Oct 14, 2024 · 4 comments · May be fixed by #18998
Open

z option is mishandled when adding custom docker_volumes #18989

hexylena opened this issue Oct 14, 2024 · 4 comments · May be fixed by #18998
Assignees

Comments

@hexylena
Copy link
Member

hexylena commented Oct 14, 2024

my job conf includes:

<param id="docker_volumes">$galaxy_root:ro,$tool_directory:ro,$job_directory:ro,$working_directory:z,$default_file_path:z</param>

there are five entries. Generated tool scripts look like:

-v /home/user/arbeit/galaxy/galaxy:/home/user/arbeit/galaxy/galaxy:ro \                                                                 
-v /home/user/arbeit/emc/infrastructure/files/emc-tools:/home/user/arbeit/emc/infrastructure/files/emc-tools:ro \                       
-v /home/user/arbeit/galaxy/galaxy/database/jobs_directory/000/499:/home/user/arbeit/galaxy/galaxy/database/jobs_directory/000/499:ro \ 
-v /home/user/arbeit/galaxy/galaxy/database/objects:z:rw \ 
--cpus ${GALAXY_SLOTS:-1}

note that there are now four -v instead of 5, (missing working_directory, I think. outputs_to_working_directory is false.

additionally, and more importantly, :rw has been added to the end of the mount, and the mount hasn't been reduplicated like usual. I'm guessing this is because there's some code that checks specifically for :ro and :rw, but doesn't yet consider :z or :Z (needed when running under selinux.) and assumes those are mount paths inside the container.

@hexylena
Copy link
Member Author

hexylena commented Oct 14, 2024

guessing it's in lib/galaxy/tool_util/deps/container_classes.py but not sure how some of that code works

@bernt-matthias
Copy link
Contributor

if volume_parts[1] not in ("rw", "ro", "default_ro"):

@bernt-matthias bernt-matthias linked a pull request Oct 15, 2024 that will close this issue
4 tasks
@bernt-matthias
Copy link
Contributor

#18998

Is dev sufficient for you? Or should I target another branch?

@hexylena
Copy link
Member Author

hexylena commented Oct 15, 2024

@bernt-matthias dev is fine! I can backport it myself locally for this use case.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants