This repo is no longer under active development.
Based on CanDIG demo projects: OpenAPI variant service demo, Python Model Service. This is a Proof-of-Concept implementation of the GA4GH rnaget API, used to query and download RNA quantification matrix data.
For more information about the schemas used visit https://github.com/ga4gh-rnaseq/schema
- Connexion for implementing the API
- SQLAlchemy, using Sqlite3 for ORM
- Bravado-core for Python classes from the spec
- Dredd and Dredd-Hooks-Python for testing
- HDF5 for matrix store & operations
- Python 3
- Pytest, tox
- Travis-CI
The server software can be installed in a py3.6+ virtual environment:
pip install -r requirements.txt
pip install -r requirements_dev.txt
python setup.py develop
for automated testing you can install dredd; assuming you already have node and npm installed,
npm install -g dredd
Once running, a Swagger UI can be accessed at: /rnaget/ui
To specify your own database & log output, the server can be started with:
candig_rnaget --host=0.0.0.0 --port=3005 --database=data/test.db --logfile=/path/to/logs --loglevel=WARN
For testing, the dredd config is currently set up to launch the service itself, so no server needs be running:
cd tests
dredd --hookfiles=dreddhooks.py