Skip to content

ethashamahmed/nf-tower-sdk

Repository files navigation

nf-tower-sdk

Test pre-commit.ci status PythonSupport Code style: black Code linter: pylint security: bandit

Python SDK for Nextflow Tower API. The purpose of this SDK is to provide programmatic access to Tower API endpoints.

What You Get

  1. Client Library for Nextflow Tower API autogenerated using openapi-python-client.
  2. Nextflow Tower client object for interacting with API endpoints.

Project status

Alpha version for this project is under active development.

Setting up local environment

Use Makefile to setup local development environment. Unit tests currently use Seqera's NF Tower community installation instead of mocking the API. This is to enable verification of the API calls through an actual Tower API during initial development. So running tests locally requires this environment variable: NFT_API_TOKEN=<your_api_token_for_nextflow_tower>. See NF Tower docs for how to create your API token.

Example commands for initialising local environment and running tests:

export NFT_API_TOKEN=<your_api_token_for_nextflow_tower>
make init
make test

Use act to run the Github Actions locally.