検索

3.2. Tekton バンドルからのリモートパイプラインまたはタスクの指定

download PDF

バンドルリゾルバーを使用して、Tekton バンドルからリモートパイプラインまたはタスクを指定できます。Tekton バンドルは、OpenShift コンテナーリポジトリーなどの任意の OCI リポジトリーから利用できる OCI イメージです。

3.2.1. バンドルリゾルバーの設定

バンドルリゾルバーを設定することで、Tekton バンドルからリソースを取得するためのデフォルトのサービスアカウント名とデフォルトの種類を変更できます。

手順

  1. TektonConfig カスタムリソースを編集するには、次のコマンドを入力します。

    $ oc edit TektonConfig config
  2. TektonConfig カスタムリソースで、pipeline.bundles-resolver-config 仕様を編集します。

    apiVersion: operator.tekton.dev/v1alpha1
    kind: TektonConfig
    metadata:
      name: config
    spec:
      pipeline:
        bundles-resolver-config:
          default-service-account: pipelines 1
          default-kind: task 2
    1
    バンドルリクエストに使用するデフォルトのサービスアカウント名。
    2
    バンドルイメージのデフォルトレイヤーの種類。

3.2.2. バンドルリゾルバーを使用したリモートパイプラインまたはタスクの指定

パイプライン実行を作成するときに、Tekton バンドルからリモートパイプラインを指定できます。パイプラインまたはタスク実行を作成するときに、Tekton バンドルからリモートタスクを指定できます。

手順

  • Tekton バンドルからリモートパイプラインまたはタスクを指定するには、pipelineRef または taskRef 仕様で次の参照形式を使用します。

    # ...
      resolver: bundles
      params:
      - name: bundle
        value: <fully_qualified_image_name>
      - name: name
        value: <resource_name>
      - name: kind
        value: [pipeline|task]
    # ...
    表3.2 バンドルリゾルバーでサポートされているパラメーター
    パラメーター説明値の例

    serviceAccount

    レジストリー認証情報を作成するときに使用するサービスアカウントの名前。

    default

    bundle

    取得するイメージを指すバンドル URL。

    gcr.io/tekton-releases/catalog/upstream/golang-build:0.1

    name

    バンドルから取り出すリソースの名前。

    golang-build

    kind

    バンドルから取り出すリソースの種類。

    task

    パイプラインまたはタスクに追加のパラメーターが必要な場合は、パイプライン、パイプライン実行、またはタスク実行の仕様の params セクションでこれらのパラメーターの値を指定します。pipelineRef または taskRef 仕様の params セクションには、リゾルバーがサポートするパラメーターのみを含める必要があります。

次のパイプライン実行の例は、Tekton バンドルからのリモートパイプラインを参照します。

apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
  name: bundle-pipeline-reference-demo
spec:
  pipelineRef:
    resolver: bundles
    params:
    - name: bundle
      value: registry.example.com:5000/simple/pipeline:latest
    - name: name
      value: hello-pipeline
    - name: kind
      value: pipeline
  params:
  - name: sample-pipeline-parameter
    value: test
  - name: username
    value: "pipelines"

次のパイプラインの例は、Tekton バンドルからのリモートタスクを参照します。

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: pipeline-with-bundle-task-reference-demo
spec:
  tasks:
  - name: "bundle-task-demo"
    taskRef:
      resolver: bundles
      params:
      - name: bundle
        value: registry.example.com:5000/advanced/task:latest
      - name: name
        value: hello-world
      - name: kind
        value: task
    params:
    - name: sample-task-parameter
      value: test

次のタスク実行例では、Tekton バンドルのリモートタスクを参照しています。

apiVersion: tekton.dev/v1
kind: TaskRun
metadata:
  name: bundle-task-reference-demo
spec:
  taskRef:
    resolver: bundles
    params:
    - name: bundle
      value: registry.example.com:5000/simple/new_task:latest
    - name: name
      value: hello-world
    - name: kind
      value: task
  params:
  - name: sample-task-parameter
    value: test
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.