検索

1.16. Red Hat OpenShift Pipelines テクノロジープレビュー 1.2 のリリースノート

download PDF

1.16.1. 新機能

Red Hat OpenShift Pipelines テクノロジープレビュー (TP) 1.2 が OpenShift Container Platform 4.6 で利用可能になりました。Red Hat OpenShift Pipelines TP 1.2 が以下をサポートするように更新されています。

  • Tekton Pipelines 0.16.3
  • Tekton tkn CLI 0.13.1
  • Tekton Triggers 0.8.1
  • Tekton Catalog 0.16 をベースとするクラスタータスク
  • OpenShift Container Platform 4.6 での IBM Power Systems
  • OpenShift Container Platform 4.6 での IBM Z および LinuxONE

以下では、修正および安定性の面での改善点に加え、OpenShift Pipelines 1.2 の主な新機能を説明します。

1.16.1.1. Pipelines

  • Red Hat OpenShift Pipelines のリリースでは、非接続インストールのサポートが追加されました。

    注記

    制限された環境でのインストールは現時点で、IBM Power Systems、IBM Z、および LinuxONE ではサポートされていません。

  • conditions リソースの代わりに when フィールドを使用して、特定の条件が満たされる場合にのみタスクを実行できるようになりました。WhenExpression の主なコンポーネントは InputOperator、および Values です。すべての when 式が True に評価されると、タスクが実行されます。when 式のいずれかが False に評価されると、タスクはスキップされます。
  • ステップのステータスは、タスクの実行がキャンセルまたはタイムアウトすると更新されるようになりました。
  • git-init が使用するベースイメージをビルドするために、Git Large File Storage (LFS) のサポートが利用できるようになりました。
  • taskSpec フィールドを使用して、タスクがパイプラインに組み込まれる際に、ラベルやアノテーションなどのメタデータを指定できるようになりました。
  • クラウドイベントがパイプラインの実行でサポートされるようになりました。backoff を使用した再試行が、クラウドイベントパイプラインリソースによって送信されるクラウドイベントに対して有効になりました。
  • Task リソースが宣言するものの、TaskRun リソースが明示的に指定しないワークスペースのデフォルトの Workspace 設定を設定できるようになりました。
  • サポートは、PipelineRun namespace および TaskRun namespace の namespace 変数の補間に利用できます。
  • TaskRun オブジェクトの検証が追加され、TaskRun リソースが Affinity Assistant に関連付けられる際に複数の永続ボリューム要求ワークスペースが使用されていないことを確認するようになりました。複数の永続ボリューム要求ワークスペースが使用されていると、タスクの実行は TaskRunValidationFailed の状態で失敗します。デフォルトで、Affinity Assistant は Red Hat OpenShift Pipelines で無効にされているため、これを使用できるように有効にする必要があります。

1.16.1.2. Pipelines CLI

  • tkn task describetkn taskrun describetkn clustertask describetkn pipeline describe、および tkn pipelinerun describe コマンドが以下を実行するようになりました。

    • TaskTaskRunClusterTaskPipeline および PipelineRun リソースのいずれかが 1 つしかない場合、それぞれを自動的に選択します。
    • 出力に TaskTaskRunClusterTaskPipeline および PipelineRun リソースの結果をそれぞれ表示します。
    • 出力に TaskTaskRunClusterTaskPipeline および PipelineRun リソースで宣言されたワークスペースをそれぞれ表示します。
  • tkn clustertask start コマンドに --prefix-name オプションを指定して、タスク実行の名前に接頭辞を指定できるようになりました。
  • インタラクティブモードのサポートが tkn clustertask start コマンドに提供されるようになりました。
  • TaskRun および PipelineRun オブジェクトのローカルまたはリモートファイル定義を使用して、パイプラインでサポートされる PodTemplate プロパティーを指定できるようになりました。
  • --use-params-defaults オプションを tkn clustertask start コマンドに指定して、ClusterTask 設定に設定したデフォルト値を使用して、タスク実行を作成できるようになりました。
  • tkn pipeline start コマンドの --use-param-defaults フラグで、デフォルトの値が一部のパラメーターに指定されていない場合に対話モードをプロンプトで表示するようになりました。

1.16.1.3. トリガー

  • YAML 文字列を文字列のマップに解析するために、parseYAML という名前の Common Expression Language (CEL) 関数が追加されました。
  • 式を評価する際や、評価環境を作成するためにフック本体を解析する際に、CEL 式の解析を行うエラーメッセージの詳細度が上がりました。
  • ブール値とマップが CEL オーバーレイメカニズムで式の値として使用されている場合に、それらをマーシャリングするためのサポートが利用できるようになりました。
  • 以下のフィールドが EventListener オブジェクトに追加されました。

    • replicas フィールドは、YAML ファイルのレプリカ数を指定して、イベントリスナーが複数の Pod を実行できるようにします。
    • NodeSelector フィールドでは、EventListener オブジェクトがイベントリスナー Pod を特定のノードにスケジュールできるようにします。
  • Webhook インターセプターは EventListener-Request-URL ヘッダーを解析し、イベントリスナーによって処理される元のリクエスト URL からパラメーターを抽出できるようになりました。
  • イベントリスナーからのアノテーションがデプロイメント、サービス、およびその他の Pod に伝播できるようになりました。サービスまたはデプロイメントのカスタムアノテーションは上書きされるため、イベントリスナーアノテーションに追加して伝播できるようにする必要があります。
  • EventListener 仕様のレプリカの適切な検証が、ユーザーが spec.replicas 値を negative または zero として指定する場合に利用できるようになりました。
  • TriggerCRD オブジェクトを、TriggerRef フィールドを使用して参照として EventListener 仕様内に指定し、TriggerCRD オブジェクトを別個に作成してから、これを EventListener 仕様内でバインドできるようになりました。
  • TriggerCRD オブジェクトの検証およびデフォルト値が利用可能になりした。

1.16.2. 非推奨の機能

  • $(params) パラメーターは triggertemplate リソースから削除され、$(tt.params) に置き換えられ、これにより resourcetemplatetriggertemplate パラメーター間の混乱が生じなくなります。
  • オプションの EventListenerTrigger ベースの認証レベルの ServiceAccount 参照が ServiceAccountName 文字列へのオブジェクト参照から変更されました。これにより、ServiceAccount 参照が EventListenerTrigger オブジェクトと同じ namespace に置かれるようになりました。
  • Conditions カスタムリソース定義 (CRD) は非推奨となり、代わりに WhenExpressions CRD が使用されます。
  • PipelineRun.Spec.ServiceAccountNames オブジェクトは非推奨となり、PipelineRun.Spec.TaskRunSpec[].ServiceAccountName オブジェクトによって置き換えられます。

1.16.3. 既知の問題

  • Red Hat OpenShift Pipelines のリリースでは、非接続インストールのサポートが追加されました。ただし、クラスタータスクで使用される一部のイメージは、非接続クラスターで動作するようにミラーリングする必要があります。
  • openshift namespace のパイプラインは、Red Hat OpenShift Pipelines Operator のアンインストール後に削除されません。oc delete pipelines -n openshift --all コマンドを使用してパイプラインを削除します。
  • Red Hat OpenShift Pipelines Operator をアンインストールしても、イベントリスナーは削除されません。

    回避策として、EventListener および Pod CRD を削除するには、以下を実行します。

    1. EventListener オブジェクトを foregroundDeletion ファイナライザーで編集します。

      $ oc patch el/<eventlistener_name> -p '{"metadata":{"finalizers":["foregroundDeletion"]}}' --type=merge

      以下に例を示します。

      $ oc patch el/github-listener-interceptor -p '{"metadata":{"finalizers":["foregroundDeletion"]}}' --type=merge
    2. EventListener CRD を削除します。

      $ oc patch crd/eventlisteners.triggers.tekton.dev -p '{"metadata":{"finalizers":[]}}' --type=merge
  • IBM Power Systems (ppc64le) または IBM Z (s390x) クラスターでコマンド仕様なしにマルチアーキテクチャーコンテナーイメージタスクを実行すると、TaskRun リソースは以下のエラーを出して失敗します。

    Error executing command: fork/exec /bin/bash: exec format error

    回避策として、アーキテクチャー固有のコンテナーイメージを使用するか、正しいアーキテクチャーを参照する sha256 ダイジェストを指定します。sha256 ダイジェストを取得するには、以下を実行します。

    $ skopeo inspect --raw <image_name>| jq '.manifests[] | select(.platform.architecture == "<architecture>") | .digest'

1.16.4. 修正された問題

  • CEL フィルター、Webhook バリデーターのオーバーレイ、およびインターセプターの式を確認するための簡単な構文検証が追加されました。
  • Trigger は、基礎となるデプロイメントおよびサービスオブジェクトに設定されたアノテーションを上書きしなくなりました。
  • 以前のバージョンでは、イベントリスナーはイベントの受け入れを停止しました。今回の修正により、この問題を解決するために EventListener シンクの 120 秒のアイドルタイムアウトが追加されました。
  • 以前のバージョンでは、Failed(Canceled) 状態でパイプラインの実行を取り消すと、成功のメッセージが表示されました。これは、代わりにエラーが表示されるように修正されました。
  • tkn eventlistener list コマンドがリスト表示されたイベントリスナーのステータスを提供するようになり、利用可能なイベントリスナーを簡単に特定できるようになりました。
  • トリガーがインストールされていない場合や、リソースが見つからない場合に、triggers list および triggers describe コマンドについて一貫性のあるエラーメッセージが表示されるようになりました。
  • 以前のバージョンでは、多くのアイドル接続がクラウドイベントの配信時に増大しました。この問題を修正するために、DisableKeepAlives: true パラメーターが cloudeventclient 設定に追加されました。新規の接続がすべてのクラウドイベントに設定されます。
  • 以前のバージョンでは、特定のタイプの認証情報が指定されていない場合であっても、creds-init コードが空のファイルをディスクに書き込みました。今回の修正により、creds-init コードが変更され、正しくアノテーションが付けられたシークレットから実際にマウントされた認証情報のみのファイルを書き込むようになりました。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.