Installation

Installing bilby_pipe from release

To install the latest bilby_pipe release from conda-forge, run

$ conda install -c conda-forge bilby_pipe

Note, this is the recommended installation process as it ensures all dependencies are met.

Install bilby_pipe for development

bilby_pipe is developed and tested for Python 3.8, and 3.9. In the following, we demonstrate how to install a development version of bilby_pipe on a LIGO Data Grid (LDG) cluster.

First off, clone the repository

$ git clone git@git.ligo.org:lscsoft/bilby_pipe.git
$ cd bilby_pipe/

Note

If you receive an error message:

git@git.ligo.org: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
fatal: Could not read from remote repository.

Then this indicates you have not correctly authenticated with your git.ligo account. It is recommended to resolve the authentication issue, but you can alternatively use the HTTPS URL: replace the first line above with

$ git clone https://git.ligo.org/lscsoft/bilby.git

Once you have cloned the repository, you need to install the software. How you do this will depend on the python installation you intend to use. Below are several easy-to-use options. Feel free to disregard these should you already have an alternative.

Python installation

conda is a recommended package manager which allows you to manage installation and maintenance of various packages in environments. For help getting started, see the IGWN Conda Distribution documentation.

For detailed help on creating and managing environments see these help pages. Here is an example of creating and activating an environment named bilby

$ conda create -n bilby python=3.9
$ conda activate bilby

Installing bilby_pipe

Once you have a working version of python, you can install bilby_pipe with the command

$ pip install --upgrade git+file://${HOME}/PATH/TO/bilby_pipe

Or, alternatively

$ python setup.py install

The former (using pip) is preferred as it makes it easier to uninstall, but many people use the direct installation method out of habit.

Be careful to check any warning messages about where the code has been installed.

Additionally, if you receive error messages about read-only file systems you can add --user to the installation call. This will install the software in a local directory, usually ~/.local. Be aware that this may not be on your PATH and also, that this will effect all python environments.

Once you have run these steps, you have bilby_pipe installed. However, you will also need to install bilby. Installation instructions can be found here.

Whilst the code is developed, we expect to find many bugs. These can either be in bilby_pipe or in bilby. To debug the problem it is useful to know which version of the code you are using.

To see which version of the code you are using, call

$ bilby_pipe --version

If the output of bilby_pipe --version contains something like

bilby_pipe 0.0.1: (UNCLEAN) 3fd2820 2019-01-01 15:08:26 -0800

rather than

bilby_pipe 0.0.1:

Then you have installed bilby_pipe from source. This information is also printed every time the code is called and therefore will be at the top of your log files.

Dependencies

bilby_pipe handles data from the interferometers using the gwpy library. When requesting data, we first look for local frame-files, then use the NDS2 library to fetch proprietary data remotely, finally we search the open data.

To best utilise this tool, you should ensure your python installation has access to LDAStools-frameCPP for local frame-file lookup and the NDS2 library for proprietary remote data look up. These libraries are typically part of most LIGO data stacks and can be installed with conda using the commands

$ conda install -c conda-forge python-ldas-tools-framecpp
$ conda install -c conda-forge python-nds2-client