Java 如何使用fabric8::tekton客户端在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

我使用fabric8::tekton客户端(v4.7.1)生成“taskRun”对象

下面是使taskRun运行的示例代码

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的文档或示例?您可以在中找到示例