3.8. OpenShift Pipelines namespace で提供されるコミュニティータスク


デフォルトで、OpenShift Pipelines インストールには、パイプラインで使用できる一連のコミュニティータスクが含まれています。これらのタスクは、OpenShift Pipelines インストール namespace (通常は openshift-pipelines namespace) にあります。

argocd-task-sync-and-wait

argocd-task-sync-and-wait コミュニティータスクは、Argo CD アプリケーションをデプロイし、それが正常であるまで待機します。

これを実行するには、次の設定が必要です。* argocd-env-configmap 設定マップで設定された Argo CD サーバーのアドレス。* argocd-env-secret シークレットで設定された認証情報。

アドレス情報を含む config map の例

apiVersion: v1
kind: ConfigMap
metadata:
  name: argocd-env-configmap
data:
  ARGOCD_SERVER: https://argocd.example.com
# ...

認証情報を含むシークレットの例

apiVersion: v1
kind: Secret
metadata:
  name: argocd-env-secret
data:
  # Option 1
  ARGOCD_USERNAME: example_username 1
  ARGOCD_PASSWORD: example_password
  # Option 2
  ARGOCD_AUTH_TOKEN: exmaple_token

1
ユーザー名とパスワードまたは認証トークンを設定します。

argocd-task-sync-and-wait コミュニティータスクの使用例

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: argocd-task-sync-and-wait
spec:
  tasks:
    - name: argocd-task-sync-and-wait
      params:
        - name: application-name
          value: example_app_name
        - name: revision
          value: HEAD
        - name: flags
          value: '--'
        - name: argocd-version
          value: v2.2.2
      taskRef:
        kind: Task
        name: argocd-task-sync-and-wait

表3.52 argocd-task-sync-and-wait コミュニティータスクでサポートされているパラメーター
パラメーター説明デフォルト値

application-name

デプロイするアプリケーションの名前。

 

revision

デプロイするリビジョン。

HEAD

flags

 

--

argocd-version

Argo CD のバージョン。

v2.2.2

helm-upgrade-from-repo

helm-upgrade-from-repo コミュニティータスクは、指定の Helm リポジトリーとチャートに基づいて OpenShift Container Platform クラスターに Helm チャートをインストールまたはアップグレードします。

helm-upgrade-from-repo コミュニティータスクの使用例

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: helm-upgrade-from-repo
spec:
  tasks:
    - name: helm-upgrade-from-repo
      params:
        - name: helm_repo
          value: example_helm_repository
        - name: chart_name
          value: example_chart_name
        - name: release_version
          value: v1.0.0
        - name: release_name
          value: helm-release
        - name: release_namespace
          value: ''
        - name: overwrite_values
          value: ''
        - name: helm_image
          value: 'docker.io/lachlanevenson/k8s-helm@sha256:5c792f29950b388de24e7448d378881f68b3df73a7b30769a6aa861061fd08ae'
      taskRef:
        kind: Task
        name: helm-upgrade-from-repo

表3.53 helm-upgrade-from-repo コミュニティータスクでサポートされているパラメーター
パラメーター説明デフォルト値

helm_repo

Helm リポジトリー。

 

chart_name

デプロイする Helm チャート名。

 

release_version

セマンティックバージョニング形式の Helm リリースバージョン。

v1.0.0

release_name

Helm リリース名。

helm-release

release_namespace

Helm リリース namespace。

""

overwrite_values

上書きする設定パラメーター(コンマ区切り)。例: autoscaling.enabled=true,replicas=1

""

helm_image

使用する Helm イメージ。

docker.io/lachlanevenson/k8s-helm@sha256:5c792f29950b388de24e7448d378881f68b3df73a7b30769a6aa861061fd08ae

helm-upgrade-from-source

helm-upgrade-from-source コミュニティータスクは、指定されたチャートおよびソースワークスペースに基づいて OpenShift Container Platform クラスターに Helm チャートをインストールし、アップグレードします。

helm-upgrade-from-source コミュニティータスクの使用例

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: helm-upgrade-from-source
spec:
  tasks:
    - name: helm-upgrade-from-source
      params:
        - name: charts_dir
          value: example_directory_path
        - name: release_version
          value: v1.0.0
        - name: release_name
          value: helm-release
        - name: release_namespace
          value: ''
        - name: overwrite_values
          value: ''
        - name: values_file
          value: values.yaml
        - name: helm_image
          value: 'docker.io/lachlanevenson/k8s-helm@sha256:5c792f29950b388de24e7448d378881f68b3df73a7b30769a6aa861061fd08ae'
        - name: upgrade_extra_params
          value: ''
      taskRef:
        kind: Task
        name: helm-upgrade-from-source
      workspaces:
        - name: source
          workspace: shared-workspace
  #...

表3.54 helm-upgrade-from-source コミュニティータスクでサポートされているパラメーター
パラメーター説明デフォルト値

charts_dir

Helm チャートを含むソースワークスペースのディレクトリー。

 

release_version

セマンティックバージョニング形式の Helm リリースバージョン。

v1.0.0

release_name

Helm リリース名。

helm-release

release_namespace

Helm リリース namespace。

""

overwrite_values

上書きする設定パラメーター(コンマ区切り)。例: autoscaling.enabled=true,replicas=1

""

values_file

Helm の設定パラメーターを含むファイル。

values.yaml

helm_image

使用する Helm イメージ。

docker.io/lachlanevenson/k8s-helm@sha256:5c792f29950b388de24e7448d378881f68b3df73a7b30769a6aa861061fd08ae

upgrade_extra_params

Helm upgrade コマンドに追加される追加のパラメーター。

""

表3.55 helm-upgrade-from-source コミュニティータスクでサポートされているワークスペース
ワークスペース説明

source

Helm チャートが含まれるワークスペース。

jib-maven

jib-maven コミュニティータスクは、Maven プロジェクトの Jib ツールを使用して、Java、Kotlin、Groovy、および Scala ソースをコンテナーイメージに構築します。

jib-maven コミュニティータスクの使用例

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: jib-maven
spec:
  tasks:
    - name: jib-maven
      params:
        - name: IMAGE
          value: example_image
        - name: MAVEN_IMAGE
          value: 'registry.redhat.io/ubi9/openjdk-17@sha256:78613bdf887530100efb6ddf92d2a17f6176542740ed83e509cdc19ee7c072d6'
        - name: DIRECTORY
          value: .
        - name: CACHE
          value: empty-dir-volume
        - name: INSECUREREGISTRY
          value: 'false'
        - name: CACERTFILE
          value: service-ca.crt
      taskRef:
        kind: Task
        name: jib-maven
      workspaces:
        - name: source
          workspace: shared-workspace
  #...

表3.56 jib-maven コミュニティータスクでサポートされているパラメーター
パラメーター説明デフォルト値

IMAGE

ビルドするイメージの名前。

 

MAVEN_IMAGE

Maven ベースイメージ。

registry.redhat.io/ubi9/openjdk-17@sha256:78613bdf887530100efb6ddf92d2a17f6176542740ed83e509cdc19ee7c072d6

DIRECTORY

ソースリポジトリーのルートに相対的なアプリケーションを含むディレクトリー。

.

CACHE

Maven アーティファクトとベースイメージレイヤーをキャッシュするボリュームの名前。

empty-dir-volume

INSECUREREGISTRY

非セキュアなレジストリーを許可します。

false

CACERTFILE

安全でないレジストリーサービス用の認証局(CA)バンドルファイル名。

service-ca.crt

表3.57 jib-maven コミュニティータスクでサポートされているワークスペース
ワークスペース説明

source

Maven プロジェクトが含まれる Workspace。

sslcertdir

SSL 証明書が含まれるオプションのワークスペース。

表3.58 jib-maven タスクが返す結果
結果説明

IMAGE_DIGEST

string

ビルドされたイメージのダイジェスト。

jib-maven コミュニティークラスタータスクからの変更

  • IMAGE および MAVEN_IMAGE パラメーターのデフォルト値が変更されました。

kubeconfig-creator

kubeconfig-creator コミュニティータスクは、パイプラインの他のタスクが異なるクラスターにアクセスするために使用できる kubeconfig ファイルを作成します。

kubeconfig-creator コミュニティータスクの使用例

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: kubeconfig-creator
spec:
  tasks:
    - name: kubeconfig-creator
      params:
        - name: name
          value: example_cluster
        - name: url
          value: https://cluster.example.com
        - name: username
          value: example_username
        - name: password
          value: example_password
        - name: cadata
          value: ''
        - name: clientKeyData
          value: ''
        - name: clientCertificateData
          value: ''
        - name: namespace
          value: ''
        - name: token
          value: ''
        - name: insecure
          value: 'false'
      taskRef:
        kind: Task
        name: kubeconfig-creator
      workspaces:
        - name: output
          workspace: shared-workspace
  #...

表3.59 kubeconfig-creator コミュニティータスクでサポートされているパラメーター
パラメーター説明デフォルト値

name

アクセスするクラスターの名前。

 

url

アクセスするクラスターのアドレス。

 

username

クラスターへの Basic 認証のユーザー名。

 

password

クラスターへの Basic 認証のパスワード。

""

caData

PEM 形式の認証局(CA)証明書。

""

clientKeyData

PEM エンコードされた TLS のクライアントキーファイルからのデータ。

""

ClientCertificateData

TLS のクライアント証明書ファイルからの PEM エンコードデータ。

""

namespace

未指定の要求で使用するデフォルトの名前空間。

""

トークン (token)

クラスターへの認証用のベアラートークン。

""

insecure

TLS 証明書を検証することなくサーバーにアクセスするかどうかを示します。

false

表3.60 kubeconfig-creator コミュニティータスクでサポートされているワークスペース
ワークスペース説明

出力 (output)

kubeconfig-creator タスクが kubeconfig ファイルを保存するワークスペース。

pull-request

pull-request コミュニティータスクを使用して、抽象されたインターフェイスを介してソース管理管理(SCM)システムと対話できます。

このコミュニティータスクは、パブリック SCM インスタンスおよび自己ホスト型、エンタープライズ、または GitLab インスタンスの両方で機能します。

download モードでは、このタスクは .MANIFEST ファイルを含む既存のプルリクエストの状態を pr Workspace に入力します。

アップロードモードでは、このタスクは .MANIFEST ファイルの内容とプル要求の内容を比較します。コンテンツが異なる場合は、プルリクエストを更新して pr ワークスペースと一致するようにプルリクエストを更新します。

pull-request コミュニティータスクの使用例

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: pull-request
spec:
spec:
  tasks:
    - name: pull-request
      params:
        - name: mode
          value: upload
        - name: url
          value: https://github.com/example/pull/xxxxx
        - name: provider
          value: github
        - name: secret-key-ref
          value: example_secret
        - name: insecure-skip-tls-verify
          value: 'false'
      taskRef:
        kind: Task
        name: pull-request
      workspaces:
        - name: pr
          workspace: shared-workspace
  #...

表3.61 pull-request コミュニティータスクでサポートされているパラメーター
パラメーター説明デフォルト値

mode

download に設定すると、url のプルリクエストの状態がフェッチされます。upload に設定されている場合には、url でプルリクエストが更新されます。

 

url

プルリクエストの URL。

 

provider

SCM システムのタイプ。サポートされている値は github または gitlab です。

 

secret-key-ref

base64 でエンコードされた SCM トークンを持つ token と呼ばれるキーを含む Opaque タイプの Secret オブジェクトの名前。

 

insecure-skip-tls-verify

true に設定すると、証明書の検証は無効になります。

false

表3.62 pull-request コミュニティータスクでサポートされているワークスペース
ワークスペース説明

pr

プルリクエストの状態を含むワークスペース。

trigger-jenkins-job

trigger-jenkins-job コミュニティータスクを使用して curl 要求を使用して Jenkins ジョブをトリガーできます。

trigger-jenkins-job コミュニティータスクの使用例

apiVersion: tekton.dev/v1
kind: Pipeline
metadata:
  name: trigger-jenkins-job
spec:
  tasks:
    - name: trigger-jenkins-job
      params:
        - name: JENKINS_HOST_URL
          value: example_host_URL
        - name: JOB_NAME
          value: example_job_name
        - name: JENKINS_SECRETS
          value: jenkins-credentials
        - name: JOB_PARAMS
          value:
            - example_param
      taskRef:
        kind: Task
        name: trigger-jenkins-job
      workspaces:
        - name: source
          workspace: shared-workspace
  # ...

表3.63 trigger-jenkins-job コミュニティータスクでサポートされるパラメーター
パラメーター説明デフォルト値

JENKINS_HOST_URL

Jenkins が実行されているサーバー URL。

 

JOB_NAME

トリガーが必要な Jenkins ジョブ。

 

JENKINS_SECRETS

Jenkins シークレットには認証情報が含まれます。

jenkins-credentials

JOB_PARAMS

curl 要求の一部として追加する追加の引数。

""

表3.64 trigger-jenkins-job コミュニティータスクでサポートされるワークスペース
ワークスペース説明

source

curl 要求で Jenkins ジョブに送信できるファイルのマウントに使用できるワークスペース。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.