Open Job Description - Adaptor Runtime Library

This package provides a runtime library to help build application interfaces that simplify
Open Job Description job templates. When implemented by a third party on behalf of
an application, the result is a CLI command that acts as an adaptor. Application
developers can also implement support for these CLI patterns directly in their
applications, potentially using this library to simplify the work.
Interface features that this library can assist with include:
- Run as a background daemon to amortize application startup and scene load time.
- Tasks run in the context of Open Job Description Sessions, and this pattern lets a
scheduling engine sequentially dispatch tasks to a single process that retains the
application, loaded scene, and any acceleration data structures in memory.
- Report progress and status messages.
- Applications write progress information and status messages in many different ways.
An adaptor can scan the output of an application and report it in the format specified
for Open Job Description Stdout Messages.
- Map file system paths in input data.
- When running tasks on a different operating system, or when files are located at
different locations compared to where they were at creation, an adaptor can take
path mapping rules and perform Open Job Description Path Mapping.
- Transform signals like cancelation requests from the Open Job Description runtime into
the signal needed by the application.
- Applications may require different mechanisms to receive these messages, an adaptor
can handle any differences with what Open Job Description provides to give full
feature support.
- Adjust application default behaviors for batch processing.
- When running applications that were built for interactive use within a batch processing
system, some default behaviors may lead to unreliability of workload completion, such
as using watermarks when a license could not be acquired or returning a success exit
code when an input data file could not be read. The adaptor can monitor and detect
these cases.
Read the Library Documentation to learn more.
This library requires:
- Python 3.9 or higher; and
- Linux, MacOS, or Windows operating system.
This package's version follows Semantic Versioning 2.0, but is still considered to be in its
initial development, thus backwards incompatible versions are denoted by minor version bumps. To help illustrate how
versions will increment during this initial development stage, they are described below:
- The MAJOR version is currently 0, indicating initial development.
- The MINOR version is currently incremented when backwards incompatible changes are introduced to the public API.
- The PATCH version is currently incremented when bug fixes or backwards compatible changes are introduced to the public API.
You can download this package from:
Verifying GitHub Releases
See Verifying GitHub Releases for more information.
We take all security reports seriously. When we receive such reports, we will
investigate and subsequently address any potential vulnerabilities as quickly
as possible. If you discover a potential security issue in this project, please
notify AWS/Amazon Security via our vulnerability reporting page
or directly via email to AWS Security. Please do not
create a public GitHub issue in this project.
This project is licensed under the Apache-2.0 License.