Skip to content

quiltdata/benchling-packager

Repository files navigation

benchling-packager

This repository generates a CloudFormation template for processing Benchling events in order create (and link, if possible) a Quilt package for every Benchling notebook.

The code in this repository is open source under the Apache 2.0 license.

Template generation

Requires a recent version of Python 3.

python3 -m venv venv
. ./venv/bin/activate
python3 -m pip install -r requirements.txt
python3 make.py > build/benchling_packager.yaml

Template upload

Installation

To install and configure the template, see Install.md. Note: this is the file that's distributed as README.md in the package.

Testing for Developers

If you want to modify the actual lambda function, you can run automated tests via:

make test

In order to run these tests, you'll need to set the following environment variables (usually in the .env file, which is auto-included by the Makefile):

  • BENCHLING_TENANT: the part before ".benchling.com" in your Benchling URL (e.g. "mycompany" for "mycompany.benchling.com")
  • BENCHLING_CLIENT_ID: the client ID for the Benchling API`
  • BENCHLING_CLIENT_SECRET_ARN: the ARN of the AWS Secrets Manager secret containing the client secret for the Benchling API
  • DST_BUCKET: the name of the S3 bucket (no prefix) where the generated packages should be stored
  • PKG_PREFIX: the prefix to use for the generated packages, with a trailing "/" (e.g. "benchling/" to store packages in the "benchling" directory)
  • QUILT_CATALOG_DOMAIN: the domain name of your Quilt catalog (if any) where the generated packages can be viewed

About

Example of Benchling integration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published