Skip to content

Installation on Main

Nate Coraor edited this page Jul 24, 2017 · 32 revisions

Before you begin see Getting Set Up At TACC

Run the installer

Make sure nobody is running a docker container before restarting the service (e.g. with docker ps)...

$ ssh g2main@cvmfs0-tacc0.galaxyproject.org
$ cvmfs_server transaction main.galaxyproject.org
$ systemctl restart docker.service
$ docker run --rm -v /cvmfs:/cvmfs -p 127.0.0.1:8818:8888 galaxy/main_installer

Install Tools

Go to https://main-installer.galaxyproject.org/ and install tools as normal.

Custodial tasks

Conda can install things with less-than-world-readable permissions, which will cause the Galaxy user to be unable to read them, since the CVMFS client mounts everything as the cvmfs user. You can fix this with:

^C (to stop Galaxy)
$ find /cvmfs/main.galaxyproject.org/deps/_conda/pkgs /cvmfs/main.galaxyproject.org/deps/_conda/envs -perm -u+r -not -perm -o+r -not -type l -print0 | xargs -0 chmod o+r
$ find /cvmfs/main.galaxyproject.org/deps/_conda/pkgs /cvmfs/main.galaxyproject.org/deps/_conda/envs -perm -u+rx -not -perm -o+rx -not -type l -print0 | xargs -0 chmod o+rx

Next, clean downloaded tarballs with:

$ /cvmfs/main.galaxyproject.org/deps/_conda/bin/conda clean --tarballs

Finalize CVMFS transaction

Get the latest tag and append .N to the tag name, e.g. if latest tag is galaxy_16.04.04863c8, the new tag should be galaxy_16.04.04863c8.1, followed by galaxy_16.04.04863c8.2, etc.

$ cvmfs_server tag main.galaxyproject.org
$ cvmfs_server publish -a galaxy_16.04.04863c8.1 -m 'Installed/Updated Foo Tool' main.galaxyproject.org
$ logout

Determine tool requirements

If the tool wrapper uses $GALAXY_SLOTS, edit env/main/templates/galaxy/config/job_conf.xml.j2 and add an entry for the tool to run on the multi partition, e.g. (copy from from other multi tools):

    <tools>
        ...
        <!-- multi/stampede jobs -->
        ...
        <tool id="SHORT_TOOL_ID" destination="dynamic_local_stampede_select_dynamic_walltime" handler="multi_handlers"  resources="local_or_stampede"/>
    </tools>

Update CVMFS stratum 1 servers, local caches, and restart Galaxy

See the Getting Set Up At TACC page for the ansible-env function.

If a job_conf.xml change was not made, run:

$ ansible-env main snapshot

If a job_conf.xml change was made, run:

$ ansible-env main snapshot --tags=no-restart
$ ansible-env main config
Clone this wiki locally