Skip to content
This repository has been archived by the owner on Jun 20, 2024. It is now read-only.

neicnordic/sda-download

Folders and files

NameName
Last commit message
Last commit date
Feb 14, 2024
Jan 16, 2024
Jul 24, 2023
Jul 24, 2023
Apr 7, 2022
Sep 20, 2023
Sep 20, 2023
Dec 15, 2021
Feb 13, 2024
Nov 15, 2021
Mar 25, 2021
Mar 29, 2023
Aug 29, 2023
Feb 14, 2024
Feb 14, 2024

Repository files navigation

CodeQL Tests Multilinters integration tests codecov

SDA Download

sda-download is a go implementation of the Data Out API. The API Reference has example requests and responses.

Deployment

Recommended provisioning method for production is:

For local development/testing see instructions in dev_utils folder. There is an README file in the dev_utils folder with sections for running the pipeline locally using Docker Compose.

API Components

Component Role
middleware Performs access token verification and validation
sda Constructs the main API endpoints for the NeIC SDA Data Out API.

Internal Components

Component Role
config Package for managing configuration.
database Provides functionalities for using the database, as well as high level functions for working with the SDA-DB.
storage Provides interface for storage areas such as a regular file system (POSIX) or as a S3 object store.
session DatasetCache stores the dataset permissions and information whether this information has already been checked or not. This information can then be used to skip the time-costly authentication middleware

Package Components

Component Role
auth Auth pkg is used by the middleware to parse OIDC Details and extract GA4GH Visas from a GA4GH Passport
request This pkg Stores a HTTP client, so that it doesn't need to be initialised on every request.