This will fix Helm inline values patch rendering
When using inline values such as:
```
inline_values:
service:
ports:
http: "8080"
https: "8443"
```
The current `full_json_patch()` function was failing with error: `Error:
bad expression, please check expression syntax`. This is because yq
seems like doesn't properly handle literal new-lines inside a
double-quoted string.
This change replace current implementation to a safer approach using
HEREDOCS template to render the patch.
Change-Id: If7e78a6509ca0e6731f3125eeb535cedf394b06b
Signed-off-by: mesaj <juanmanuel.mesamendez.ext@telefonica.com>
Signed-off-by: garciadeblas <gerardo.garciadeblas@telefonica.com>
done
# Wrap a full patch around, adding target specification
+ export PATCH_CONTENT
local PATCH_FULL=$(
yq --null-input ".target.kind = \"${TARGET_KIND}\", .target.name = \"${TARGET_NAME}\"" | \
- yq ".patch = \"${PATCH_CONTENT}\"" | \
+ yq ".patch = env(PATCH_CONTENT)" | \
yq "[ . ]"
)