Skip to main content

Orchestra SDK for updating self-hosted Tasks.

Project description

Orchestra Python SDK

PyPI

This is a lightweight SDK that allows Orchestra to interact with self-hosted applications (Tasks).

The basic premise is for your self-hosted Task to send back status updates and logs to Orchestra. This is done via HTTP requests. The Task is started by Orchestra.

Guide

Firstly, install the package:

pip install orchestra-sdk

The package requires the following environment variable to be set manually:

  • ORCHESTRA_API_KEY: The API key to connect to Orchestra. This can be found in your settings page.

Orchestra will automatically set the following environment variables when the Task is triggered:

  • ORCHESTRA_WEBHOOK_URL: The URL to send status updates to
  • ORCHESTRA_TASK_RUN_ID: The UUID of the Task being executed
  • ORCHESTRA_PIPELINE_RUN_ID: The UUID of the Pipeline Run that the Task is part of

To use the package in your code:

from orchestra_sdk.decorators import orchestra_run

@orchestra_run
def my_function(arg1, arg2=1):
    print("Running complex process")

Summary

  1. The decorator will firstly read and validate the environment variables
  2. It will send a RUNNING status update to Orchestra
  3. Your function will then run
  4. If an exception is raised, the decorator will send a FAILED status update to Orchestra
  5. If the function finishes without an error being raised, regardless of the return value, the decorator will send a SUCCEEDED status update to Orchestra

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

orchestra_sdk-0.0.13.tar.gz (8.1 kB view hashes)

Uploaded Source

Built Distribution

orchestra_sdk-0.0.13-py3-none-any.whl (7.3 kB view hashes)

Uploaded Python 3

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