/peregrine

GraphQL search API service

Primary LanguagePythonApache License 2.0Apache-2.0

Peregrine

Build Status Coverage Status

Query interface to get insights into data in Gen3 Commons

API Documentation

OpenAPI documentation available here.

YAML file for the OpenAPI documentation is found in the openapi folder (in the root directory); see the README in that folder for more details.

Developer Setup

Run

poetry install
./run.py

Test

python bin/setup_test_database.py --host postgres
mkdir -p tests/resources/keys; cd tests/resources/keys; openssl genrsa -out test_private_key.pem 2048; openssl rsa -in test_private_key.pem -pubout -out test_public_key.pem; cd -

If needed, set environment variables to point to a specific Postgres instance.

export GDC_PG_HOST=postgres
export GDC_PG_USER=postgres
export GDC_PG_PASSWORD=""

Run tests.

poetry run pytest -vv --cov=peregrine --cov-report xml tests

Quickstart with Helm

You can now deploy individual services via Helm! Please refer to the Helm quickstart guide HERE (https://github.com/uc-cdis/peregrine/blob/master/docs/quickstart_helm.md)