Skip to main content
System StatusContact Support
VersionOne Community

Configuring the Automate Plugin

Overview 

The Automate plugin is maintained by Continuum and is used to interact with Continuum Automate, most usually to execute Tasks.

Automate Tasks can be scripted to do just about anything. Refer to Automate for more information on Tasks.

Run Task

The Run Task function will execute a Task, and wait for the Task to complete. Tasks always complete with a known status, and the final status of the Task is translated into the final status for the Pipeline step in which it is called.

Tasks that end as Completed will mark the step as success and Pipeline execution will continue. Any other Task status will cause the Pipeline to end in failure.

Properties

The Run Task function accepts several properties:

  • Task - Name of the Task name to be executed.
  • Version - Optional - The version of the task to run. If left blank then the default version of the task will be used.
  • Initial Data - An initial runtime variable workspace for the Task.

Initial Data must be a JSON object (an array or other type of data will not be accepted.)

Here is an example of a JSON object valid to be used as Initial Data:

{
    "ship": "Serenity"
    "captain": "Malcolm Reynolds"
}

Special Global Variables

When Tasks are executed from within a Pipeline, the Task is augmented with a number of Global Variables. These variables are extremely important, in fact essentially required, to design a Task that's tightly integrated with a Pipeline.

In a Task, the following Global Variables are available:

  • _PI_ID - The _id of the Pipeline Instance
  • _PI - The complete Pipeline Instance object
  • _PI_PHASE - Phase containing the plugin function that called this Task
  • _PI_STAGE - Stage containing the plugin function that called this Task
  • _PI_STEP - Step Number of the plugin function that called this Task
  • _PI_DATA - The complete Pipeline Instance Workspace document
  • _PROJECT_ID - _id of the Project of the Pipeline Instance
  • _PROJECT - The complete Project object
  • _PROJECT_VERSION - The Project Version this Instance is executing within. (May be empty, or may vary from the 'current' Version of a Project.)

Just like all other parameters and variables, Globals can be accessed in the Task using the standard variable syntax. Some most common examples are:

To make a decision in the Task based on the Pipeline Group (most often is the repository branch):

[$ _PI["group"] $]

To reference data in the Workspace (commit data, values set in previous steps, etc):

[$ _PI_DATA["some_key"] $]
  • Was this article helpful?