Skip to content

Api GraphQL with CQDG schema following the library ferlab-next

License

Notifications You must be signed in to change notification settings

Ferlab-Ste-Justine/cqdg-wrapper-api

Repository files navigation

CQDG repository logo

cqdg-wrapper-api

This is an GraphQL API application for the CQDG portal, using ferlab-next library, with an integration with Keycloak for authentication.

Arranger server is an application that wraps Elasticsearch and provides a GraphQL search API for consumption by the CQDG Portal UI.

Development

  • Edit start.sh
  • Execute: sh start.sh

Test build and Start

  • Execute: npm run build then npm run start

General

  • Make sure that all the needed env vars point to where they should.

  • When adding a new env var, update the .env.example. Otherwise, an error will be thrown.

  • Installing dependencies: npm install.

Test

  • Execute: npm run test

Development Setup with Docker

Before going further, make sure that docker and docker-compose are installed on your system.

# 1. clone the repository
  git clone https://github.com/Ferlab-Ste-Justine/cqdg-wrapper-api

# 2. enter the project's folder
  cd cqdg-wrapper-api

# 3. create an .env file (you may have to adjust the template to your needs)
  touch .env

# 4 in a terminal, run docker-compose from project's docker-compose file. 
  docker-compose --profile <target profile> up # for admin service

# 5 to clean up afterwards once your are done developing.
  docker-compose --profile  <target profile> down

Note: you can activate multiple profiles at once: docker-compose --profile a --profile b ... up

⚠️ With this setup, your host and the app's container share the project directory/volume.

About

Api GraphQL with CQDG schema following the library ferlab-next

Resources

License

Stars

Watchers

Forks

Packages

No packages published