Transformer
Transform information before using it
On this page
Description
The "transformers" parameter can be used by any stage definition as a "source", "condition", or "target". A "transformers" object contains a list of transformers. Each kind of transformer rules applies a string manipulation like adding or removing characters.
source
Source returns information modified by a list of transformers.
condition
A condition receives information from the source then modifies that value using transformers before using it in the resource.
target
A target receives information from the source then modifies that value with the transformers rule before using the resource.
Parameters
Name | Default | Description |
replacer | - | Replace a string with another one, more here |
replacers | - | A list of Replacer |
addprefix | - | Add prefix to the value |
addsuffix | - | Add suffix to the value |
trimprefix | - | Remove prefix to the value |
trimsuffix | - | Remove suffix to the value |
find | - | Search for a string value using regular expression and then return its value exist |
findsubmatch | - | Search for a substring using a regular expression and return its content, more here |
semverinc | - | Bump semantic version, accept a comma separated list of ["major","minor","patch"] |
Replacer
A replacer rule modifies the information by replacing the "from" value by the "to" value.
Name | Required | Default | Description |
---|---|---|---|
from | ✔ | - | "from" value defines the string that will be replaced |
to | ✔ | - | "to" value defines the string that we want to have |
FindSubMatch
A findsubmatch
rule captures the desired information by applying pattern
as a regexp and using captureindex
value as the index for the capture to return (defaults to 0 which returns all submatches).
Name | Required | Default | Description |
---|---|---|---|
pattern | ✔ | - |
|
captureindex | - | - |
|
Example
The findsubmatch
below returns the submatch captured with (.*?)
:
sources:
default:
name: "Get latest jenkins weekly version"
kind: jenkins
transformers:
- addprefix: "alpha-"
- addsuffix: "-jdk11"
- trimsuffix: "-jdk11"
- trimprefix: "alpha-"
- replacer:
from: "-jdk11"
to: "-jdk15"
- replacers:
- from: "-jdk15"
to: "-jdk17"
- findsubmatch:
pattern: '"(.*?):(.*)'
captureindex: 1
- semverinc: "major,minor"
- find: "2.234.(.*)$"
spec:
release: weekly
targets:
targetID:
name: "Update file file"
kind: file
spec:
file: TODO