Skip to main content

Digital.ai Release SDK

Project description

Digital.ai Release Python SDK

The Digital.ai Release Python SDK (digitalai-release-sdk) provides a set of tools for developers to create container-based integration with Digital.ai Release. It simplifies integration creation by offering built-in functions to interact with the execution environment.

Features

  • Define custom tasks using the BaseTask abstract class.
  • Subclass ApiBaseTask to access the Release APIs (releaseApi, phaseApi, taskApi, ...) through a ready-to-use client.
  • Easily manage input and output properties.
  • Interact with the Digital.ai Release environment seamlessly.

Installation

Install the SDK using pip:

pip install digitalai-release-sdk

Note: The SDK depends on digitalai-release-api-client, which is installed automatically.

Getting Started

Example Task: hello.py

The following example demonstrates how to create a simple task using the SDK:

from digitalai.release.integration import BaseTask

class Hello(BaseTask):
    
    def execute(self) -> None:
        # Get the name from the input
        name = self.input_properties.get('yourName')
        if not name:
            raise ValueError("The 'yourName' field cannot be empty")

        # Create greeting message
        greeting = f"Hello {name}"

        # Add greeting to the task's comment section in the UI
        self.add_comment(greeting)

        # Store greeting as an output property
        self.set_output_property('greeting', greeting)

Example Task using the Release API: ApiBaseTask

Subclass ApiBaseTask to call the Release v1 REST API without building a client yourself. Every API is exposed as a lazily created, cached property, all sharing a single client built from the task's "Run as user" context:

from digitalai.release.integration.api_base_task import ApiBaseTask


class ShowVersion(ApiBaseTask):

    def execute(self) -> None:
        release = self.releaseApi.getRelease(self.get_release_id())
        self.add_comment(f"Working on {release.title}")

🔗 Related Resources

Changelog

Version 26.3.0 (Beta)

🚀 Features

  • Added the ApiBaseTask base class, exposing every Release v1 API as a lazily created, cached property.
  • get_release_api_client() now supports optional credentials/server URL and requests library arguments.
  • Added get_phase_id() and get_folder_id() helper methods to BaseTask.

🛠️ Enhancements

  • Improved stability and error handling for API requests and Kubernetes tasks.

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

digitalai_release_sdk-26.3.0b6.tar.gz (20.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

digitalai_release_sdk-26.3.0b6-py3-none-any.whl (25.8 kB view details)

Uploaded Python 3

File details

Details for the file digitalai_release_sdk-26.3.0b6.tar.gz.

File metadata

File hashes

Hashes for digitalai_release_sdk-26.3.0b6.tar.gz
Algorithm Hash digest
SHA256 fdd0a52e0cd455ae3b1612ac54c5e8c2fba4e4000027a08d7b117e0d5967ded7
MD5 5ac3b7734055087403943329bd9045fa
BLAKE2b-256 180ec9aab7af3e55f4b5061d851d7eab4fd8f56310bfa14824336d38e66c8985

See more details on using hashes here.

File details

Details for the file digitalai_release_sdk-26.3.0b6-py3-none-any.whl.

File metadata

File hashes

Hashes for digitalai_release_sdk-26.3.0b6-py3-none-any.whl
Algorithm Hash digest
SHA256 ca45300a39174b432cf4adccdcf33f0febdee584e769e7899155863ffbab51ab
MD5 d4612244e058608442b971b0eb44801a
BLAKE2b-256 179ffaaab07fac8368a2f0256cc7c44ee065adff4dc9fc8688e3bfa40c31dad9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page