usegalaxy-it-tools repository contains scripts to install tools and lists of tools
Pip packages are desribed in requirements.txt
file:
Install them by running:
pip install -r requirements.txt
The Makefile defines several implicit rules that operate on specific file extensions. These implicit rules allow the Makefile to generate new file names by appending suffixes and then trigger corresponding actions on these generated files.
The Makefile assumes the existence of YAML files containing tool definitions, as well as associated lock files (may be generated).
| Target | Description |
| ————– | ————————————————————————————————————————————————————————————————————————————————————— |
| help | Displays a summary of available Makefile targets and their descriptions. |
| lint | Lints the YAML files by performing validation checks and identifying any potential issues in the tool definitions. |
| fix | Attempts to fix any issues found in the YAML files, such as missing hashes, missing lock files, or other inconsistencies. Creates iles with suffix *.yaml.lock
. |
| install | Opreates on files with suffix *.yaml.lock
. Installs the Galaxy tools specified in the YAML files on a Galaxy server. The installation process relies on the Galaxy API key and Galaxy address specified as GALAXY_API_KEY
and GALAXY_SERVER
respectively. |
| update_trusted | Runs the update script on specific YAML files, updating the tools specified in those files (list of tools is defined in the Makefile
in update_trusted
section). |
| update_all | Updates all tools in the specified YAML files. It relies on the scripts/update-tool.py
script. |
Create lockfiles with versions and install tools:
make fix
make install GALAXY_SERVER_URL=<http://...> GALAXY_API_KEY=<...>
Setup
*.yaml
files are manually curated*.yaml.lock
files are generated by make fix
New tools may be added by changing *.yaml
files or creating a new one.
Edit the .yaml.lock
file to add the latest/specific changeset revision for the tool.
Run:
make install
Logs contain the information about installed/updated tools and their revisions. report.log
is generated in the working directory by default.
Nice looking report in Markdown is generated by running
cat report.log | python scripts/generate-report.py >
<path/to/file.md>
If necessary, reports can be stored in a separate repository, usegalaxy.it-tools-reorts in this case. This is managed by Jenkins.