Install Planemo¶
python -m venv planemo
. planemo/bin/activate
pip install planemo
Initialize chap.xml¶
planemo tool_init --id 'chap' --name 'CHESS Analysis Pipeline' --example_command 'runner.py --config config.yaml' --example_input config.yaml --cite_url 'https://github.com/CHESSComputing/ChessAnalysisPipeline' --help_from_command 'runner.py --help' --test_case --example_output data.out
this command will output:
Tool written to chap.xml
No test-data directory, creating one.
Copying test-file config.yaml
Perform linting:
planemo l
Linting tool /Users/vk/Work/CHESS/ChessPipeline/chap.xml
Applying linter tests... CHECK
.. CHECK: 1 test(s) found.
Applying linter output... CHECK
.. INFO: 1 outputs found.
Applying linter inputs... CHECK
.. INFO: Found 2 input parameters.
Applying linter help... CHECK
.. CHECK: Tool contains help section.
.. CHECK: Help contains valid reStructuredText.
Applying linter general... CHECK
.. CHECK: Tool defines a version [0.1.0+galaxy0].
.. CHECK: Tool defines a name [CHESS Analysis Pipeline].
.. CHECK: Tool defines an id [chap].
.. CHECK: Tool specifies profile version [21.05].
Applying linter command... CHECK
.. INFO: Tool contains a command.
Applying linter citations... CHECK
.. CHECK: Found 1 likely valid citations.
Applying linter tool_xsd... CHECK
.. INFO: File validates against XML schema.
Now, we can start server via the following commad: planemo s
,
it will take a while. Once finished we may visit
http://127.0.0.1:9090
to see our galaxy hub along with
our pipeline tool.
Run galaxy¶
The galaxy framework can be run in two different ways:
either via
planemo s
command, orby cloning galaxy repository and run
run.sh
script
run galaxy via planemo¶
planemo
provides an easy wasy to run galaxy via planemo s
(start the
server) command. But when you invoke this command it will fetch all
necessary dependencies for galaxy and this process will take 1/2 hour.
Unfortunately, this process does not cache dependencies, and it will be
repeated upon next call.
Therefore, we recommend to run galaxy natively.
run galaxy natively¶
To run galaxy natively you must clone its repository:
git clone https://github.com/galaxyproject/galaxy.git
After that, just run run.sh
and it will setup python virtual environment
in $PWD/.venv
, fetch and build all dependencies. This is one time process
and after next call the galaxy server will start quickly.
Upon successfull start you will see the following:
Serving on http://127.0.0.1:8080
and can visit this URL to access your galaxy server.
Use conda for galaxy¶
The galaxy by default relies on python virtual env and will install it in
.venv
area. But it also supports conda
environment. To use it you need:
install anaconda
source anaconda env
start galaexy as
run.sh --no-create-venv
orrun.sh --skip-venv
The one big advantage of using conda
is that it will allow
packages to install requirements if they are specified in shed xml file.
Adding tool manually to galaxy¶
perform local install of galaxy via
git clone clone https://github.com/galaxyproject/galaxy.git
create your new area within tools
cd tools
mkdir chess
cd chess
copy your files to your tools area, e.g.
cp chap.xml data.csv img.png ~/Work/CHESS/GIT/galaxy/tools/chess
adjust your galaxy
config/tool_conf.xml.sample
orconfig/tool_conf.xml
file with your new tool info, e.g.
<section name="CHESS" id="chess">
<tool file="chess/chap.xml" />
</section>
start galaxy via
run.sh
For more info see this page