Live contexts
This page describes the contexts a live workflow can use in expressions for calculating YAML attribute values.
Live Contexts
env
Contains environment variables set in a workflow or a job. For more information, see env
context .
flow
Information about the main workflow settings, defaults, etc. See flow
context for details.
project
Information about the project. See project
context for details.
images
Contains a mapping of images on the Apolo registry. See images
context for details.
multi
Multi-job context. For more information, see multi
context.
params
A mapping of global workflow parameters. For more information, see params
context.
tags
A set of job tags set in a workflow or a job. See tags
context for details.
volumes
Contains a mapping of volume definitions. For more information, see volumes
context.
git
A mapping of the flow's workspace to a git repository. For more information, see git
context.
env
context
env
contextThe env
context contains environment variables that have been set in a workflow or a job. For more information about setting environment variables in your workflow, see "Live 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.
env.<env-name>
str
The value of a specific environment variable.
flow
context
flow
contextThe flow
context contains information about the workflow: its id, title, etc.
flow.flow_id
str
The workflow's ID. It's automatically generated based on the workflow's YAML filename with a dropped suffix (this will always 'live'
in live mode). 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.username
str
Name of user who executed the workflow run.
project
context
project
contextThe project
context contains information about the project: its ID, owner, etc.
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.project_name
str
The platform project name. Set the project.project_name attribute to override the auto-calculated value.
images
context
images
contextContains information about images defined in the images
section of a live workflow.
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
LocalPath
or None
The context directory used for building the image or None
if the context is not set. The path is relative to the flow's root (flow.workspace
property).
For more information, see images.<image-id>.context
attribute.
images.<image-id>.full_context_path
LocalPath
or None
The absolute path, pointing to the context
folder if set.
images.<image-id>.dockerfile
LocalPath
or None
A path to Dockerfile
or None
if not set.
For more information, see images.<image-id>.dockerfile
attribute.
images.<image-id>.full_dockerfile_path
LocalPath
or None
Full version of the dockerfile
attribute.
images.<image-id>.build_args
list[str]
A sequence of additional build arguments.
For more information, see images.<image-id>.build_args
attribute.
images.<image-id>.env
dict[str, str]
Environment variables passed to the image builder.
For more information, see images.<image-id>.env
attribute.
images.<image-id>.volumes
list[str]
A sequence of volume definitions passed to the image builder.
For more information, see images.<image-id>.volumes
attribute.
multi
context
multi
contextThe additional arguments passed to multi-job.
multi.args
str
Additional command line arguments passed to multi-job.
The command line run defines the field as apolo-flow run <job-id> -- <args>
.
multi.args
is mainly used for passing args to command line parameters accepted by multi-job, see jobs.<job-id>.cmd
for details.
params
context
params
contextParameter described in the jobs.<job-id>.params
attribute and available for substitution - for example, in jobs.<job-id>.cmd
calculation.
params.<param-name>
str
The value of a specific parameter.
Supported parameter values: project
, flow
, env
, tags
, volumes
, images
.
tags
context
tags
contextA set of job tags.
Tags are combined from system tags (project:<project-id>
, job:<job-id>
), flow default tags (see defaults.tags
attribute), and job-specific tags (see jobs.<job-id>.tags
attribute).
tags
set[str]
This context changes for each job. You can access this context from any job.
volumes
context
volumes
contextContains information about volumes defined in the volumes
section of a live workflow.
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
LocalPath
or None
A path in the workspace folder to synchronize with remote Apolo storage or None
if not set.
For more information, see volumes.<volume-id>.local
attribute.
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 jobs.<job-id>.volumes
item. The calculated value looks like storage:path/to:/mnt/path:rw
.
The value is assembled from 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.
git
context
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.
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