accession
is a Python module and command line tool for submitting genomics pipeline analysis output files and metadata to the ENCODE Portal.
Note: installation requires Python >= 3.8
$ pip install accession
Next, provide your API keys from the ENCODE portal:
$ export DCC_API_KEY=XXXXXXXX
$ export DCC_SECRET_KEY=yyyyyyyyyyy
/labs/foo/
and U00HG123456
, respectively.$ export DCC_LAB=XXXXXXXX
$ export DCC_AWARD=yyyyyyyyyyy
$ gcloud auth login --no-launch-browser
$ gcloud auth application-default login --no-launch-browser
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.$ export ACCESSION_CLOUD_TASKS_QUEUE_NAME=my-queue
$ export ACCESSION_CLOUD_TASKS_QUEUE_REGION=us-west1
$ accession -m metadata.json \
-p mirna \
-s dev
Please see the docs for greater detail on these input parameters.
To enable S3 to S3 copy from the pipeline buckets to the ENCODE buckets, ensure that the pipeline bucket policy grants read access to the ENCODE account. Here is an example policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DelegateS3AccessGet",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::618537831167:root",
"arn:aws:iam::159877419961:root"
]
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::PIPELINE-BUCKET/*"
},
{
"Sid": "DelegateS3AccessList",
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::618537831167:root",
"arn:aws:iam::159877419961:root"
]
},
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::PIPELINE-BUCKET"
}
]
}
accession
is released under the MIT license, documentation lives in readthedocs, code is hosted on github and the releases on PyPI.