You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
sudo podman run --rm --privileged -it -v <path_to_eib_dir>:/eib eib:dev build -definition-file <definition_file>.yaml -config-dir /eib -build-dir /eib/_build
Generating image customization components...
Identifier ................... [SUCCESS]
Custom Files ................. [SKIPPED]
Time ......................... [SKIPPED]
Network ...................... [SKIPPED]
Groups ....................... [SKIPPED]
Users ........................ [SUCCESS]
Proxy ........................ [SKIPPED]
Rpm .......................... [SKIPPED]
Systemd ...................... [SKIPPED]
Elemental .................... [SKIPPED]
Suma ......................... [SKIPPED]
Embedded Artifact Registry ... [FAILED ]
Error configuring customization components, check the logs under the build directory for more information.
(4) eib-build.log:
2024-03-13T13:52:27.148Z WARN kubernetes/cluster.go:103 Kubernetes config file '/eib/kubernetes/config/server.yaml' was not provided
2024-03-13T13:52:27.148Z INFO combustion/network.go:53 Configuring network component...
2024-03-13T13:52:27.148Z INFO combustion/network.go:57 Skipping network component, configuration is not provided
2024-03-13T13:52:27.149Z INFO combustion/rpm.go:32 Skipping RPM component. Configuration is not provided
2024-03-13T13:52:27.149Z INFO combustion/elemental.go:36 Skipping elemental registration component, configuration is not provided
2024-03-13T13:52:28.519Z FATAL build/build.go:92 An error occurred building the image: configuring combustion: configuring component "embedded artifact registry": configuring embedded artifact registry: parsing helm charts: handling chart resource: getting chart container images: templating chart: parsing chart contents: decoding resource from source' Skip the app [${app}] in the namespace [${namespace}]"': yaml: unmarshal errors:
line 1: cannot unmarshal !!str `continu...` into map[string]interface {}
github.com/suse-edge/edge-image-builder/pkg/cli/build.Run
/src/pkg/cli/build/build.go:92
github.com/urfave/cli/v2.(*Command).Run
/go/pkg/mod/github.com/urfave/cli/v2@v2.27.1/command.go:279
github.com/urfave/cli/v2.(*Command).Run
/go/pkg/mod/github.com/urfave/cli/v2@v2.27.1/command.go:272
github.com/urfave/cli/v2.(*App).RunContext
/go/pkg/mod/github.com/urfave/cli/v2@v2.27.1/app.go:337
github.com/urfave/cli/v2.(*App).Run
/go/pkg/mod/github.com/urfave/cli/v2@v2.27.1/app.go:311
main.main
/src/cmd/eib/main.go:18
runtime.main
/usr/lib64/go/1.22/src/runtime/proc.go:271
(5) looking at the helm-template.log I can see the following resource that Rancher ships:
# Source: rancher/templates/post-delete-hook-config-map.yamlapiVersion: v1kind: ConfigMap
....data:
post-delete-hook.sh: |- #!/bin/bash....for namespace in ${namespaces}; dofor app in $(helm list -n "${namespace}" -q); doif [[ ${app} =~ .crd$ ]]; thenecho "--- Skip the app [${app}] in the namespace [${namespace}]"continuefiecho "--- Deleting the app [${app}] in the namespace [${namespace}]"if [[ ! $(helm uninstall "${app}" -n "${namespace}") ]]; thenfailed=("${failed[@]}" "${app}")continuefi....
It would seem that the post-delete-hook-config-map.yaml config map ships a script that uses the --- characters within its data. This results in the EIB logic breaking at the parseChartContents function, because it splits the chartContents by ---.
We should find a better delimiter for the chartContents than ---.
The text was updated successfully, but these errors were encountered:
When you attempt to deploy a helm chart that has a Kubernetes resource that contains
---
, the EIB helm chart decode logic breaks.Below you can find an example of the problem by trying to deploy Rancher in a RKE2 cluster setup by EIB:
(1) Configure EIB to deploy Rancher through EIB's configuration file:
(2)
rancher-values.yaml
:(3) Execute EIB container:
(4)
eib-build.log
:(5) looking at the
helm-template.log
I can see the following resource that Rancher ships:It would seem that the
post-delete-hook-config-map.yaml
config map ships a script that uses the---
characters within itsdata
. This results in the EIB logic breaking at theparseChartContents
function, because it splits thechartContents
by---
.We should find a better delimiter for the
chartContents
than---
.The text was updated successfully, but these errors were encountered: