我正在尝试编写一个 k8s 控制器,在控制器中我想将 YAML 文件从 Github 解析为unstructured. Unstructured
. 解析后,我想跟踪应用实例的状态unstructured. Unstructured
。如果存在特定的键值,跟踪将尝试捕获。
我没有这样做,因为unstructured. Unstructured
没有获取状态的方法。然后我试图将它编组为 JSON 并找到状态,也失败了......
如果您知道实现这些目标的方法,那就太好了。
我正在尝试编写一个 k8s 控制器,在控制器中我想将 YAML 文件从 Github 解析为unstructured. Unstructured
. 解析后,我想跟踪应用实例的状态unstructured. Unstructured
。如果存在特定的键值,跟踪将尝试捕获。
我没有这样做,因为unstructured. Unstructured
没有获取状态的方法。然后我试图将它编组为 JSON 并找到状态,也失败了......
如果您知道实现这些目标的方法,那就太好了。
非结构化包提供“嵌套”功能。 https://godoc.org/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured
对于状态,您将使用:
unstructured.NestedStringMap(myunstruct.Object, "status")
对于状态消息:
unstructured.NestedString(myunstruct.Object, "status", "message")
有关动态客户端的更多讨论,请参阅 Stefan Schimanski 和 Michael Hausenblas编写的Programming Kubernetes第 4 章。