appyter.execspec.implementations package

Submodules

appyter.execspec.implementations.cavatica module

class appyter.execspec.implementations.cavatica.CavaticaExecutor(url=None, project=None, auth_token=None, api_endpoint='https://cavatica-api.sbgenomics.com', wes_endpoint='wes://cavatica-ga4gh-api.sbgenomics.com', drs_endpoint='drs://cavatica-ga4gh-api.sbgenomics.com', params={}, headers={}, **kwargs)[source]

Bases: appyter.execspec.implementations.wes.WESExecutor

Run executions in CAVATICA cavatica?project=myuser/myproject&auth_token=MYKEY&cwl=example.cwl

protocol = 'cavatica'

appyter.execspec.implementations.dispatch module

class appyter.execspec.implementations.dispatch.DispatchExecutor(url=None, **kwargs)[source]

Bases: appyter.execspec.spec.AbstractExecutor

Submit executions to be run by an appyter orchestration dispatcher

This executor only supports submit and not wait_for/run as it submits jobs to a queue which manages the execution.

usage: dispatch::http://appyter-orchestrator:5000?params.executor=docker::maayanlab/appyter-example:latest

protocol = 'dispatch'

appyter.execspec.implementations.docker module

class appyter.execspec.implementations.docker.DockerExecutor(url=None, **kwargs)[source]

Bases: appyter.execspec.spec.AbstractExecutor

Run executions in a docker job Example uri: docker::maayanlab/myimage:latest?flags.v=/mydatadir:/data&args.data-dir=/data

protocol = 'docker'

appyter.execspec.implementations.kube module

class appyter.execspec.implementations.kube.KubernetesExecutor(url=None, **kwargs)[source]

Bases: appyter.execspec.spec.AbstractExecutor

Run executions as kubernetes jobs Example uri: kube::maayanlab/myimage:latest?namespace=default

protocol = 'kube'
async submit(job, namespace='default')
async wait_for(run_id, namespace='default', debug=False)
appyter.execspec.implementations.kube.endless_watch(*args, **kwargs)[source]

appyter.execspec.implementations.local module

class appyter.execspec.implementations.local.LocalExecutor(url=None, **kwargs)[source]

Bases: appyter.execspec.spec.AbstractExecutor

Run executions with the same process

Not ideal in most circumstances:

  • it can leak errors to the notebook

  • internal state can get messed with

protocol = 'local'

appyter.execspec.implementations.subprocess module

class appyter.execspec.implementations.subprocess.SubprocessExecutor(url=None, **kwargs)[source]

Bases: appyter.execspec.spec.AbstractExecutor

Run executions in a subprocess

protocol = 'subprocess'

appyter.execspec.implementations.wes module

class appyter.execspec.implementations.wes.WESExecutor(url=None, config={}, **kwargs)[source]

Bases: appyter.execspec.spec.AbstractExecutor

Run executions via a workflow execution service endpoint

protocol = 'wes'

Module contents