Command-line utilities to help with managing users, data libraries and tools in a Galaxy instance, using the Galaxy API via the Bioblend library.
- Free software: Academic Free License version 3.0
- Documentation: https://nebulizer.readthedocs.io
- Code: https://github.com/pjbriggs/nebulizer
Note
Nebulizer is still a work in progress.
Please exercise caution when attempting irreversible operations, especially against production Galaxy instances (for example when creating users or data libraries).
This quick start gives some examples of using nebulizer
commands
to perform remote administration tasks on a Galaxy instance from the
command line.
It is recommended to install Nebulizer via pip
in a virtualenv,
for example:
% virtualenv .venv % source .venv/bin/activate % pip install nebulizer
This will provide an executable called nebulizer
with a number
of subcommands for performing different tasks remotely on Galaxy
instances.
Generally Nebulizer commands take the form:
nebulizer COMMAND GALAXY [OPTIONS]
To interact remotely with a Galaxy instance using Nebulizer requires at minimum the URL of the instance and then either an API key or a user login name.
For example to list the data libraries available on Galaxy Main:
nebulizer -k 9b376af2250818d14949b3c list_libraries https://usegalaxy.org
or
nebulizer -u USER@DOMAIN list_libraries https://usegalaxy.org
In this second case Nebulizer will prompt for the Galaxy
password to authenticate the user login, unless it's supplied via
the -P
option.
To store the Galaxy URL-API key pair against an alias main
, to
avoid needing full authentication details each time:
nebulizer add_key main https://usegalaxy.org 9b376af2250818d14949b3c
or alternatively get Nebulizer to fetch the API key itself by supplying the user login:
nebulizer -u USER@DOMAIN add_key main https://usegalaxy.org
More information on managing API keys in Nebulizer can found here.
The stored alias is then used in subsequent commands, for example to list the data libraries again it is now sufficient to do just:
nebulizer list_libraries main
The following sections contain examples of how Nebulizer might be used to perform various administrive tasks.
Nebulizer provides subcommands to perform various administrive tasks:
list_users
create_user
create_batch_users
create_users_from_file
delete_user
list_libraries
create_library
create_library_folder
add_library_datasets
list_tools
list_tool_panel
install_tool
update_tool
uninstall_tool
search_toolshed
quotas
quota_add
quota_mod
quota_del
ping
(check if a Galaxy instance is alive)config
(fetch configuration for a Galaxy instance)
See the tutorial for a walkthrough some of these commands.
Nebulizer has been developed by Peter Briggs @pjbriggs, with contributions from:
- Hugo van Kemenade (@hugovk)
Thanks to Peter van Heuseden (@pvanheus) for porting Nebulizer into Bioconda.