Install Genomics DB Infrastructure using Ansible - GenomicsDB/GenomicsSampleAPIs GitHub Wiki

Ansible Playbook Description

The Ansible playbook - genomicsdb will setup the following

  1. Users and Group for genomics db
    The playbook provides the option of setting up
    1. Owner User - who will have all the privileges to the directories, data and the postgresql DB
    2. Client User - who will have read-only access to the directories, data and the postgresql DB
  2. Directories for data and repos
  3. Pulls the git repos
  4. Compiles the search_library
  5. Creates the postgresql database with the right permissions/privileges, and creates the tables
  6. Creates the python virtual environment, and installs all the relevant packages under requirements.txt
  7. Updates the bashrc of the genomics db users with the environment variables required for genomics db

The variables listed below can be overridden (if necessary). The defaults can be found in defaults/main.yml under the genomicsdb role.

Name Description
meta_db_name Name of the postgresql database for the Meta database in genomics db
metadb_adapter postgresql+psycopg2 is required by the current implementation.
metadb_uri URI where the Postgresql database is available
group_name Group name for the ga4gh users
client_user_name User name for the client user
owner_user_name User name for the owner user
permissions Permissions to apply
genomicsdb_dir This is the base path where the repos and workspace directories are created.
workspace_name Name of the workspace where Tile DB data will be stored
ssh_proxy In some network configurations, ssh to github may require say a ProxyCommand. If it is applicable to your network, this variable is used.
user_libs This is a array variable that defines the list of additional packages that needs to be installed. This is intended to be used in conjunction with ssh_proxy. Say if ProxyCommnad uses ncat, user_libs can be used to request installation of nmap package
mpi_path Path to where the openmpi package is installed.
mpi_runner Path to where the mpirun executable is located. This differs by default for various operating systems.
is_clean_compile true/false that determines if make clean will be run or not before running make
store_branch Branch of store repo to compile on
library_build can be release or debug to compile GenomicsDB
uwsgi_socket_path Path where the unix sockets are created for communication between the nginx and uwsgi services
system_services_extension string to be used for the service extension. E.g. on RedHat family of system "service" is used