kubernetes/kops · error
error marshaling manifest to yaml: %v
Error message
error marshaling manifest to yaml: %v
What it means
Wraps a failure of k8scodecs.ToVersionedYaml while serializing the kube-apiserver static pod manifest to YAML. The pod object built fine but could not be encoded, so the manifest file cannot be written.
Source
Thrown at nodeup/pkg/model/kube_apiserver.go:246
}
if err := b.writeKubeletAPICertificate(c, &kubeAPIServer); err != nil {
return err
}
if err := b.writeStaticCredentials(c, &kubeAPIServer); err != nil {
return err
}
{
pod, err := b.buildPod(ctx, &kubeAPIServer)
if err != nil {
return fmt.Errorf("error building kube-apiserver manifest: %v", err)
}
manifest, err := k8scodecs.ToVersionedYaml(pod)
if err != nil {
return fmt.Errorf("error marshaling manifest to yaml: %v", err)
}
c.AddTask(&nodetasks.File{
Path: "/etc/kubernetes/manifests/kube-apiserver.manifest",
Contents: fi.NewBytesResource(manifest),
Type: nodetasks.FileType_File,
})
}
// If we're using kube-apiserver-healthcheck, we need to set up the client cert etc
if b.findHealthcheckManifest() != nil {
if err := b.addHealthcheckSidecarTasks(c); err != nil {
return err
}
}
c.AddTask(&nodetasks.File{
Path: "/var/log/kube-apiserver.log",View on GitHub (pinned to 4c8573c808)
Solutions
- Report to kOps maintainers — likely an unencodable field
- Check for incompatible APIServerConfig options
- Try a different kOps release
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at nodeup/pkg/model/kube_apiserver.go:246 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05).
Data as JSON: /api/errors/8785cfd01e43da42.
Report an issue: GitHub.