galaxyproject / galaxy-helm

Minimal setup required to run Galaxy under Kubernetes
MIT License
41 stars 38 forks source link

Requirements not installed before the start of web server #431

Closed mapk-amazon closed 1 year ago

mapk-amazon commented 1 year ago

For me the galaxy deployment does not check and install needed dependencies before the start of the web server.

Concrete: Configuring auth_conf.xml with <type>ldap3</type> lets Galaxy recognize that python-ldap3 is a dependency. This works when run.sh is triggered. It identifies the dependency and downloads the library.

In the helm chart, the server boots up and does not download this library and hence Active Directory does not work.

Current workaround: Installing the library manually via extraInitCommands

nuwang commented 1 year ago

The helm chart deliberately avoids use of the run.sh script, and therefore, conditional dependencies are not automatically installed. This is to, among other things, provide more reproducible builds where transient network failures and the like do not cause the container to fail on startup.

To handle such dependencies, please see this section: https://github.com/galaxyproject/galaxy-docker-k8s/#extending-the-image

See here for how the playbook adds defaults: https://github.com/galaxyproject/galaxy-docker-k8s/blob/e724b3a9dcb6f7be690ce643afc0507bbbad34cc/playbook.yml#L7

mapk-amazon commented 1 year ago

Hi nuwang. Thanks for the answer! The playbook defaults look promising. I'll close it here.