Installation#
This workflow execution service backend is written for Python 3.7 and later. Follow the installation instructions to get WfExS running in your system.
Note
In this document there is a small section with gearshift specific installation instructions. If you want to install WfExS on gearshift please first read that part and then proceed to the general installation of WfExS.
Setup WfExS locally in your system#
The initial step for WfExS installation is cloning the Git repository. Assuming you are in the designated installation location, enter the following command:
git clone https://github.com/inab/WfExS-backend.git
Navigate to the installed software folder and execute the full-installer.bash
script.
This is an automated installer for an “easy” setup.
cd WfExS-backend
container_recipes/full-installer.bash
The automated installer handels core dependencies and some supplementary modules, libraries, or tools necessary for the complete functionality of WfExS. It fetches and installs:
Necessary for running Nextflow. |
|
Securing intermediate results. |
|
static |
Needed to patch buggy bash within singularity containers being run by Nextflow. |
static |
Necessray for Nextflow metrics recopilation. |
By default, installation creates and sources a new python virtual environment for WfExS .pyWEenv
,
unless there is an activated one. If so, the installation is done inside the active
virtual environment.
Every time you want to work with WfExS make sure you first activate the python environment.
source "$INSTALLATIONDIR"/WfExS-backend/.pyWEenv/bin/activate
The shell prompt should now start with (.pyWEenv)
.
To test if the installation procedure went well you can try to run the help
command:
python WfExS-backend.py -h
If you get the help of the software you know it works!
Warning
If you upgrade your Python installation (from version 3.8 to 3.9 or later, for instance), or the main folder is moved to a different location after following these instructions, it may be needed to remove and reinstall the virtual environment.
Note
It is possible to make a basic setup installation with the basic-installer.bash
installer.
This installer only handels core dependencies. Users will need to install all the
additional software dependencies.
Development tips#
All the development dependencies are declared at dev-requirements.txt and mypy-requirements.txt.
To install development requistites:
python3 -m venv .pyWEenv
source .pyWEenv/bin/activate
pip install --require-virtualenv --upgrade pip wheel
pip install --require-virtualenv -r requirements.txt -r dev-requirements.txt -r mypy-requirements.txt