shareParameters
allow to share parameters across child actions instead of creating cloned version to split branches.
Usage example:
# set default parameters$parameters:test: false'--':- fn: |-parameters.test = true- ctx:'$.test':inline: $ref:parameters.test
As a result of execution ctx.test
will have false
value, ad --
clones parameters for each of the actions. Meaning fn
function that modifies the parameters
will have no affect on ctx
.
But, if we add $shareParameters
metadata, things will change:
# set default parameters$parameters:test: false'--':# tell action to share parametersshareParameters: trueactions:- fn: |-parameters.test = true- ctx:'$.test':inline: $ref:parameters.test
As a result of execution ctx.test
will now have true
value.
Note: this is actually an anti-pattern: parameters
modification is shadowed and might not be obvious. Make sure to use shareParameters
only when necessary.