使用 hub resolver 指定远程 Task

功能概述

Task 是用于 CI/CD 流程的可复用构建块。 在创建 Pipeline 运行或 TaskRun 时,您可以从 Hub 上可用的 Catalog 中指定一个远程 Task。 系统提供了默认的 Hub 实例,可直接使用。

步骤

1. 使用 Web 控制台选择 Task

  1. 进入 Container Platform。
  2. 在左侧导航栏中,单击 Pipelines > Pipelines。
  3. 创建一个 Pipeline,然后您就可以从 Catalog 中选择远程 Task。

2. 使用 hub resolver 指定远程 Task

要指定远程 Task,请在 taskRef 中使用以下引用格式:

# ...
  taskRef:
    resolver: hub
    params:
    - name: catalog
      value: catalog
    - name: kind
      value: task
    - name: name
      value: <resource_name>
    - name: version
      value: "<resource_version>"
# ...
参数说明示例值
catalog用于拉取资源的 catalog。catalog
kindtask 或 pipeline。task
name要从 hub 获取的 task 或 pipeline 的名称。git-cli
version要从 hub 获取的 task 或 pipeline 的版本。数字周围必须使用引号 (")。"0.4"

如果 Task 需要其他参数,请在 Pipeline 或 TaskRun 规范的 params 部分中为这些参数指定值。 taskRef 规范中的 params 部分只能包含该 resolver 支持的参数。

示例:

以下示例 Pipeline 引用了 Catalog 中的远程 Task:

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: pipeline-with-hub-task-reference-demo
spec:
  tasks:
  - name: "cluster-task-reference-demo"
    taskRef:
      resolver: hub
      params:
      - name: catalog
        value: catalog
      - name: kind
        value: task
      - name: name
        value: git-cli
      - name: version
        value: "0.4"
    params:
    - name: sample-task-parameter
      value: "foo"

以下示例 TaskRun 引用了 Catalog 中的远程 Task:

apiVersion: tekton.dev/v1
kind: TaskRun
metadata:
  name: hub-task-reference-demo
spec:
  taskRef:
    resolver: hub
    params:
    - name: catalog
      value: catalog
    - name: kind
      value: task
    - name: name
      value: git-cli
    - name: version
      value: "0.4"
  params:
  - name: sample-task-parameter
    value: "foo"

了解更多