Re-fix boolean and number input types
What does this MR do and why?
This MR re-adds the fix that prevents boolean and number types being cast to strings. The original fix caused an incident because it did not account for multiple interpolation blocks in a single node and was only interpolating the first block. This MR updates the interpolation logic to use scan
instead of match
so we interpolate all blocks.
Changelog: fixed
Issue: #434826 (closed)
Screenshots or screen recordings
Before | After |
---|---|
![]() |
![]() |
How to set up and validate locally
-
Enable the
ci_fix_input_types
feature flag -
Create an
included.yml
file in the root directory of a project. Give it the following contentspec: inputs: a: b: c: --- my-job: script: echo "$[[ inputs.a ]] $[[ inputs.b ]] $[[ inputs.c ]]"
-
Put this content in the pipeline editor:
include: - local: included.yml inputs: a: 'a' b: 'b' c: 'c'
-
See that the Full configuration tab shows the echo statement as
echo "a b c"
Edited by Avielle Wolfe