Skip to main content

Tool to submit genomics pipeline outputs to the ENCODE Portal

Project description

Code Style: Black License: MIT CircleCI status

accession is a Python module and command line tool for submitting genomics pipeline analysis output files and metadata to the ENCODE Portal.

Installation

Note: intallation requires Python >= 3.6

$ pip install accession

Next, provide your API keys from the ENCODE portal:

$ export DCC_API_KEY=XXXXXXXX
$ export DCC_SECRET_KEY=yyyyyyyyyyy

You will also need to authenticate with Google Cloud if using WDL metadata from pipeline runs on Google Cloud. Run the following two commands and follow the prompts:

$ gcloud auth login --no-launch-browser
$ gcloud auth application-default login --no-launch-browser
In addition, it is highly recommended to set the DCC_LAB and DCC_AWARD environment variables for ease of use. These correspond to the lab and award identifiers given by the ENCODE portal, e.g. /labs/foo/ and U00HG123456, respectively.
$ export DCC_LAB=XXXXXXXX
$ export DCC_AWARD=yyyyyyyyyyy
If you would like to be able to pass Caper workflow IDs or labels you will need to configure access to the Caper server. If you are invoking accession from a machine where you already have a Caper set up, and you have the Caper configuration file available at ~/.caper/default.conf, then there is no extra setup required. If the Caper server is on another machine, you will need so configure HTTP access to it by setting the hostname and port values in the Caper conf file.
(Optional) Finally, to enable using Cloud Tasks to upload files from Google Cloud Storage to AWS S3, set the following two environment variables. If one or more of them is not set, then files will be uploaded using the same machine that the accessioning code is run from. For more information on how to set up Cloud Tasks and the upload service, see the docs for the gcs-s3-transfer-service
$ export ACCESSION_CLOUD_TASKS_QUEUE_NAME=my-queue
$ export ACCESSION_CLOUD_TASKS_QUEUE_REGION=us-west1

Usage

$ accession -m metadata.json \
            -p mirna \
            -s dev

Please see the docs for greater detail on these input parameters.

Deploying on Google Cloud

First authenticate with Google Cloud via gcloud auth login if needed. Then install the API client with pip install google-api-python-client, it is recommended to do this inside of a venv. Finally, create the firewall rule and deploy the instance by running python deploy.py –project $PROJECT. This will also install the accession package. Finally, SSH onto the new instance and run gcloud auth login to authenticate on the instance.
For Caper integration, once the instance is up, SSH onto it and create the Caper conf file at ~/.caper/default.conf, use the private IP of the Caper VM instance as the hostname and use 8000 for the port. For the connection to work the Caper VM will need to have the tag caper-server. Also note that the deployment assumes the Cromwell server port is set to 8000.

Project Information

accession is released under the MIT license, documentation lives in readthedocs, code is hosted on github and the releases on PyPI.

Project details


Release history Release notifications | RSS feed

This version

2.2.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

accession-2.2.2.tar.gz (63.8 kB view details)

Uploaded Source

Built Distribution

accession-2.2.2-py3-none-any.whl (84.5 kB view details)

Uploaded Python 3

File details

Details for the file accession-2.2.2.tar.gz.

File metadata

  • Download URL: accession-2.2.2.tar.gz
  • Upload date:
  • Size: 63.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.10

File hashes

Hashes for accession-2.2.2.tar.gz
Algorithm Hash digest
SHA256 a7a411b997d73a52a78a6f44f6c76f10aa4a589eef9ba258fa1a4362cef0c02f
MD5 45f17e2ebae80f4830c626fef11d3e81
BLAKE2b-256 ff9dbe39237458c9171f7db14a87a86daf027b9a0396a5904b941628c6ced37b

See more details on using hashes here.

File details

Details for the file accession-2.2.2-py3-none-any.whl.

File metadata

  • Download URL: accession-2.2.2-py3-none-any.whl
  • Upload date:
  • Size: 84.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.10

File hashes

Hashes for accession-2.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 96f2f17e45b5843022c00fa8c209bd61475e8ae15bc34c8346225bd642f6f98b
MD5 662193eff26147a28b6c6f51186edb28
BLAKE2b-256 d66f7b578017dc139a5fe5319f3ec1f54d3978c1c519624dc24c1091ef97daed

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page