-
Notifications
You must be signed in to change notification settings - Fork 25
Updating Galaxy Main
See Getting Set Up At TACC. Make sure you meet the requirements.
Also make sure you know how to look at the current logs in case something is going sideways.
Currently this is done by logging into one of the relevant VMs and doing journalctl -fu 'galaxy-main*'
The branch that Galaxy is running is configured in env/main/group_vars/all/all.yml
. Sometimes this config is set to a specific revision and branch setting is commented out, in those cases you will experience playbook fail if you do not change the revision.
Most of the time, main runs the latest release_YY.MM
, but if dev
commits are needed on Main, we will occasionally create a usegalaxy
branch from release_YY.MM
and cherry-pick dev
commits in to it. If the branch is currently usegalaxy
and not release_YY.MM
, you should merge Main's current release branch into usegalaxy
on Github first.
As of 18.09, the client always needs to be built regardless of branch. This is done by Ansible. If you need to update the client without updating Galaxy itself, you can do so with ansible-env main client
.
I've been unsuccessful in getting Ansible to properly update the galaxy_commit_id
variable in the middle of a playbook run. As a result, the Galaxy clone on Pulsar servers would be updated to the previous version of Galaxy (the version in env/main/files/galaxy/galaxy_version.yml
at the time of first running ansible-env main update
) and the commit hash in welcome.html
was also being set to the previous version. As a temporary solution, you can run these three processes separately, as shown in the instructions below.
user@galaxy04$ ssh -A galaxy04.tacc.utexas.edu
user@galaxy04$ . ./ansible/bin/activate
user@galaxy04$ cd usegalaxy-playbook
user@galaxy04$ git checkout main
user@galaxy04$ git pull && git submodule update
user@galaxy04$ ansible-galaxy role install -r requirements.yml # use --force if role versions have changed
user@galaxy04% make main-update
user@galaxy04% make main-static
user@galaxy04$ git diff # verify that none of the mutable configs pulled to the playbook are mangled
user@galaxy04$ git add -- .
user@galaxy04$ git commit -m 'Update Main'
user@galaxy04$ git push
If you're updating to a new Galaxy release make sure all built-in tool dependencies are installed. You can do this using the instructions at https://github.com/galaxyproject/usegalaxy-playbook/wiki/Installation-on-Main#deprecated-manual-installation