Skip to main content

saltant SDK for Python

Project description

Build Status Documentation Status PyPI PyPI - Python Version

saltant SDK for Python

NOTE: this project is an active work in progress

This attempts to follow the coding paradigms of docker-py fairly closely.

Example

from __future__ import print_function
import time
from saltant.client import Client
from saltant.constants import (
    SUCCESSFUL,
    FAILED,
)

API_TOKEN = 'p0gch4mp101fy451do9uod1s1x9i4a'
API_BASE_URL = 'https://shahlabjobs.ca/api/'
TASK_INSTANCE_UUID_TO_GET = '4ce0f9f1-9ae3-4baf-8838-76a19758fb29'


# Instantiate a Client object
client = Client(base_api_url=API_BASE_URL, auth_token=API_TOKEN)

# GET a task instance we know the UUID of. This will return an instance
# of the ExecutableTaskInstance model.
my_task_instance = client.executable_task_instances.get(
    uuid=TASK_INSTANCE_UUID_TO_GET)

# List attributes and methods of the task instance we just got.
print(dir(my_task_instance))

# Launch an instance of executable task type 1 :D
new_task_instance = client.executable_task_instances.create(
    name="saltant-py test",
    arguments={
        "tag_name": None,
        "output_dir": "/shahlab/archive/single_cell_indexing/NextSeq/fastq/160705_NS500668_0105_AHGTTWBGXY",
        "flowcell_id": "AHGTTWBGXY",
        "storage_name": "shahlab",
        "storage_directory": "/shahlab/archive"
    },
    task_queue_id=1,
    task_type_id=1,
)

# Wait until task instance completes
while True:
    # Wait a bit
    time.sleep(3)

    # Get job's status
    status = client.executable_task_instances.get(
        uuid=new_task_instance.uuid).state

    if status == SUCCESSFUL:
        print("yay!")
        break
    elif status == FAILED:
        print("noo!")
        break

Installation

Using pip,

pip install saltant-py

Project details


Download files

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

Source Distribution

saltant-py-0.0.14.tar.gz (10.9 kB view details)

Uploaded Source

File details

Details for the file saltant-py-0.0.14.tar.gz.

File metadata

  • Download URL: saltant-py-0.0.14.tar.gz
  • Upload date:
  • Size: 10.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.1 CPython/2.7.15rc1

File hashes

Hashes for saltant-py-0.0.14.tar.gz
Algorithm Hash digest
SHA256 5171e775491c4d75f871d3866c752f5277427a525366064d89ee2d1fe7d9093b
MD5 640e15b250d451124a112055660aa75f
BLAKE2b-256 e86e77235336e7b5dabf93b07f142f68154f8a16a243f00c8cbf184653ff187c

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