tink
tink copied to clipboard
Template error upon during iPXE started applying,
Expected Behaviour
Once iPXE started execution it will be good if we can reduce failure points.
Current Behaviour
Received the following error in tink-controller logs, while the template created in the cluster.
{"level":"info","ts":1676561487.8689735,"logger":"fallback.controller.workflow","caller":"workflow/controller.go:41","msg":"Reconciling","reconciler group":"tinkerbell.org","reconciler kind":"Workflow","name":"test-server-1","namespace":"tink-system"}
{"level":"error","ts":1676561487.869866,"logger":"fallback.controller.workflow","caller":"controller/controller.go:317","msg":"Reconciler error","reconciler group":"tinkerbell.org","reconciler kind":"Workflow","name":"test-server-1","namespace":"tink-system","error":"parsing yaml data: yaml: line 18: did not find expected key","errorVerbose":"yaml: line 18: did not find expected key\nparsing yaml data\ngithub.com/tinkerbell/tink/workflow.Parse\n\t/home/runner/work/tink/tink/workflow/template_validator.go:33\ngithub.com/tinkerbell/tink/workflow.RenderTemplateHardware\n\t/home/runner/work/tink/tink/workflow/template_validator.go:96\ngithub.com/tinkerbell/tink/pkg/controllers/workflow.(*Controller).processNewWorkflow\n\t/home/runner/work/tink/tink/pkg/controllers/workflow/controller.go:118\ngithub.com/tinkerbell/tink/pkg/controllers/workflow.(*Controller).Reconcile\n\t/home/runner/work/tink/tink/pkg/controllers/workflow/controller.go:61\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile\n\t/home/runner/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:114\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/home/runner/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:311\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/home/runner/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/home/runner/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:227\nruntime.goexit\n\t/opt/hostedtoolcache/go/1.18.5/x64/src/runtime/asm_amd64.s:1571","stacktrace":"sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\t/home/runner/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:317\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\t/home/runner/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:266\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2\n\t/home/runner/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:227"}
Possible Solution
While applying a Template, it will be good to validate before its being used during actual execution in the node.