Kubernetes API CRD更新

时间:2018-01-03 21:19:45

标签: kubernetes google-cloud-platform

result, err := crdclient.Create(example)
if err == nil {
    fmt.Printf("CREATED: %#v\n", result)
} else if apierrors.IsAlreadyExists(err) {
    fmt.Printf("ALREADY EXISTS: %#v\n", result)
} else {
    panic(err)
}

// List all Example objects
items, err := crdclient.List(meta_v1.ListOptions{})
if err != nil {
    panic(err)
}
fmt.Printf("List:\n%s\n", items)

result, err = crdclient.Get("example123")
if err != nil {
    panic(err)
}
fmt.Printf("Get:\n%v\n", result)

result.Status.Message = "Hello There"
fmt.Println("\n Result is: %v \n", result)
up, uperr := crdclient.Update(result)
if uperr != nil {
    panic(uperr)
}

在以上带有kubernetes API的CRD示例中,我收到错误。 “在更新通话中 恐慌:名称必须提供“

我错过了什么?代码基于@ https://github.com/yaronha/kube-crd

给出的样本

1 个答案:

答案 0 :(得分:1)

我查看了代码,您需要使用以下代码更新client.go文件中的Update API:

{ training: { $not: {$elemMatch: {id: "11111" } } }

之后,您的代码应按预期工作。