Skip to content

(Mirror) Provides a generalized interface to run Agave jobs in the PipelineJobs framework

License

Notifications You must be signed in to change notification settings

SD2E/pipelinejobs-agave-proxy

Repository files navigation

PipelineJobs Agave Proxy

This Reactor provides a generalized proxy for running Agave API jobs such that their inputs, parameterization, and outputs are connected to (and thus discoverable from within) the Data Catalog.

Register Agave App as a Pipeline

Before an Agave App can be run by this proxy, three things must happen:

  1. It must be architected to fit the PipelineJobs workflow
  2. It must be public or shared with user sd2eadm
  3. It must be registered as a Data Catalog Pipeline

App Architecture

The app must generate filenames that are distinguishable between runs. This is enforced to prevent accidentallly over-writing of files when multiple jobs share an archiving destination. Furthermore, the app definition and any interior runtime logic must use fully-qualified Agave files URLs to define inputs. Finally, the app's id must be unique not only in the Agave Apps Catalog (this is automatically enforced) but also in the Data Catalog Pipelines collection.

Share or Publish the App

Coming soon...

Registering a Pipeline

Coming soon...

Launching a Managed Agave Job

Construct and send a message including the following components to the PipelineJobs Agave Proxy Reactor.

  1. An Agave job definition
  2. A metdata linkage parameter
  3. Optional control parameters

Note

The agave_pipelinejob format is documented in JSONSchemas.

Agave Job Definition

The Agave job definition must be included as as subdocument in the message. To illustrate this, start with a basic Agave job definition: Here is an example for an imaginary Agave app tacobot9000-0.1.0u1.