首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用kubebuilder的client.List方法?

如何使用kubebuilder的client.List方法?
EN

Stack Overflow用户
提问于 2019-05-03 00:00:39
回答 1查看 314关注 0票数 0

我正在使用kubebuilder (1.0.8版)为一个自定义资源开发一个自定义控制器。我有一个场景,我需要获得我的自定义资源的所有实例的列表,以便我可以与外部数据库同步。

我所见过的kubernetes控制器的所有示例要么使用client-go,要么直接通过http调用api服务器。但是,kubebuilder也提供了这个client.Client对象来获取和列出资源。所以我试着利用这一点。

在使用传入的管理器实例创建客户端实例(即执行mgr.GetClient())之后,我尝试编写一些代码来获取我创建的所有环境资源的列表。

代码语言:javascript
复制
func syncClusterWithDatabase(c client.Client, db *dynamodb.DynamoDB) {
    // Sync environments
    // Step 1 - read all the environments the cluster knows about
    clusterEnvironments := &cdsv1alpha1.EnvironmentList{}

    c.List(context.Background(), /* what do I put here? */, clusterEnvironments)
}

List方法文档中的示例显示:

代码语言:javascript
复制
c.List(context.Background, &result);

它甚至不能编译。

我在客户端包中看到了一些方法,用于将搜索限制为特定标签或具有特定值的特定字段,但没有将结果限制为特定资源类型。

有没有办法通过Client对象做到这一点?我应该做一些完全不同的事情吗?

EN

回答 1

Stack Overflow用户

发布于 2019-05-08 06:21:06

所以解决了这个问题-答案是为第二个参数传递nil。输出指针的类型决定了它实际检索的资源类型。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55956244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档