使用 hub resolver 指定远程 pipeline

功能概述

Pipelines 是用于 CI/CD 流程的可重用块。 在创建 pipeline run 时,您可以从 DevOps Hub 上可用的 Catalog 中指定一个远程 pipeline。ACP DevOps 通过 artifacthub-shim 提供内置的 Hub catalog。

步骤

1. 选择一个 Pipeline

以下是 Hub 上可用的 pipelines:

  • java-image-build-scan-deploy
  • python-image-build-scan-deploy

2. 使用 hub resolver 指定远程任务

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

# ...
spec:
  pipelineRef:
    resolver: hub
    params:
    - name: type
      value: artifact
    - name: catalog
      value: catalog-pipelines
    - name: kind
      value: pipeline
    - name: name
      value: <resource_name>
    - name: version
      value: "<resource_version>"
# ...
参数描述示例值
typeHub 后端类型。对 artifacthub-shim 使用 artifactartifact
catalog用于拉取资源的 catalog。内置 Pipelines 使用 catalog-pipelinescatalog-pipelines
kind可以是 task 或 pipeline。pipeline
name要从 hub 获取的 task 或 pipeline 名称。java-image-build-scan-deploy
version要从 hub 获取的 task 或 pipeline 版本。数字周围必须使用引号 (")。"0.1"

如果 pipeline 需要额外参数,请在 pipeline run 规格的 params 部分中为这些参数指定值。 pipelineRef 规格中的 params 部分只能包含 resolver 支持的参数。

示例:

以下示例 pipeline run 引用了来自 catalog 的远程 pipeline:

apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
  name: hub-pipeline-reference-demo
spec:
  pipelineRef:
    resolver: hub
    params:
    - name: type
      value: artifact
    - name: catalog
      value: catalog-pipelines
    - name: kind
      value: pipeline
    - name: name
      value: java-image-build-scan-deploy
    - name: version
      value: "0.1"
  params:
  - name: sample-pipeline-parameter
    value: test

了解更多