小编adi*_*tya的帖子

如何使用 client-go 删除 k8s 集群(所有命名空间)中的所有自定义资源

我正在尝试使用 client-go 删除 k8s 集群中特定类型的资源。

我正在使用此代码,但它需要声明特定的命名空间,但我想删除所有命名空间中的此资源。

    u.SetName("test")
    u.SetNamespace(v1.NamespaceAll)
    u.SetGroupVersionKind(schema.GroupVersionKind{
        Group:   "group",
        Kind:    "kind",
        Version: "v1",
    })
    err := k8sClient.Delete(context.TODO(), u)

    if err != nil {
        fmt.Println(err.Error())
        return err
    }
Run Code Online (Sandbox Code Playgroud)

在这里找到了示例 - https://pkg.go.dev/sigs.k8s.io/controller-runtime/pkg/client 但它没有提及有关所有命名空间的任何内容。有人可以提供一种方法来解决这个问题吗?

注意:这是自定义资源。不是默认类型,例如 pod 或部署等

go kubernetes client-go

5
推荐指数
1
解决办法
1931
查看次数

标签 统计

client-go ×1

go ×1

kubernetes ×1