一篇带你创建 Tekton 流水线
前面我们创建的两个任务 test 和 build-and-push 都已经完成了,我们还可以创建一个流水线来将这两个任务组织起来,形成一个流水线,这里就是我们要使用的 Pipeline 这个 CRD 对象。
创建流水线
比如我们这里的流水线流程为先运行 test 任务,如果通过了再执行后面的 build-and-push 这个任务,那么我们可以创建一个名为 test-pipeline.yaml 的资源对象,内容如下所示:
# test-pipeline.yaml apiVersion: tekton.dev/v1beta1 kind: Pipeline metadata: 一篇; name: test-pipeline spec: resources: # 为 Tasks 提供输入和输出资源声明 - name: demo-git type: git - name: harbor-image &nbs带你p; type: image tasks: # 添加task到流水线中 # 运行应用测试 - name: test taskRef: name: test&n创建bsp; resources: inputs: - name: repo # Task 输入名称 resou Trce: demo-git # Pipeline 资源名称 # 构建并推送 Docker 镜像 - name: build-and-push taskRef: name: build-and-push &nbsekp; runAfter: - test # 测试任务执行之后 resources: inputs: - name: repo to; # 指定输入的git仓库资源 resource: demo-git outputs: # 指定输出的镜像资源 - name: builtImage n resource: harbor-image
首先我们需要定义流水线需要哪些资源,可以是输入或者输出的资源,在这里我们只有一个输入,那就是命名为 repo 的应用程序源码的 GitHub 仓库。接下来定义任务,每个任务都通过 taskRef 进行引用,并传递任务需要的输入参数。
同样直接创建这个资源对象即可:
$ kubectl apply -f test-pipeline.yaml pipeline.tekton.dev/test-pipeline created&n流水bsp;
前面我们提到过和通过创建 TaskRun 去触发 Task 任务类似,我们可以通过创建一个 PipelineRun 对象来运行流水线。这里我们创建一个名为 test-pipelinerun.yaml 的 PipelineRun 对象来运行流水线,文件内容如下所示:
apiVersion: tekton.dev/v1beta1 kind: PipelineRun metadata: name: test-pipelinerun spec: serviceAccountName: build-sa一篇 pipelineRef: name: test-pipeline resources: - name: demo-git # 指定输入的git仓库资源 resourceRef: name: demo-git -&带你nbsp;name: harbor-image # 指定输出的镜像资源 resourceRef: name: harbor-image
定义方式和 TaskRun 几乎一样,通过 serviceAccountName 属性指定 ServiceAccount 对象,pipelineRef 关联流水线对象。同样直接创建这个资源,创建后就会触发我们的流水线任务了:
$ kubectl apply -f&nb创建sp;test-pipelinerun.yaml pipelinerun.tekton.dev/test-pipelinerun created $ github kubectl get pods | grep test-pipelinerun test-pipelinerun-build-and-push-62g65-pod-6jqqf 0/4 Init:1/2   T;0 3s test-pipelinerun-test-c4r9m-pod-j7jjd 0/2 Completed 0 12eks $ tkn pipelinerun describe test-pipelinerun Name: test-pipelinerun Namespace: default Pipeline Ref: &ntobsp; test-pipeline Service Account: build-sa Timeout: 1h0m0s Labels: tekton.dev/pipeline=test-pipeline
- ·谷歌宣布将于周四撤销政治广告临时禁令
- ·标签: Cerebras CBRS AI芯片 IPO
- ·标签: 车来了 元光科技 MetaLight 实时公交
- ·标签: OpenAI Anthropic 谷歌 DeepSeek
- ·标签: 鹿明机器人 三菱电机 具身智能 工业自动化
- ·年亏损超13亿!国产老牌手机巨头没落,辉煌时仅次苹果全球第二
- ·标签: 陈天桥 盛大集团 发现式AI ChatGPT
- ·标签: 腾讯AI 马化腾 人工智能
- ·标签: 新茶饮
- ·标签: 小牛电动 电动滑板车 财报 2025年
- ·标签: 三七互娱 斗罗大陆:猎魂世界 Puzzles&Survival SLG
- ·迪迦奥特曼有什么梗
- ·人工智能的就业前景有多广阔?这些岗位很缺人,“钱途”远大
- ·标签: 冷酸灵 医研 小童 厨邦
- ·标签: TCL华星 福州华兆光电 Mini LED LED芯片
- ·云安全日报210115:思科AnyConnect安全客户端发现DDL注入漏洞,需要尽快升级
- ·OpenAI估值飙至5000亿美元!员工套现66亿,创私企纪录
- ·标签: 沪鸽口腔 弹性体印模材料 合成树脂牙 隐形正畸矫治器
- ·英伟达发布首款基于ARM架构的数据中心CPU 可能对英特尔构成威胁
- ·IBM发布IBM Watson创新功能 旨在帮助企业扩展人工智能使用
- ·文远知行获Grab数千万美元投资,东南亚将迎来数千辆无人驾驶出租车
- ·标签: 医脉通 人工智能+医学研究 北京市自然科学基金 朝阳创新联合基金
- ·智元机器人发布开源 GO-1 模型,推动具身智能技术普及
- ·英伟达拟向AI初创公司Poolside投资10亿美元,估值飙升至120亿
- ·标签: 助贷 互联网助贷行业
- ·纽约州起诉Coinbase与Gemini,指控其涉嫌非法经营预测市场
