ga4gh / fasp-scripts

Apache License 2.0
11 stars 7 forks source link

fasp-scripts

Notebooks and clients for GA4GH Federated Analysis Systems Project

[TOC]


**Prerequisites


**Clients provided in FASP Package

Search clients

DataConnectClient

Wrapper to call GA4GH Data Connect Servers and return results of a queries.

BigQuerySearchClient

Perform searches via BigQuery


DRS and 'DRS-like' clients

DRSClient.py

Superclass for DRS Clients

Gen3DRSClient.py

This is a python wrapper for the two DRS functions. It also handles Gen3 authentication using Fence. This is necessary until RAS/Passport support is in place.

There are two clients for specific Gen3 DRS servers

SBDRSClient.py

A DRS client for Seven Bridges DRS services. Handles SB specific authentication. Two specific classes are provided.

sdlDRSClient.py

A DRS-like wrapper around the SRA Data Locator. Uses standard dbGaP/SRA authentication (.ngc file)


WES clients

DNAStackWESClient.py

Wrapper to make a WES call. Currently does an MD5 checksum and the plenary GWAS workflow. The plan is to use samtools and eventually a GWAS workflow.

sb_wes_client.py

Client to call Seven Bridges WES Servers. The specific features addressed include authentication, setting a project to work within and the use of apps stored in the Seven Bridges environment. For testing and demo purposes this client encapsulates running samtools.

elixir_wes_client.py

Client to call Elixir WES Servers. The specific features addressed include authentication, setting a project to work within and the use of apps stored in the Seven Bridges environment. For testing and demo purposes this client encapsulates running samtools.

WESClient.py

Superclass for WES clients. Has generic capability to run WES requiring full configuration of the request body and possibly knowledge of the specific WES server being called.

Other Workflow clients

These provide a WES like binding to proprietary APIs so that capabilities can be explored where no WES implentation so far exists.

GCPLSsamtools.py

Wrapper to prepare a job to run samtools as a GCP Life Sciences pipeline.

Requires: Google Life Sciences API installed and configured for your GCP account

SBsamtools.py

Submits a samtools stats task via Seven Bridges API. By preference should now use the SB WES Client

Requires: Seven Bridges API Python client installed and configured for your GCP account


Workflow support

checksum.wdl - a simple workflow for testing WES submission - calculates a checksum

More to be added

Other demos and tests

testSearchPagination.py - demonstrates how Discovery Seach query results are returned over several pages

examples - examples of using individual APIs used in the main examples