Java 如何使用fabric8::tekton客户端在taskRun中生成嵌入式资源
我使用fabric8::tekton客户端(v4.7.1)生成“taskRun”对象 下面是使taskRun运行的示例代码Java 如何使用fabric8::tekton客户端在taskRun中生成嵌入式资源,java,kubernetes,fabric8,tekton-pipelines,Java,Kubernetes,Fabric8,Tekton Pipelines,我使用fabric8::tekton客户端(v4.7.1)生成“taskRun”对象 下面是使taskRun运行的示例代码 public TaskRun createTaskRun() { TaskRun tr = new TaskRunBuilder() .withApiVersion("tekton.dev/v1alpha1") .withNewMetadata() .withName("sample-taskrun") .endMet
public TaskRun createTaskRun() {
TaskRun tr = new TaskRunBuilder()
.withApiVersion("tekton.dev/v1alpha1")
.withNewMetadata()
.withName("sample-taskrun")
.endMetadata()
.withNewSpec()
.withServiceAccountName("build-bot")
.withTaskRef(
new TaskRefBuilder().withName("s2i").withApiVersion("tekton.dev/v1alpha1").withKind("Task").build()
)
.withNewInputs()
.addNewParam()
.withName("BUILDER_IMAGE")
.withValue(new ArrayOrString("docker.io/centos/nodejs-8-centos7"))
.endParam()
.addNewResource()
.withNewName("source")
.withNewResourceSpec()
.withType("git")
.addNewParam("url", "https://github.com/sclorg/nodejs-ex")
.endResourceSpec()
.endPipelineResourceBinding()
.endResource()
.endInputs()
.withNewOutputs()
.addNewResource()
.withName("image")
.withNewResourceSpec()
.withType("image")
.addNewParam("url", "192.168.6.82:5000/nodejs-ex")
.endResourceSpec()
.endResource()
.endOutputs()
.endSpec().build();
return tr;
}
在这部法典中
.withName(“来源”)
出现错误:“错误:找不到符号”
但最新的tekton管道(v0.10.1)规范允许在taskRun中嵌入资源及其名称字段
如何使用fabric8::tekton客户端(v4.7.1)在taskRun中声明嵌入式资源?我认为fabric8 Kubernetes客户端的模型现在是v0.9.0。我想我们几个月前更新了模型。但是这些泰克顿和克纳提夫的性器官移动得如此之快;-)。请您提交一个问题,将tekton型号升级到最新版本好吗?@RohanKumar感谢您的评论。我认为问题出在tekton客户端api上。tekton client的最新版本没有用于定义资源的“withName()”和“withNewResourceSpec()”函数,因此我无法为taskRun定义新资源。相反,我找到了“withNewPipelineResourceBinding()”函数。这个函数是定义taskRun资源的新函数吗?是的,可能是。我们使用sundrio库从go结构和构建器生成POJO。所以这个字段可能是在上次更新的版本中引入的。但是,当我使用“withNewPipelineResourceBinding()”时,我成功地编译了,但发生了运行时错误。未知字段“pipelineResourceBinding”。我用tekton型号v0.10.1和v.0.9.0都试过了。是否有api的文档或示例?您可以在中找到示例