You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Kubernetes/OpenShift API启动Tekton PipelineRun

通过Kubernetes API触发Tekton Pipeline的实现方案(OpenShift环境适用)

可以直接通过Kubernetes原生API实现Tekton Pipeline的触发,Tekton所有核心资源都是Kubernetes CRD,OpenShift完全兼容该操作逻辑,不需要依赖Triggers或者tkn命令行。

核心实现逻辑

直接向Kubernetes API发起POST请求,创建对应命名空间下的PipelineRun自定义资源即可,Tekton Pipeline控制器会自动监听到资源创建事件,触发对应的Pipeline执行。

具体操作步骤

  • 确认API信息
    Tekton Pipeline v1版本的API组为tekton.dev,资源路径为:
    /apis/tekton.dev/v1/namespaces/<目标命名空间>/pipelineruns
    你可以先通过kubectl api-resources | grep pipelineruns确认当前集群部署的Tekton版本对应的API版本,部分旧版本可能使用tekton.dev/v1beta1。
  • 构造请求体
    标准的PipelineRun JSON结构示例如下,你可以根据你的Pipeline的参数、工作空间、服务账号配置调整:
{
  "apiVersion": "tekton.dev/v1",
  "kind": "PipelineRun",
  "metadata": {
    "generateName": "run-<你的pipeline名称>-",
    "namespace": "<目标命名空间>",
    "labels": {
      "tekton.dev/pipeline": "<你的pipeline名称>"
    }
  },
  "spec": {
    "pipelineRef": {
      "name": "<你的pipeline名称>"
    },
    "params": [
      {
        "name": "<参数1名称>",
        "value": "<参数1值>"
      }
    ],
    "workspaces": [
      {
        "name": "<工作空间名称>",
        "persistentVolumeClaim": {
          "claimName": "<PVC名称>"
        }
      }
    ],
    "serviceAccountName": "<执行pipeline用的服务账号名称>"
  }
}
  • 发起API请求
    OpenShift环境下可以直接使用OpenShift OAuth令牌发起请求,示例curl命令:
curl -X POST \
  https://<你的OpenShift API地址>/apis/tekton.dev/v1/namespaces/<目标命名空间>/pipelineruns \
  -H "Authorization: Bearer <你的OAuth令牌>" \
  -H "Content-Type: application/json" \
  -d '@<你的pipelinerun配置文件路径>.json'

实用验证技巧

你可以直接通过tkn命令行的verbose模式查看官方命令行底层的API调用逻辑,运行tkn pipeline start <你的pipeline名称> -v 6即可看到完整的请求路径、请求头、请求体内容,直接复用对应配置即可避免构造错误。

权限说明

调用API的身份(用户/服务账号)需要在对应命名空间下拥有pipelineruns.create权限,你可以通过以下Role配置授权:

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: <目标命名空间>
  name: pipelinerun-creator
rules:
- apiGroups: ["tekton.dev"]
  resources: ["pipelineruns"]
  verbs: ["create"]

内容的提问来源于stack exchange,提问作者Bharath

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 05:45:00