Batch contexts
Last updated
Last updated
This page describes contexts the Batch workflow can use in expressions for calculating YAML attribute values.
Context name | Description |
---|---|
flow
contextThe flow
context contains information about the workflow: its ID, title, etc.
Property name | Type | Description |
---|---|---|
project
contextThe project
context contains information about the project: its ID, owner, etc.
params
contextParameter described in the params
attribute .
env
contextThe 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.
tags
contextA 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).
volumes
contextContains information about volumes defined in the volumes
section of a batch workflow.
images
contextContains information about images defined in the images
section of a batch workflow.
strategy
contextContains information about some strategies of execution set in the flow defaults.
matrix
contextContains parameters from a combination generated by the tasks.strategy.matrix
attribute.
needs
contextContains 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.
git
contextThe 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 name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
Property name | Type | Description |
---|---|---|
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.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.
flow.username
str
Name of user who executed the workflow run.
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.<param-name>
str
The value of a specific parameter.
env.<env-name>
str
The value of a specific environment variable.
tags
set[str]
This context changes for each job. You can access this context from any job.
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.<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.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.<param-name>
bool
or int
or float
or str
or None
The matrix parameter value for the current combination.
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.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.