Since we need the index for browsing repos in the new client
we should incrementally build the index with every repo update.
Having this in tool_shed will make re-use easier.
Follow-up to https://github.com/galaxyproject/galaxy/pull/9271
Also move GitHub client initialisation and check for `requests` closer to where they
are used to prevent error messages when running `make`.
- Allow specifying Python to use to create virtualenv using GALAXY_PYTHON
environment variable.
- Integrate Python support docs from https://galaxyproject.org/admin/python/
- Update virtualenv installation to use v16.7.9
`scripts/common_startup.sh` now prefers python3 when creating Galaxy's
virtual environment, so it needs to be run when inside the tox virtualenv,
where `GALAXY_PYTHON` is defined.
Otherwise, if a virtualenv is active on top of conda base env (e.g. when
running py37-first_startup tox test in TravisCI), the wrong `activate`
script is sourced.
Also fix `CONDA_PREFIX` environment variable definition when using a shell
not supported by conda.
Since at least version 3.7.4 of the `python` package from the `defaults`
conda channel, `python -V` doesn't reveal its origin any more.
Also some fixes suggested by `shellcheck`.
- Allow specifying Python to use to create virtualenv using GALAXY_PYTHON
environment variable.
- Integrate Python support docs from https://galaxyproject.org/admin/python/
- Update virtualenv installation to use v16.7.9
Otherwise under Python2 the following exception is raised:
```
$ python2
Python 2.7.17 (default, Nov 7 2019, 10:07:09)
[GCC 7.4.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import io
>>> with io.open('foo.txt', 'w', encoding='utf-8') as fh:
... fh.write('foo')
...
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
TypeError: write() argument 1 must be unicode, not str
```
- enables docker destination for interactivetool tests
- fixes a wrong argument in entrypoint management
- fixes the test setup that targeted a previous iteration (which was
still called realtimetools)
- prevents deleting the working directory before python has a chance to
start the container monitor (that's the sleep command)
- fixes some odd interactive tool test assertions
- uses unicode arguments in key_type_token_mapping.py.
uwsgi arguments are always passed as bytestrings.