SciLifeLab/genologics

Name: genologics

Owner: Science For Life Laboratory

Description: Python interface to the GenoLogics LIMS server via its REST API.

Created: 2012-09-05 13:33:34.0

Updated: 2017-11-01 22:47:45.0

Pushed: 2017-09-26 15:09:27.0

Homepage: null

Size: 1149

Language: Python

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Python interface to the GenoLogics LIMS server via its REST API.

PyPI version

A basic module for interacting with the Illumina Basespace Clarity LIMS server via its REST API. The goal is to provide simple access to the most common entities and their attributes in a reasonably Pythonic fashion.

Supported python versions :

2.6
2.7 (recommended)
3.4
3.5

Design

All instances of Project, Sample, Artifact, etc should be obtained using the get_* methods of the Lims class, which keeps an internal cache of current instances. The idea is to create one and only one instance in a running script for representing an item in the database. If one has more than one instance representing the same item, there is a danger that one of them gets updated and not the others.

An instance of Project, Sample, Artifact, etc, retrieves lazily (i.e. only when required) its XML representation from the database. This is parsed and kept as an ElementTree within the instance. All access to predefined attributes goes via descriptors which read from or modify the ElementTree. This simplifies writing back an updated instance to the database.

Installation
install genologics

or for the cutting edge version:

install https://github.com/SciLifeLab/genologics/tarball/master
Usage

The URL and credentials should be written in a new file in any of those config files (ordered by preference):

E/.genologicsrc, .genologicsrc, genologics.conf, genologics.cfg

or if installed system_wide:

/genologics.conf

ologics]
URI=https://yourlims.example.com:8443
NAME=your_username
WORD=your_password
ging]
_LOG=/home/glsai/your_main_log_file
Example scripts

Usage example scripts are provided in the subdirectory 'examples'.

NOTE: The example files rely on specific entities and configurations on the server, and use base URI, user name and password, so to work for your server, all these must be reviewed and modified.

EPPs

The EPPs in use at Scilifelab can be found in the subdirectory 'scripts' of the repository scilifelab_epps.

Pull requests policy

Pull requests are welcome, and will be tested internally before merging. Be aware that this process might take a fair amount of time.

Known bugs

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.