This repository contains scripts intended to be run in Openshift environment. The subdirectories can be directly loaded into containers via webhooks or build as images using s2i - source to image.
The contents of the subdirectories are briefly described below, and in more detail inside the respective subdirectories.
APIs can be explored as OpenAPI 3.0 specification in: Swagger Editor
- beacon_search - Prototype suggestion API to find relevant variants related to diseases and genes;
- beacon_aggregator - Master Beacon API endpoint that queries known beacons and combines the results into a single response;
- beacon_auth - ELIXIR AAI client API for storing access token to be used in beacon-aggregator;
For testing purposes we provide: beacon_mockup (a mockup Beacon APIs used in testing software operability). We recommend the use of Beacon 1.0 Web Server that implements the Beacon 1.0 Specification.
- beacon-ui - User interface for looking up disease-gene-variant relations and creating variant calls to beacons. Is powered by the APIs listed above.
Following the instructions from Creating an Application using the Web Console:
- Create a new vanilla python image from the catalogue.
- On advanced options set git repository URL and select proper subdirectory for context dir.
- Click on create to pull source to image, container is automatically built and set up.
You can also build the containers manually with using Creating an Application From Source Code.
Environment variables can be set with s2i on creation (refer to the documentation).
e.g. Create container for beacon-mockup
s2i build git@github.com:CSCfi/beacon-openshift.git \
--context-dir=beacon_mockup \
centos/python-35-centos7 \
beacon_mockup
Run the created container:
docker run -p 8080:8080 beacon_mockup
Similar steps can be followed for beacon-aggregator
(requires centos/python-36-centos7
base image), beacon_search
, beacon_auth
and beacon-ui
(requires centos/httpd-24-centos7
).
You can run tests manually with:
pytest
Or run automatically (builds test environment, runs tests, checks flake8).
tox
- ELIXIR Beacon implementation study
- GA4GH Beacon project
- Beacon 1.0 Specification
- Beacon 1.0 Web Server - implementing the Beacon 1.0 specification