https://github.com/elixir-cloud-aai/drs-filer
Lightweight, flexible Flask/Gunicorn-based GA4GH DRS implementation
https://github.com/elixir-cloud-aai/drs-filer
hacktoberfest
Last synced: about 1 year ago
JSON representation
Lightweight, flexible Flask/Gunicorn-based GA4GH DRS implementation
- Host: GitHub
- URL: https://github.com/elixir-cloud-aai/drs-filer
- Owner: elixir-cloud-aai
- License: apache-2.0
- Created: 2020-05-20T10:58:22.000Z (about 6 years ago)
- Default Branch: dev
- Last Pushed: 2025-03-22T03:26:54.000Z (about 1 year ago)
- Last Synced: 2025-03-31T23:36:10.721Z (about 1 year ago)
- Topics: hacktoberfest
- Language: Python
- Homepage:
- Size: 104 KB
- Stars: 6
- Watchers: 27
- Forks: 9
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DRS-filer
[![License][badge-license]][badge-url-license]
[![Build_status][badge-build-status]][badge-url-build-status]
[![Coverage][badge-coverage]][badge-url-coverage]
## Synopsis
Microservice implementing the [Global Alliance for Genomics and
Health][org-ga4gh] (GA4GH) [Data Repository Service][res-ga4gh-drs] (DRS)
API specification.
## Description
## Usage
Once [deployed](#installation), the API is served here:
```console
http://localhost:8080/ga4gh/drs/v1/
```
> Note that host (`localhost`) and port (`8080`) in the URL above may differ,
> depending on how the service was deployed. Indicated values are for
> `docker-compose`-based installations using the default
> [configuration][drs-filer-compose-config].
The easiest way to explore available endpoints is via the
[Swagger UI][res-swagger-ui]:
```console
http://localhost:8080/ga4gh/drs/v1/ui
```
## Installation
To quickly install the service for development/testing purposes, we recommend
deployment via [`docker-compose`][res-docker-compose], as described below. For
more durable deployments on cloud native infrastructure, we also provide a
[Helm][res-helm] chart and [basic deployment instructions][drs-filer-
deployment] (details may need to be adapted for your specific infrastructure).
### Requirements
The following software needs to be available on your system:
- [`git`][res-git] `v2.17.1`
- [`docker`][res-docker] `v18.09.6`
- [`docker-compose`][res-docker-compose] `v1.23.1`
> Indicated versions were used during development. Other versions may work as
> well, especially newer ones.
### Deployment
First, clone the repository and traverse into the service's root directory
with:
```bash
git clone git@github.com:elixir-cloud-aai/drs-filer.git
cd drs-filer
```
Then simply start up the service with:
```bash
docker-compose up --build -d
```
_**That's it!**_
You should now be able to use/explore the API as described in the [usage
section](#usage).
### Other useful commands
To shut down the service, run:
```bash
docker-compose down
```
If you need to inspect the logs, call:
```bash
docker-compose logs
```
## Contributing
This project is a community effort and lives off your contributions, be it in
the form of bug reports, feature requests, discussions, or fixes and other code
changes. Please refer to our organization's [contributing
guidelines][res-elixir-cloud-contributing] if you are interested to contribute.
Please mind the [code of conduct][res-elixir-cloud-coc] for all interactions
with the community.
## Versioning
The project adopts the [semantic versioning][res-semver] scheme for versioning.
Currently the service is in beta stage, so the API may change without further
notice.
## License
This project is covered by the [Apache License 2.0][license-apache] also
[shipped with this repository][license].
## Contact
The project is a collaborative effort under the umbrella of [ELIXIR Cloud &
AAI][org-elixir-cloud]. Follow the link to get in touch with us via chat or
email. Please mention the name of this service for any inquiry, proposal,
question etc.
[badge-build-status]:
[badge-coverage]:
[badge-github-tag]:
[badge-license]:
[badge-url-build-status]:
[badge-url-coverage]:
[badge-url-github-tag]:
[badge-url-license]:
[license]: LICENSE
[license-apache]:
[org-elixir-cloud]:
[org-ga4gh]:
[res-elixir-cloud-coc]:
[res-elixir-cloud-contributing]:
[res-semver]:
[res-ga4gh-drs]: https://github.com/ga4gh/data-repository-service-schemas