Batch contexts

This page describes contexts the Batch workflow can use in expressions for calculating YAML attribute values.

Batch Contexts

Context nameDescription

flow

Information about the main workflow settings, defaults, etc. See flow context for details.

project

Information about the project. See project context for details.

params

A mapping of global workflow parameters. For more information, see params context.

env

Contains environment variables set in workflow defaults. For more information, see env context .

tags

A set of job tags set in workflow defaults. See tags context for details.

volumes

Contains a mapping of volume definitions. For more information, see volumes context.

images

Contains a mapping of docker images from workflow config. See images context for details.

strategy

Contains information about strategies from flow defaults. See strategy context for details.

matrix

Contains combination data generated by the tasks.strategy.matrix. See matrix context for details.

needs

Contains outputs generated by tasks from tasks.needs. See needs context for details.

git

A mapping of the flow's workspace to a git repository. For more information, see git context.

flow context

The flowcontext contains information about the workflow: its ID, title, etc.

Property nameTypeDescription

flow.flow_id

str

The workflow's ID. It is automatically generated based on the workflow's YAML filename with a dropped suffix. You can override the property by setting the flow.id attribute.

flow.project_id

str

The project's ID. It is automatically generated based on the name of the flow folder. You can override it using project.id attribute. Check the project configuration for details.

flow.workspace

LocalPath

A path to the workspace (the root folder of the flow).

flow.title

str

The workflow's title. Set the flow.title attribute to override the auto-calculated value.

project context

The projectcontext contains information about the project: its ID, owner, etc.

Property nameTypeDescription

project.id

str

The project's ID. It is automatically generated based on the name of the flow folder. You can override it using project.id attribute. Check the project configuration for details. This context property is an alias to flow.project_id .

project.owner

str

The project's owner. See also: the project configuration.

project.project_name

str

The platform project name. Set the project.project_name attribute to override the auto-calculated value.

params context

Parameter described in the params attribute .

Property nameTypeDescription

params.<param-name>

str

The value of a specific parameter.

env context

The env context contains environment variables that have been set in the workflow defaults. For more information about setting environment variables in your workflow, see "Batch workflow syntax."

The env context syntax allows you to use the value of an environment variable in your workflow file. If you want to use the value of an environment variable inside a job, use your operating system's standard method for reading environment variables.

Property nameTypeDescription

env.<env-name>

str

The value of a specific environment variable.

tags context

A set of job tags.

Tags available in this context are combined from system tags (project:<project-id>, flow:<flow-id>, task:<task-id>), and flow default tags (see defaults.tags attribute).

Property nameTypeDescription

tags

set[str]

This context changes for each job. You can access this context from any job.

volumes context

Contains information about volumes defined in the volumes section of a batch workflow.

Property nameTypeDescription

volumes.<volume-id>.id

str

The volume definition identifier. For more information, see volumes.<volume-id> section.

volumes.<volume-id>.remote

URL

Remote volume URI, e.g. storage:path/to. For more information, see volumes.<volume-id>.remote attribute.

volumes.<volume-id>.mount

RemotePath

The path inside a job by which the volume should be mounted.

For more information, see volumes.<volume-id>.mount attribute.

volumes.<volume-id>.read_only

bool

True if the volume is mounted in read-only mode, False otherwise.

For more information, see volumes.<volume-id>.read_only attribute.

volumes.<volume-id>.local

None

In batch workflows, this property is always None.

volumes.<volume-id>.full_local_path

LocalPath or None

Full version of local property.

volumes.<volume-id>.ref

str

A volume reference that can be used as a task.volumes item. The calculated value looks like storage:path/to:/mnt/path:rw.

The value is assembled from the remote, mount, and read_only properties.

volumes.<volume-id>.ref_ro

str

Like ref but read-only mode is enforced.

volumes.<volume-id>.ref_rw

str

Like ref but read-write mode is enforced.

images context

Contains information about images defined in the images section of a batch workflow.

Property nameTypeDescription

images.<image-id>.id

str

The image definition identifier. For more information, see images.<image-id> section.

images.<image-id>.ref

str

The image reference. For more information, see images.<image-id>.ref attribute.

images.<image-id>.context

None

In batch workflows, this property is always None.

images.<image-id>.full_context_path

None

In batch workflows, this property is always None.

images.<image-id>.dockerfile

None

In batch workflows, this property is always None.

images.<image-id>.full_dockerfile_path

None

In batch workflows, this property is always None.

images.<image-id>.build_args

list[str]

In batch workflows, this property is always [](empty list).

images.<image-id>.env

dict[str, str]

In batch workflows, this property is always {}(empty dict).

images.<image-id>.volumes

list[str]

In batch workflows, this property is always [](empty list).

strategy context

Contains information about some strategies of execution set in the flow defaults.

Property nameTypeDescription

strategy.fail_fast

bool

Task failure processing strategy. For more information, see defaults.fail_fast attribute.

strategy.max_parallel

int

The maximum number of tasks that can be executed at the same time. For more information, see defaults.max_parallel attribute.

matrix context

Contains parameters from a combination generated by the tasks.strategy.matrix attribute.

Property nameTypeDescription

matrix.<param-name>

bool or int or float or str or None

The matrix parameter value for the current combination.

needs context

Contains outputs generated by tasks that were specified in the tasks.needs attribute. Refer to the set-output command reference to learn how to generate outputs.

Property nameTypeDescription

needs.<task-id>.result

str

State of the completed task <task-id>. Can be one of the following: "succedded", "failed", "cancelled", "skipped".

needs.<task-id>.outputs.<output-name>

str

The value of the <output-name> output produced by the <task-id> task.

git context

The git context contains a mapping of your flow's workspace to a git repository.

This context can only be used if the flow's workspace is inside some git repository.

Property nameTypeDescription

git.sha

str

SHA of the current commit.

git.branch

str

Name of the current branch.

git.tags

list[str]

List of tags that point to the current commit.

Last updated