Condition
Condition is the 'when' you want to update
On this page
Description
A "condition" stage defines if the "Target" stage stage of a pipeline should be executed or not.
It runs a check (depending on the resource kind) that return a boolean indicating its success (true
) or failure (true
).
Please look at each kind of resource (shell, file, etc.) for details about "how is the success/failure determined?".
Parameters
Name | Type | Description | Required |
---|
Examples
Example with only 1 source:
sources:
printsName:
kind: shell
spec:
command: echo Ada
conditions:
checkIfFileExistsWithName:
kind: shell
# Implicit instruction (only source)
# sourceID: printsName
spec:
# Should execute the command ""test -f Ada"" (e.g. tests if the file "Ada" exists)
command: test -f
Example with source input disabled:
# Sources defined here
# ...
conditions:
checkIfFileExistsWithName:
kind: shell
disablesourceinput: true
spec:
# Should execute the command "test -f pom.xml" (e.g. tests if the file "pom.xml" exists)
# There are no source value appended
command: test -f pom.xml
Example checking if a Docker Image is published on the registry. It verifies that the docker image
jenkinsciinfra/plugin-site-api
with the tag returned from the source exists on the DockerHub. The targets of this pipeline are not executed if this condition fails.
sources:
tagVersion:
kind: shell
spec:
command: echo v1.0.0
conditions:
IsDockerImagePublished:
name: |
Is the Docker Image
'jenkinsciinfra/plugin-site-api:{{ source `tagVersion` }}
published on the registry?
kind: dockerimage
sourceID: tagVersion
spec:
image: "jenkinsciinfra/plugin-site-api"
# The targets defined below are not executed if
# the image 'jenkinsciinfra/plugin-site-api:v1.0.0'
# is absent on the DockerHub