This configuration will manipulate the PATH variable, so that tools that
- call
python
- and do not specify a python requirement as a dependency
- and that you can't change for some reason (e.g they use the deprecated package_* dependencies)
will use python 2. Since we embedd the metdata setting in the job script we set use_metadata_binary
and
place a script called galaxy-set-metadata
into the bin directory of galaxy's virtualenv environment.
This will make sure that the metdata setting uses python 3 and has access to Galaxy's internals.
Place galaxy-set-metadata into your galaxy's virtualenv/bin directory (usually in <galaxy_root>/.venv/bin
) and make it executable. Add an additional destination to your existing destinations, and map the failing legacy tool(s) to that location.
If some of your legacy tools use galaxy internals you can install the galaxy-data package into your python 2 environment ({{path to python folder with python 2 binary}}/python -m pip install galaxy-data
).