kubernetes
Description
Complete YAML Schema
kind: Module
# The type of this module.
type:
# The name of this module.
name:
# Specify how to build the module. Note that plugins may define additional keys on this object.
build:
# A list of modules that must be built before this module is built.
dependencies:
- # Module name to build ahead of this module.
name:
# Specify one or more files or directories to copy from the built dependency to this module.
copy:
- # POSIX-style path or filename of the directory or file(s) to copy to the target.
source:
# POSIX-style path or filename to copy the directory or file(s), relative to the build directory.
# Defaults to the same as source path.
target:
# Maximum time in seconds to wait for build to finish.
timeout: 600
# If set to true, Garden will run the build command, services, tests, and tasks in the module source directory,
# instead of in the Garden build directory (under .garden/build/<module-name>).
#
# Garden will therefore not stage the build for local modules. This means that include/exclude filters
# and ignore files are not applied to local modules, except to calculate the module/action versions.
#
# If you use use `build.dependencies[].copy` for one or more build dependencies of this module, the copied files
# will be copied to the module source directory (instead of the build directory, as is the default case when
# `local = false`).
#
# Note: This maps to the `buildAtSource` option in this module's generated Build action (if any).
local: false
# A description of the module.
description:
# Set this to `true` to disable the module. You can use this with conditional template strings to disable modules
# based on, for example, the current environment or other variables (e.g. `disabled: ${environment.name == "prod"}`).
# This can be handy when you only need certain modules for specific environments, e.g. only for development.
#
# Disabling a module means that any services, tasks and tests contained in it will not be build, deployed or run.
#
# If you disable the module, and its services, tasks or tests are referenced as _runtime_ dependencies, Garden will
# automatically ignore those dependency declarations. Note however that template strings referencing the module's
# service or task outputs (i.e. runtime outputs) will fail to resolve when the module is disabled, so you need to make
# sure to provide alternate values for those if you're using them, using conditional expressions.
disabled: false
# Specify a list of POSIX-style paths or globs that should be regarded as the source files for this module. Files that
# do *not* match these paths or globs are excluded when computing the version of the module, when responding to
# filesystem watch events, and when staging builds.
#
# Note that you can also _exclude_ files using the `exclude` field or by placing `.gardenignore` files in your source
# tree, which use the same format as `.gitignore` files. See the [Configuration Files
# guide](https://docs.garden.io/cedar-0.14/using-garden/configuration-overview#including-excluding-files-and-directories)
# for details.
#
# Also note that specifying an empty list here means _no sources_ should be included.
#
# If neither `include` nor `exclude` is set, Garden automatically sets `include` to equal the
# `files` directive so that only the Kubernetes manifests get included.
include:
# Specify a list of POSIX-style paths or glob patterns that should be excluded from the module. Files that match these
# paths or globs are excluded when computing the version of the module, when responding to filesystem watch events,
# and when staging builds.
#
# Note that you can also explicitly _include_ files using the `include` field. If you also specify the `include`
# field, the files/patterns specified here are filtered from the files matched by `include`. See the [Configuration
# Files
# guide](https://docs.garden.io/cedar-0.14/using-garden/configuration-overview#including-excluding-files-and-directories)
# for details.
#
# Unlike the `scan.exclude` field in the project config, the filters here have _no effect_ on which files and
# directories are watched for changes. Use the project `scan.exclude` field to affect those, if you have large
# directories that should not be watched for changes.
exclude:
# A remote repository URL. Currently only supports git servers. Must contain a hash suffix pointing to a specific
# branch or tag, with the format: <git remote url>#<branch|tag>
#
# Garden will import the repository source code into this module, but read the module's config from the local
# garden.yml file.
repositoryUrl:
# When false, disables pushing this module to remote registries via the publish command.
allowPublish: true
# A list of files to write to the module directory when resolving this module. This is useful to automatically
# generate (and template) any supporting files needed for the module.
generateFiles:
- # POSIX-style filename to read the source file contents from, relative to the path of the module (or the
# ConfigTemplate configuration file if one is being applied).
# This file may contain template strings, much like any other field in the configuration.
sourcePath:
# POSIX-style filename to write the resolved file contents to, relative to the path of the module source directory
# (for remote modules this means the root of the module repository, otherwise the directory of the module
# configuration).
#
# Note that any existing file with the same name will be overwritten. If the path contains one or more
# directories, they will be automatically created if missing.
targetPath:
# By default, Garden will attempt to resolve any Garden template strings in source files. Set this to false to
# skip resolving template strings. Note that this does not apply when setting the `value` field, since that's
# resolved earlier when parsing the configuration.
resolveTemplates: true
# The desired file contents as a string.
value:
# A map of variables scoped to this particular module. These are resolved before any other parts of the module
# configuration and take precedence over project-scoped variables. They may reference project-scoped variables, and
# generally use any template strings normally allowed when resolving modules.
variables:
# Specify a path (relative to the module root) to a file containing variables, that we apply on top of the
# module-level `variables` field.
#
# The format of the files is determined by the configured file's extension:
#
# * `.yaml`/`.yml` - YAML. The file must consist of a YAML document, which must be a map (dictionary). Keys may
# contain any value type. YAML format is used by default.
# * `.env` - Standard "dotenv" format, as defined by [dotenv](https://github.com/motdotla/dotenv#rules).
# * `.json` - JSON. Must contain a single JSON _object_ (not an array).
#
# _NOTE: The default varfile format was changed to YAML in Garden v0.13, since YAML allows for definition of nested
# objects and arrays._
#
# To use different module-level varfiles in different environments, you can template in the environment name
# to the varfile name, e.g. `varfile: "my-module.${environment.name}.env` (this assumes that the corresponding
# varfiles exist).
varfile:
# POSIX-style paths to YAML files to load manifests from. Each can contain multiple manifests, and can include any
# Garden template strings, which will be resolved before applying the manifests.
files: []
# Resolve the specified kustomization and include the resulting resources. Note that if you specify `files` or
# `manifests` as well, these are also included.
kustomize:
# The directory path where the desired kustomization.yaml is, or a git repository URL. This could be the path to an
# overlay directory, for example. If it's a path, must be a relative POSIX-style path and must be within the action
# root. Defaults to the action root. If you set this to null, kustomize will not be run.
path: .
# The Kustomize version to use.
version: 5
# A list of additional arguments to pass to the `kustomize build` command. Note that specifying '-o' or '--output'
# is not allowed.
extraArgs: []
# List of Kubernetes resource manifests to deploy. If `files` is also specified, this is combined with the manifests
# read from the files.
manifests:
- # The API version of the resource.
apiVersion:
# The kind of the resource.
kind:
metadata:
# The name of the resource.
name:
# A list of resources to patch using Kubernetes' patch strategies. This is useful for e.g. overwriting a given
# container image name with an image built by Garden
# without having to actually modify the underlying Kubernetes manifest in your source code. Another common example is
# to use this to change the number of replicas for a given
# Kubernetes Deployment.
#
# Under the hood, Garden just applies the `kubectl patch` command to the resource that matches the specified `kind`
# and `name`.
#
# Patches are applied to file manifests, inline manifests, and kustomize files.
#
# You can learn more about patching Kubernetes resources here:
# https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/
patchResources:
- # The kind of the resource to patch.
kind:
# The name of the resource to patch.
name:
# The patch strategy to use. One of 'json', 'merge', or 'strategic'. Defaults to 'strategic'.
#
# You can read more about the different strategies in the official Kubernetes documentation at:
# https://kubernetes.io/docs/tasks/manage-kubernetes-objects/update-api-object-kubectl-patch/
strategy: strategic
# The patch to apply.
patch:
# A valid Kubernetes namespace name. Must be a valid RFC1035/RFC1123 (DNS) label (may contain lowercase letters,
# numbers and dashes, must start with a letter, and cannot end with a dash) and must not be longer than 63 characters.
namespace:
# Manually specify port forwards that Garden should set up when deploying in dev or watch mode. If specified, these
# override the auto-detection of forwardable ports, so you'll need to specify the full list of port forwards to
# create.
portForwards:
- # An identifier to describe the port forward.
name:
# The full resource kind and name to forward to, e.g. Service/my-service or Deployment/my-deployment. Note that
# Garden will not validate this ahead of attempting to start the port forward, so you need to make sure this is
# correctly set. The types of resources supported will match that of the `kubectl port-forward` CLI command.
resource:
# The port number on the remote resource to forward to.
targetPort:
# The _preferred_ local port to forward from. If none is set, a random port is chosen. If the specified port is
# not available, a warning is shown and a random port chosen instead.
localPort:
# The maximum duration (in seconds) to wait for resources to deploy and become healthy.
timeout: 300
# Additional arguments to pass to `kubectl apply`.
applyArgs:
# Wait until the jobs have been completed. Garden will wait for as long as `timeout`.
waitForJobs: true
# The names of any services that this service depends on at runtime, and the names of any tasks that should be
# executed before this service is deployed.
# You may also depend on Deploy and Run actions, but please note that you cannot reference those actions in template
# strings.
dependencies: []
# Specifies which files or directories to sync to which paths inside the running containers of the service when it's
# in sync mode, and overrides for the container command and/or arguments.
#
# Note that `serviceResource` must also be specified to enable sync.
#
# Sync is enabled by setting the `--sync` flag on the `garden deploy` command.
#
# See the [Code Synchronization guide](https://docs.garden.io/cedar-0.14/guides/code-synchronization) for more
# information.
sync:
# Override the default container arguments when in sync mode.
args:
# Override the default container command (i.e. entrypoint) when in sync mode.
command:
# Specify one or more source files or directories to automatically sync with the running container.
paths:
- # Path to a local directory to be synchronized with the target.
# This should generally be a templated path to another action's source path (e.g.
# `${actions.build.my-container-image.sourcePath}`), or a relative path.
# If a path is hard-coded, we recommend sticking with relative paths here, and using forward slashes (`/`) as a
# delimiter, as Windows-style paths with back slashes (`\`) and absolute paths will work on some platforms, but
# they are not portable and will not work for users on other platforms.
# Defaults to the Deploy action's config's directory if no value is provided.
source: .
# POSIX-style absolute path to sync to inside the container. The root path (i.e. "/") is not allowed.
target:
# Specify a list of POSIX-style paths or glob patterns that should be excluded from the sync.
#
# `.git` directories and `.garden` directories are always ignored.
exclude:
# The sync mode to use for the given paths. See the [Code Synchronization
# guide](https://docs.garden.io/cedar-0.14/guides/code-synchronization) for details.
mode: one-way-safe
# The default permission bits, specified as an octal, to set on files at the sync target. Defaults to 0o644
# (user can read/write, everyone else can read). See the [Mutagen
# docs](https://mutagen.io/documentation/synchronization/permissions#permissions) for more information.
defaultFileMode: 420
# The default permission bits, specified as an octal, to set on directories at the sync target. Defaults to
# 0o755 (user can read/write, everyone else can read). See the [Mutagen
# docs](https://mutagen.io/documentation/synchronization/permissions#permissions) for more information.
defaultDirectoryMode: 493
# Set the default owner of files and directories at the target. Specify either an integer ID or a string name.
# See the [Mutagen docs](https://mutagen.io/documentation/synchronization/permissions#owners-and-groups) for
# more information.
defaultOwner:
# Set the default group on files and directories at the target. Specify either an integer ID or a string name.
# See the [Mutagen docs](https://mutagen.io/documentation/synchronization/permissions#owners-and-groups) for
# more information.
defaultGroup:
# Optionally specify the name of a specific container to sync to. If not specified, the first container in the
# workload is used.
containerName:
# The Deployment, DaemonSet or StatefulSet or Pod that Garden should regard as the _Garden service_ in this module
# (not to be confused with Kubernetes Service resources).
#
# This can either reference a workload (i.e. a Deployment, DaemonSet or StatefulSet) via the `kind` and `name` fields,
# or a Pod via the `podSelector` field.
#
# Because a `kubernetes` module can contain any number of Kubernetes resources, this needs to be specified for certain
# Garden features and commands to work.
serviceResource:
# The type of Kubernetes resource to sync files to.
kind: Deployment
# The name of the resource to sync to. If the action contains a single resource of the specified Kind, this can be
# omitted.
name:
# The name of a container in the target. Specify this if the target contains more than one container and the main
# container is not the first container in the spec.
containerName:
# A map of string key/value labels to match on any Pods in the namespace. When specified, a random ready Pod with
# matching labels will be picked as a target, so make sure the labels will always match a specific Pod type.
podSelector:
# The Garden module that contains the sources for the container. This needs to be specified under `serviceResource`
# in order to enable syncing, but is not necessary for tasks and tests. Must be a `container` module.
#
# _Note: If you specify a module here, you don't need to specify it additionally under `build.dependencies`._
containerModule:
tasks:
- # The name of the task.
name:
# A description of the task.
description:
# The names of any tasks that must be executed, and the names of any services that must be running, before this
# task is executed.
# You may also depend on Deploy and Run actions, but please note that you cannot reference those actions in
# template strings.
dependencies: []
# Set this to `true` to disable the task. You can use this with conditional template strings to enable/disable
# tasks based on, for example, the current environment or other variables (e.g. `enabled: ${environment.name !=
# "prod"}`). This can be handy when you only want certain tasks to run in specific environments, e.g. only for
# development.
#
# Disabling a task means that it will not be run, and will also be ignored if it is declared as a runtime
# dependency for another service, test or task.
#
# Note however that template strings referencing the task's outputs (i.e. runtime outputs) will fail to resolve
# when the task is disabled, so you need to make sure to provide alternate values for those if you're using them,
# using conditional expressions.
disabled: false
# Maximum duration (in seconds) of the task's execution.
timeout: 600
# The Deployment, DaemonSet, StatefulSet or Pod that Garden should use to execute this task.
# If not specified, the `serviceResource` configured on the module will be used. If neither is specified,
# an error will be thrown.
#
# This can either reference a workload (i.e. a Deployment, DaemonSet or StatefulSet) via the `kind` and `name`
# fields, or a Pod via the `podSelector` field.
#
# The following pod spec fields from the service resource will be used (if present) when executing the task:
#
# **Warning**: Garden will retain `configMaps` and `secrets` as volumes, but remove `persistentVolumeClaim`
# volumes from the Pod spec, as they might already be mounted.
# * `affinity`
# * `automountServiceAccountToken`
# * `containers`
# * `dnsConfig`
# * `dnsPolicy`
# * `enableServiceLinks`
# * `hostAliases`
# * `hostIPC`
# * `hostNetwork`
# * `hostPID`
# * `hostname`
# * `imagePullSecrets`
# * `nodeName`
# * `nodeSelector`
# * `overhead`
# * `preemptionPolicy`
# * `priority`
# * `priorityClassName`
# * `runtimeClassName`
# * `schedulerName`
# * `securityContext`
# * `serviceAccount`
# * `serviceAccountName`
# * `shareProcessNamespace`
# * `subdomain`
# * `tolerations`
# * `topologySpreadConstraints`
# * `volumes`
resource:
# The type of Kubernetes resource to sync files to.
kind: Deployment
# The name of the resource to sync to. If the action contains a single resource of the specified Kind, this can
# be omitted.
name:
# The name of a container in the target. Specify this if the target contains more than one container and the
# main container is not the first container in the spec.
containerName:
# A map of string key/value labels to match on any Pods in the namespace. When specified, a random ready Pod
# with matching labels will be picked as a target, so make sure the labels will always match a specific Pod
# type.
podSelector:
# Set to false if you don't want the Run action result to be cached. Use this if the Run action needs to be run
# any time your project (or one or more of the Run action's dependants) is deployed. Otherwise the Run action is
# only re-run when its version changes, or when you run `garden run`.
cacheResult: true
# The command/entrypoint used to run inside the container.
command:
# The arguments to pass to the command/entrypoint used for execution.
args:
# Key/value map of environment variables. Keys must be valid POSIX environment variable names (must not start with
# `GARDEN`) and values must be primitives or references to secrets.
env: {}
# Specify artifacts to copy out of the container after the run. The artifacts are stored locally under
# the `.garden/artifacts` directory.
artifacts:
- # A POSIX-style path or glob to copy. Must be an absolute path. May contain wildcards.
source:
# A POSIX-style path to copy the artifacts to, relative to the project artifacts directory at
# `.garden/artifacts`.
target: .
# A valid Kubernetes namespace name. Must be a valid RFC1035/RFC1123 (DNS) label (may contain lowercase letters,
# numbers and dashes, must start with a letter, and cannot end with a dash) and must not be longer than 63
# characters.
namespace:
tests:
- # The name of the test.
name:
# The names of any services that must be running, and the names of any tasks that must be executed, before the
# test is run.
dependencies: []
# Set this to `true` to disable the test. You can use this with conditional template strings to
# enable/disable tests based on, for example, the current environment or other variables (e.g.
# `enabled: ${environment.name != "prod"}`). This is handy when you only want certain tests to run in
# specific environments, e.g. only during CI.
disabled: false
# Maximum duration (in seconds) of the test run.
timeout: 600
# The Deployment, DaemonSet or StatefulSet or Pod that Garden should use to execute this test suite.
# If not specified, the `serviceResource` configured on the module will be used. If neither is specified,
# an error will be thrown.
#
# This can either reference a workload (i.e. a Deployment, DaemonSet or StatefulSet) via the `kind` and `name`
# fields, or a Pod via the `podSelector` field.
#
# The following pod spec fields from the service resource will be used (if present) when executing the test suite:
#
# **Warning**: Garden will retain `configMaps` and `secrets` as volumes, but remove `persistentVolumeClaim`
# volumes from the Pod spec, as they might already be mounted.
# * `affinity`
# * `automountServiceAccountToken`
# * `containers`
# * `dnsConfig`
# * `dnsPolicy`
# * `enableServiceLinks`
# * `hostAliases`
# * `hostIPC`
# * `hostNetwork`
# * `hostPID`
# * `hostname`
# * `imagePullSecrets`
# * `nodeName`
# * `nodeSelector`
# * `overhead`
# * `preemptionPolicy`
# * `priority`
# * `priorityClassName`
# * `runtimeClassName`
# * `schedulerName`
# * `securityContext`
# * `serviceAccount`
# * `serviceAccountName`
# * `shareProcessNamespace`
# * `subdomain`
# * `tolerations`
# * `topologySpreadConstraints`
# * `volumes`
resource:
# The type of Kubernetes resource to sync files to.
kind: Deployment
# The name of the resource to sync to. If the action contains a single resource of the specified Kind, this can
# be omitted.
name:
# The name of a container in the target. Specify this if the target contains more than one container and the
# main container is not the first container in the spec.
containerName:
# A map of string key/value labels to match on any Pods in the namespace. When specified, a random ready Pod
# with matching labels will be picked as a target, so make sure the labels will always match a specific Pod
# type.
podSelector:
# The command/entrypoint used to run the test inside the container.
command:
# The arguments to pass to the container used for testing.
args:
# Key/value map of environment variables. Keys must be valid POSIX environment variable names (must not start with
# `GARDEN`) and values must be primitives or references to secrets.
env: {}
# Specify artifacts to copy out of the container after the run. The artifacts are stored locally under
# the `.garden/artifacts` directory.
artifacts:
- # A POSIX-style path or glob to copy. Must be an absolute path. May contain wildcards.
source:
# A POSIX-style path to copy the artifacts to, relative to the project artifacts directory at
# `.garden/artifacts`.
target: .Configuration Keys
kind
kindType
Allowed Values
Default
Required
type
typeType
Required
name
nameType
Required
build
buildType
Default
Required
build.dependencies[]
build.dependencies[]Type
Default
Required
build.dependencies[].name
build.dependencies[].nameType
Required
build.dependencies[].copy[]
build.dependencies[].copy[]Type
Default
Required
build.dependencies[].copy[].source
build.dependencies[].copy[].sourceType
Required
build.dependencies[].copy[].target
build.dependencies[].copy[].targetType
Required
build.timeout
build.timeoutType
Default
Required
local
localType
Default
Required
description
descriptionType
Required
disabled
disabledType
Default
Required
include[]
include[]Type
Required
exclude[]
exclude[]Type
Required
repositoryUrl
repositoryUrlType
Required
allowPublish
allowPublishType
Default
Required
generateFiles[]
generateFiles[]Type
Default
Required
generateFiles[].sourcePath
generateFiles[].sourcePathType
Required
generateFiles[].targetPath
generateFiles[].targetPathType
Required
generateFiles[].resolveTemplates
generateFiles[].resolveTemplatesType
Default
Required
generateFiles[].value
generateFiles[].valueType
Required
variables
variablesType
Required
varfile
varfileType
Required
files[]
files[]Type
Default
Required
kustomize
kustomizeType
Required
kustomize.path
kustomize.pathType
Default
Required
kustomize.version
kustomize.versionType
Allowed Values
Default
Required
kustomize.extraArgs[]
kustomize.extraArgs[]Type
Default
Required
manifests[]
manifests[]Type
Default
Required
manifests[].apiVersion
manifests[].apiVersionType
Required
manifests[].kind
manifests[].kindType
Required
manifests[].metadata
manifests[].metadataType
Required
manifests[].metadata.name
manifests[].metadata.nameType
Required
patchResources[]
patchResources[]Type
Default
Required
patchResources[].kind
patchResources[].kindType
Required
patchResources[].name
patchResources[].nameType
Required
patchResources[].strategy
patchResources[].strategyType
Default
Required
patchResources[].patch
patchResources[].patchType
Required
namespace
namespaceType
Required
portForwards[]
portForwards[]Type
Required
portForwards[].name
portForwards[].nameType
Required
portForwards[].resource
portForwards[].resourceType
Required
portForwards[].targetPort
portForwards[].targetPortType
Required
portForwards[].localPort
portForwards[].localPortType
Required
timeout
timeoutType
Default
Required
applyArgs[]
applyArgs[]Type
Required
waitForJobs
waitForJobsType
Default
Required
dependencies[]
dependencies[]Type
Default
Required
sync
syncType
Required
sync.args[]
sync.args[]Type
Required
sync.command[]
sync.command[]Type
Required
sync.paths[]
sync.paths[]Type
Required
sync.paths[].source
sync.paths[].sourceType
Default
Required
sync.paths[].target
sync.paths[].targetType
Required
sync.paths[].exclude[]
sync.paths[].exclude[]Type
Required
sync.paths[].mode
sync.paths[].modeType
Allowed Values
Default
Required
sync.paths[].defaultFileMode
sync.paths[].defaultFileModeType
Default
Required
sync.paths[].defaultDirectoryMode
sync.paths[].defaultDirectoryModeType
Default
Required
sync.paths[].defaultOwner
sync.paths[].defaultOwnerType
Required
sync.paths[].defaultGroup
sync.paths[].defaultGroupType
Required
sync.containerName
sync.containerNameType
Required
serviceResource
serviceResourceType
Required
serviceResource.kind
serviceResource.kindType
Allowed Values
Default
Required
serviceResource.name
serviceResource.nameType
Required
serviceResource.containerName
serviceResource.containerNameType
Required
serviceResource.podSelector
serviceResource.podSelectorType
Required
serviceResource.containerModule
serviceResource.containerModuleType
Required
tasks[]
tasks[]Type
Default
Required
tasks[].name
tasks[].nameType
Required
tasks[].description
tasks[].descriptionType
Required
tasks[].dependencies[]
tasks[].dependencies[]Type
Default
Required
tasks[].disabled
tasks[].disabledType
Default
Required
tasks[].timeout
tasks[].timeoutType
Default
Required
tasks[].resource
tasks[].resourceType
Required
tasks[].resource.kind
tasks[].resource.kindType
Allowed Values
Default
Required
tasks[].resource.name
tasks[].resource.nameType
Required
tasks[].resource.containerName
tasks[].resource.containerNameType
Required
tasks[].resource.podSelector
tasks[].resource.podSelectorType
Required
tasks[].cacheResult
tasks[].cacheResultType
Default
Required
tasks[].command[]
tasks[].command[]Type
Required
tasks[].args[]
tasks[].args[]Type
Required
tasks[].env
tasks[].envType
Default
Required
tasks[].artifacts[]
tasks[].artifacts[]Type
Default
Required
tasks[].artifacts[].source
tasks[].artifacts[].sourceType
Required
tasks[].artifacts[].target
tasks[].artifacts[].targetType
Default
Required
tasks[].namespace
tasks[].namespaceType
Required
tests[]
tests[]Type
Default
Required
tests[].name
tests[].nameType
Required
tests[].dependencies[]
tests[].dependencies[]Type
Default
Required
tests[].disabled
tests[].disabledType
Default
Required
tests[].timeout
tests[].timeoutType
Default
Required
tests[].resource
tests[].resourceType
Required
tests[].resource.kind
tests[].resource.kindType
Allowed Values
Default
Required
tests[].resource.name
tests[].resource.nameType
Required
tests[].resource.containerName
tests[].resource.containerNameType
Required
tests[].resource.podSelector
tests[].resource.podSelectorType
Required
tests[].command[]
tests[].command[]Type
Required
tests[].args[]
tests[].args[]Type
Required
tests[].env
tests[].envType
Default
Required
tests[].artifacts[]
tests[].artifacts[]Type
Default
Required
tests[].artifacts[].source
tests[].artifacts[].sourceType
Required
tests[].artifacts[].target
tests[].artifacts[].targetType
Default
Required
Outputs
Module Outputs
${modules.<module-name>.buildPath}
${modules.<module-name>.buildPath}Type
${modules.<module-name>.name}
${modules.<module-name>.name}Type
${modules.<module-name>.path}
${modules.<module-name>.path}Type
${modules.<module-name>.var.*}
${modules.<module-name>.var.*}Type
Default
${modules.<module-name>.var.<variable-name>}
${modules.<module-name>.var.<variable-name>}Type
${modules.<module-name>.version}
${modules.<module-name>.version}Type
Service Outputs
${runtime.services.<service-name>.version}
${runtime.services.<service-name>.version}Type
Task Outputs
${runtime.tasks.<task-name>.version}
${runtime.tasks.<task-name>.version}Type
Last updated
Was this helpful?

