1.2. Red Hat OpenShift Pipelines 1.18 のリリースノート
この更新により、Red Hat OpenShift Pipelines General Availability (GA) 1.17 が OpenShift Container Platform 4.15 以降のバージョンで利用できるようになります。
OpenShift Pipelines を使用するには、少なくとも以下の OpenShift Container Platform リリースを使用する必要があります。
- OpenShift Container Platform バージョン 4.15: 4.15.42 以降
- OpenShift Container Platform バージョン 4.16: 4.16.26 以降
- OpenShift Container Platform バージョン 4.17: 4.17.7 以降のバージョンの場合
1.2.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
修正と安定性の向上に加えて、次のセクションでは Red Hat OpenShift Pipelines 1.17 の新機能を説明します。
1.2.1.1. Pipelines リンクのコピーリンクがクリップボードにコピーされました!
このリリースでは、Git リゾルバーを使用して複数の Git プロバイダーを設定するか、同じ Git プロバイダーに複数の設定を
TektonConfigカスタムリソース (CR) に追加できるようになりました。次に、configKeyパラメーターを使用して、さまざまなタスク実行およびパイプライン実行で使用する Git 設定を指定できます。複数の Git プロバイダー設定の例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow パイプライン実行で
test1設定を使用する例Copy to Clipboard Copied! Toggle word wrap Toggle overflow この更新により、クラスターレベルに加えて、namespace、パイプライン、およびパイプライン実行レベルで実行中の
PipelineRunリソースを監視できるようになりました。metrics.running-pipelinerun.levelパラメーター値をnamespace、pipeline、またはpipelinerunに設定することで、TektonConfigカスタムリソースを介してレベルを設定できます。デフォルト値は空で、クラスターレベルでモニタリングを設定します。namespace レベルで実行中のパイプライン実行を監視する例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
この更新により、パイプライン実行またはタスク実行の後に、実行したユーザーの ID を示すラベルがリソースの YAML マニフェストに、含まれるようになりました。
PipelineRunリソースの場合、ラベルはtekton.dev/PipelineRunUIDです。TaskRunリソースの場合、ラベルはtekton.dev/TaskRunUIDです。 -
この更新により、
TektonConfigCR のspec.pipeline.performance仕様を使用して、threads-per-controller、kube-api-qps、kube-api-burstなどのパフォーマンスチューニング値を指定すると、OpenShift Pipelines はこれらの値をリゾルバーコントローラーと他のコントローラーに適用します。
1.2.1.2. Operator リンクのコピーリンクがクリップボードにコピーされました!
この更新により、
--allおよび--preserve-digestsなどの追加の引数を指定してskopeo-copyコマンドを実行できます。これらの引数は、以下の例のように、スペースで区切られた文字列として渡すことができます。コマンドの例
tkn task start skopeo-copy -p ARGS="--all --preserve-digests"
$ tkn task start skopeo-copy -p ARGS="--all --preserve-digests"Copy to Clipboard Copied! Toggle word wrap Toggle overflow - この更新により、OpenShift Pipelines は、パイプラインまたはタスクに適用するセキュリティーコンテキスト制約 (SCC) の一時ボリューム設定を適用するようになりました。
1.2.1.3. Pipelines as Code リンクのコピーリンクがクリップボードにコピーされました!
-
この更新により、
pipelines_as_code_running_pipelineruns_countメトリクスが追加され、Pipelines as Code で実行中のPipelineRunリソースの数が表示されるようになりました。メトリクスは、リポジトリーまたは namespace でフィルタリングできます。 -
この更新により、
pipelines_as_code_pipelinerun_duration_seconds_sumメトリクスが追加され、Pipelines as Code のすべてのPipelineRunリソースが取得した合計期間が秒単位で表示されます。メトリクスは、リポジトリー、namespace、PipelineRunステータス、およびPipelineRunステータス変更の理由でフィルタリングできます。
1.2.1.4. Tekton Results リンクのコピーリンクがクリップボードにコピーされました!
この更新により、Tekton Results を設定して、パイプラインとタスクの YAML マニフェストの特定のラベルとアノテーションを結果テーブルの
summary フィールドの列に含めることができるようになりました。デフォルトでは、tekton.dev/pipeline ラベルの値が使用されます。この変更を行うには、次の例に示すようにTektonResultCR を変更します。TektonResultCR での概要ラベルとアノテーションの設定例Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.1.5. Tekton Chains リンクのコピーリンクがクリップボードにコピーされました!
この更新により、
TektonConfigカスタムリソース (CR) を設定して、ecdsaタイプのx509キーペアを生成し、Tekton Chains で使用してアーティファクトに署名できるようになりました。TektonConfigカスタムリソース (CR) のgenerateSigningSecretフィールドをtrueに設定することで、キーペアを生成できます。ecdsaキーペアの作成例Copy to Clipboard Copied! Toggle word wrap Toggle overflow この更新前は、
TektonConfigCR で Tekton Chains を設定しなかった場合、Operator はデフォルトの Chains 設定を渡してませんでした。この更新により、TektonConfigCR で Tekton Chains を設定しない場合、Operator は次のデフォルトプロパティーを使用して Tekton Chains 設定を行います。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
この更新により、Tekton Chains は、任意の名前を指定できる指定されたファイルから
mongo-server-urlURL の抽出をサポートするようになりました。コンテナー内の有効なファイルパスを指すstorage.docdb.mongo-server-url-pathパラメーターを使用できるようになりました。
1.2.2. 互換性を失わせる変更点 リンクのコピーリンクがクリップボードにコピーされました!
この更新により、非推奨の
ClusterTaskリソースが Operator から削除されました。代わりに、クラスターリゾルバーを使用して、OpenShift Pipelines がopenshift-pipelinesnamespace にインストールするタスクにアクセスできます。重要OpenShift Pipelines 1.17 にアップグレードする前に、
ClusterTaskリソースを使用するパイプラインを設定した場合は、openshift-pipelinesnamespace のタスクを使用するようにそれらを編集する必要があります。そうしないと、アップグレード後にパイプラインが失敗します。openshift-pipelinesnamespace でのタスク使用の詳細は、OpenShift Pipelines namespace で提供されるタスク を参照してください。この更新により、コミュニティークラスタータスクが Operator から削除されました。代わりに、Tekton カタログ (GitHub リソース) からダウンロードできます。コミュニティークラスタータスクは、今後のリリースでタスクとして追加される予定です。次のリストは、削除されたコミュニティークラスタータスクを示しています。
-
argocd-task-sync-and-wait -
git-cli -
helm-upgrade-from-repo -
helm-upgrade-from-source -
jib-maven -
kubeconfig-creator -
pull-request -
trigger-jenkins-job
-
1.2.3. 修正された問題 リンクのコピーリンクがクリップボードにコピーされました!
- この更新により、プッシュイベントペイロードにコミットが含まれていない場合、Pipelines as Code コントローラーは GitLab プッシュイベントを処理しなくなりました。代わりに、コミットがアタッチされていないことをユーザーに警告するエラーメッセージが正しく表示されます。
- この更新により、Pipelines as Code コントローラーは GitLab タグの削除イベントを処理しなくなり、コントローラーがクラッシュしました。代わりに、タグイベントの削除がサポートされていないことをユーザーに警告するエラーメッセージが正しく表示されます。
-
この更新前は、
body.eventKeyフィールドなどの一部の標準変数、ヘッダー値、およびボディーフィールドは、Bitbucket サーバーのPipelineRunリソースで解決されませんでした。この更新により、問題が修正されました。 -
この更新により、
skopeo-copyタスクは、SOURCE_IMAGE_URLパラメーターおよびDESTINATION_IMAGE_URLパラメーターが空のままになっている場合に、url.txtファイルを使用した複数のイメージのコピーをサポートするようになりました。 -
この更新前は、空のリポジトリーで
tkn pac create repoコマンドを実行すると、.期間シンボルがテンプレート内のパイプライン実行の名前として生成されていました。この更新により、この問題は修正され、REPO_NAME.gitがパイプライン実行名として使用されるようになりました。 -
この更新により、パイプライン実行の失敗処理が修正され、
status.messageフィールドで検証の失敗を正確に報告し、タスクが検証に失敗した場合でも、finallyタスクを一貫してトリガーするようになりました。 - この更新の前は、メモリー不足エラーが原因で Pod が失敗した場合、タスクの実行がすぐに失敗しませんでした。代わりに、しばらくの間応答がなくなり、その後失敗しました。この更新により、タスクの実行はすぐに失敗します。
-
この更新の前は、
CustomRunリソースが結果として配列を返すパイプラインまたはタスクリソースを参照した場合、結果の種類の不一致がログに報告されていました。この更新により、配列の結果が正しく処理されるようになりました。 -
この更新の前は、タスクの実行が失敗すると、タスク内の一部のステップのステータスが
TaskRunYAML マニフェストに正しく記録されない場合がありました。この更新により、ステータスが正しく記録されるようになりました。 - この更新の前は、タスク内のステップが失敗した場合、タスク実行またはパイプライン実行の YAML マニフェストで後続のステップがスキップ済みとしてマークされないことがありました。この更新により、手順はスキップ済みとしてマークされます。
-
この更新の前は、検証に失敗したタスクが、パイプラインの実行に含まれていた場合、前のタスクが失敗した場合に実行される予定であった後続の
finallyタスクは実行されませんでした。この更新により、finallyタスクが実行されます。 -
この更新の前は、GitLab で Pipelines as Code を使用する場合、
.tektonディレクトリーに 20 を超えるファイルが含まれていると、一部のパイプラインの実行が開始に失敗しました。この更新により、パイプラインの実行が正しく開始されます。 - この更新の前は、BitBucket で Pipelines as Code を使用すると、BitBucket イベントの不正なペイロードによって Pipelines as Code コントローラーがクラッシュする可能性がありました。この更新により、コントローラーはクラッシュせず、ペイロードを処理する前に検証し、エラーを正しく報告するようになります。
- この更新の前は、Pipelines as Code を使用しているときに、パイプラインの実行が完了する前に削除すると、一時的な Git 認証シークレットが OpenShift Container Platform namespace に残っていました。この問題が原因で、シークレットのクォータに達する可能性があり、この場合、新しいパイプラインの実行を開始できませんでした。この更新により、Pipelines as Code は一時的なシークレットを適切に削除するようになりました。
-
この更新の前は、BitBucket で Pipelines as Code を使用する場合、パイプライン実行が
on-target-branchに対して設定されていると、タグ関連のイベントが一致しませんでした (例:on-target-branch: [refs/tags/*])。この問題は、タグに関連する Bitbucket Cloud イベントペイロードにrefs/tags接頭辞が含まれていないために発生しました。この更新により、Pipelines as Code はタグイベントを正しく照合するようになりました。 - この更新の前は、タスクの実行がキャンセルされた場合、Tekton Chains はタスクの仕様を記録しませんでした。この更新により、Tekton Chains はタスクの仕様を記録します。
-
この更新の前は、Tekton Chains では、タスク実行でタスク内のすべてのステップが適切に実行された場合でも、タスクの仕様 (
TaskRun.Status.steps) に記録されたステップが一致しない可能性がありました。この更新により、タスク仕様のステップとタスク実行で実行されたステップが正しく記録されるようになりました。 - この更新の前は、タイムアウトが原因でパイプラインの実行が終了した場合に、ログ出力に無効なエラーメッセージが含まれることがあり、パイプラインの実行のステータスが正しく報告されませんでした。この更新により、そのようなメッセージはログに表示されなくなり、ステータスが正しく報告されるようになりました。
- この更新の前は、タスクの 1 つまたは複数のステップでマウントするワークスペースを指定すると、OpenShift Pipelines はタスク内のすべてのステップでワークスペースをマウントしていました。この更新により、ワークスペースは指定された手順でのみマウントされるようになりました。
- この更新の前は、Pipelines as Code を使用する場合、OpenShift Container Platform クラスターがビジー状態だった場合、同時実行キューの順序が乱れ、Pipelines as Code が適切に復元されなくなり、一部のパイプライン実行が失敗していました。この更新により、Pipelines as Code は同時実行キューを適切に管理し、すべてのパイプライン実行を適用します。
-
この更新の前は、
TektonConfigCR でデフォルトのコンテナーリソース要件を指定し、パイプラインまたはタスクにLimitRange設定を適用した場合、デフォルトの要件によって上書きされたことが原因で、LimitRange設定が適用されない場合がありました。この更新により、LimitRange設定はデフォルトのコンテナーリソース要件を上書きします。 -
この更新の前は、検証エラーのためにパイプライン実行またはタスク実行が失敗した場合、OpenShift Pipelines はパイプライン実行またはタスク実行の一般的な
失敗ステータスを記録して表示していました。この更新により、OpenShift Pipelines はFailed Validationステータスを記録します。 -
この更新の前は、
tkn bundleコマンドを使用して大規模な Tekton バンドルのコンテンツを読み取ると、コマンドが失敗する可能性がありました。この更新により、tknコマンドラインユーティリティーは大きな Tekton バンドルを正しく処理するようになりました。 -
この更新の前は、
tknコマンドラインユーティリティーを使用して完了したパイプライン実行を表示すると、パイプラインで設定した条件によりスキップされたタスクはSucceeded (Completed)として表示されていました。この更新により、completed と表示されなくなりました。
1.2.4. Red Hat OpenShift Pipelines General Availability 1.17.1 のリリースノート リンクのコピーリンクがクリップボードにコピーされました!
この更新により、Red Hat OpenShift Pipelines General Availability (GA) 1.17.1 が OpenShift Container Platform 4.15 以降のバージョンで利用できるようになります。
1.2.4.1. 修正された問題 リンクのコピーリンクがクリップボードにコピーされました!
-
この更新前は、通常のパラメーターと
matrixパラメーターの両方を含むマトリックスタスクを定義すると、tekton-pipelines-controllerコンポーネントがクラッシュし、セグメンテーションエラーメッセージがログに記録されていました。タスクが削除されなかった場合、コンポーネントのクラッシュは継続し、パイプラインが実行されませんでした。この更新により、このような場合でもコントローラーはクラッシュしなくなります。 - この更新前は、Tekton Chains コントローラーが繰り返しクラッシュし、Tekton Chains コンポーネントが使用できなくなる場合がありました。今回の更新により、コントローラーがクラッシュしなくなりました。
この更新前は、
openshift-pipelinesnamespace のbuildahタスクでは、BUILD_EXTRA_ARGSパラメーターでスペースを使用できませんでした。この更新により、buildahタスクはBUILD_EXTRA_ARGSパラメーターにスペースを渡すことができるようになりました。値にスペースが含まれる BUILD_EXTRA_ARGS パラメーターの例
# ... - name: BUILD_EXTRA_ARGS value: '--build-arg EXAMPLE="abc def"' # ...# ... - name: BUILD_EXTRA_ARGS value: '--build-arg EXAMPLE="abc def"' # ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.5. Red Hat OpenShift Pipelines General Availability 1.17.2 のリリースノート リンクのコピーリンクがクリップボードにコピーされました!
今回の更新により、Red Hat OpenShift Pipelines General Availability (GA) 1.17.2 が OpenShift Container Platform 4.12、OpenShift Container Platform 4.14 から 4.18 で利用できるようになりました。
1.2.5.1. 修正された問題 リンクのコピーリンクがクリップボードにコピーされました!
-
今回の更新以前は、
skopeo-copyタスクでは、source_image_urlパラメーターとdestination_image_urlパラメーターを明示的に設定する必要がありました。この要件により、バッチイメージをコピーするためにurl.txtファイルでimages_urlワークスペースを使用できませんでした。今回の更新により、両方のパラメーターがデフォルトで空の値になり、厳密な検証から除外され、タスクが意図されたurl.txtメソッドにフォールバックできるようになりました。 -
この更新前は、ファンアウトおよびファンインパターンでマトリクスされたタスクを使用すると、
PipelineRunの実行が次のエラーで失敗しました:invalid result reference in pipeline task 'printer': unable to validate result referencing pipeline task 'platforms': task spec not found.この問題は、ダウンストリームタスクが$(tasks.<taskName>.results.<resultName>[*])構文を使用してマトリクスされたタスクから集約された結果を参照しようとしたときに発生しました。今回の更新により、OpenShift Pipelines はマトリックスされたタスクからの結果参照を正しく解決し、検証します。これにより、検証エラーをトリガーせずに、配列およびマトリックス式を使用した動的なファンアウトおよびファンインタスクオーケストレーションが可能になります。 - 今回の更新以前は、OpenShift Pipelines 1.16.x からそれ以降のバージョンへのアップグレードパスはありませんでした。この更新により、問題が修正されました。