Open chapmanb opened 7 years ago
In core.properties, if executor.set_permissions parameter is true, after execution Bunny chown all files in working directory to executor.permission.gid and executor.permission.uid or try to find uid and gid of current user. Can you try to set executor.permission.gid and executor.permission.uid in config? Maybe for some reason gid and uid are not detected properly, and that is why it failed. On which operating system you run workflow?
Thanks so much, swapping the config over to executor.set_permissions=true
fixed the issue. We had it set to default to work around the issue where docker was required for --no-container
runs (#258). Do you know if that's still a concern, or has that bug been fixed? If the --no-container
bit is fixed I can stop changing the bioconda default so it'll do the right thing in this case by defaul.
As a more general question, is there a way to adjust the parameters via the command line without writing a new configuration directory/file -- via -D
or some other java magic? I could adjust these for the specific cases via a small bcbio wrapper to avoid folks needing to worry about it.
The latest version (1.0.3) of rabix cli doesn't use any additional containers for setting permissions so you can leave executor.set_permissions=true and nothing will happen in the case of local execution.
We are also looking into a rework of the configuration system.
Milso, thanks so much for working on this. I was testing 1.0.3 and ran into a separate issue (#383) but will definitely do more testing on this once that's resolved. Thanks again for all the help.
While testing the latest bcbio test CWL workflow (https://github.com/bcbio/test_bcbio_cwl) using the 1.0.1 release, I'm running into a permissions issue using a Docker container. Everything runs cleanly when using
--no-container
but when I run with analysis happening in a container I get a mix of root and user owned files:which triggers an error writing/reading
cwl.outputs.json
for all steps in the pipeline:Thanks much for any suggestions/tips about how best to run this to avoid the issues. Ideally Docker would get run using
-u
so they're owned by the user and we never have to deal with root permissions outside of the container, but open to any ideas/thoughts about how best to do it. Thanks much.