検索

1.6. Red Hat OpenShift Pipelines 一般提供 1.12 のリリースノート

download PDF

今回の更新により、Red Hat OpenShift Pipelines General Availability (GA) 1.12 が OpenShift Container Platform 4.12 以降のバージョンで利用できるようになりました。

1.6.1. 新機能

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

注記

Red Hat OpenShift Pipelines Operator 1.12 にアップグレードする前に、少なくとも OpenShift Container Platform 4.12.19 または 4.13.1 バージョンがクラスターにインストールされていることを確認してください。

1.6.1.1. Pipelines

  • 今回の更新により、Web コンソールに Pipelines 実行とタスク実行の新しいゲージメトリクスが含まれます。このメトリクスは、namespace で定義されたリソースクォータポリシー、または基礎となるノードのリソース制約が理由で、基礎となる Pod が OpenShift Container Platform によってスロットルされているかどうかを示します。
  • 今回の更新により、新しい set-security-context 機能フラグがデフォルトで true に設定され、制限された Pod セキュリティーアドミッションポリシーが割り当てられた namespace でタスク実行とパイプライン実行を可能にします。
  • 今回の更新により、enable-api-fields フラグはデフォルトで beta に設定されます。コード内で beta としてマークされているすべての機能は、追加で変更を加えることなく使用できます。
  • 今回の更新により、results.tekton.dev/* and chains.tekton.dev/* の予約アノテーションは、パイプライン実行から作成されるタスク実行に渡されなくなります。
  • 今回の更新の前は、CSI ボリュームと投影されたボリュームはデフォルトでは有効になっていませんでした。今回の更新により、設定フィールドを変更せずに、Pipelines で CSI ボリュームと投影ボリュームを使用できるようになります。
  • 今回の更新により、分離ワークスペース機能がデフォルトで有効になります。この機能を使用すると、タスク実行全体でワークスペースを共有せずに、指定したステップおよびサイドカーとワークスペースを共有できます。

1.6.1.2. Operator

  • 今回の更新により、OpenShift Pipelines がパイプライン実行およびタスク実行用に作成する Pod のデフォルトの security context constraint (SCC) を設定できるようになりました。異なる namespace に対して個別に SCC を設定したり、任意の namespace に対して設定できる最大 (最も制限の少ない) SCC を設定したりすることもできます。
  • 今回の更新により、TektonConfig 仕様の各コンポーネントの下に新しい options: の見出しが追加されました。この見出しの下のパラメーターを使用して、さまざまなコンポーネントの設定を制御できます。特に、platforms.openshift.pipelinesAsCode.options.configMaps.pac-config-logging.data 仕様のパラメーターを使用して、Pipelines as Code のコンポーネントのロギングレベルを設定できます。
  • 今回の更新により、新しい spec.pipeline.performance.replicas パラメーターを使用して、OpenShift Pipelines コントローラー Pod 用に作成されるレプリカの数を設定できるようになりました。これまでに、デプロイメント内のレプリカ数を手動で設定している場合は、この設定を使用してレプリカ数を制御する必要があります。
  • 今回の更新により、Operator を使用すると、保存された API バージョンが、OpenShift Pipelines のデプロイメント全体で同じバージョンに確保できるようになります。OpenShift Pipelines 1.12 に保存されている API バージョンは v1 です。
  • 今回の更新により、シークレットを使用して S3 バケットストレージを設定し、Tekton Results ログ情報を保存できるようになりました。S3 バケットストレージを設定する場合、TektonResult カスタムリソース (CR) の新しい Secret_name 仕様を使用して、S3 ストレージ認証情報を含むシークレットを提供する必要があります。

1.6.1.3. Tekton Results

重要

Tekton Results はテクノロジープレビューのみの機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

  • 今回の更新により、外部 PostgreSQL サーバーにデータを保存するように Tekton Results を設定できるようになります。
  • 今回の更新により、Google Cloud Storage (GCS) を使用して Tekton Results ログ情報を保存できるようになります。GCS ストレージ認証情報を使用してシークレットを指定し、TektonResult 仕様のプロパティーでシークレット名、秘密鍵、バケット名を指定できます。認証に Workload Identity Federation を使用することもできます。
  • 今回の更新により、OpenShift Pipelines で認証されたサービスアカウントはすべて TektonResult CR にアクセスできるようになります。
  • 今回の更新により、Tekton Results には、admin、edit、および view のロールが割り当てられたサービスアカウントのクラスターロールの集約が含まれます。これらのサービスアカウントが Tekton Results API を使用して結果とレコードにアクセスするために、クラスターロールバインドは必要なくなりました。
  • この更新により、TektonConfig CR の prune-per-resource ブール型フィールドを設定することで、各 PipelineRun または TaskRun リソースのプルーニングを設定できるようになりました。また、operator.tekton.dev/prune.prune-per-resource=true アノテーションをネームスペースに追加することで、ネームスペース内の各 PipelineRun または TaskRun リソースのプルーニングを設定することもできます。
  • 今回の更新により、OpenShift Container Platform クラスター全体のプロキシーに変更があった場合、Operator Lifecycle Manager (OLM) は Red Hat OpenShift Pipelines Operator を再作成します。
  • この更新により、TektonConfig CR で config.pruner.disabled フィールドの値を true に設定することで、プルーナー機能を無効にすることができます。

1.6.1.4. トリガー

  • 今回の更新により、Trigger CR で readiness プローブと liveness プローブを設定できるようになりました。プローブの失敗しきい値を設定することもできます。デフォルト値は 3 です。
  • 今回の更新により、OpenShift Pipelines トリガーで、Cloud Events リクエストに対するレスポンスを作成するときに TypeSubject の値が追加されます。

1.6.1.5. CLI

  • 今回の更新により、tkn Pipeline logs コマンドは、リゾルバーを使用して参照されるパイプラインまたはタスクのログを表示します。
  • 今回の更新により、tkn bundle push コマンドを入力するときに --annotate フラグを使用して追加のアノテーションを指定できるようになりました。

1.6.1.6. Pipelines as Code

  • 今回の更新により、Pipelines as Code パイプラインの実行に、複数の Artifact Hub または Tekton Hub インスタンス、および同じハブインスタンス内の異なるカタログからフェッチされたリモートタスクを含めることができるようになりました。
  • 今回の更新により、TektonConfig CR の platforms.openshift.pipelinesAsCode.options.configMaps.pac-config-logging.data 仕様のパラメーターを使用して、Pipelines as Code コンポーネントのロギングレベルを設定できるようになりました。
  • 今回の更新により、特定のアクションをチームのメンバーにのみ許可し、他のユーザーがアクションを要求した場合はそのアクションを拒否するポリシーを設定できるようになります。現在、pull_request アクションと ok_to_test アクションは、そのようなポリシーの設定をサポートしています。
  • 今回の更新により、受信 Webhook で任意のパラメーターを JSON ペイロードとして渡すことができるようになりました。OpenShift Pipelines は、これらのパラメーターをパイプライン実行に渡します。セキュリティー層を追加するには、Repository CR で許可されたパラメーターを明示的に定義する必要があります。
  • 今回の更新により、Pipelines as Code 内の多数のリモートアノテーションと大規模なパイプライン実行のマッチングが最適化されます。Pipelines as Code は、一致したパイプライン実行のリモートタスクのみをフェッチします。
  • 今回の更新により、パイプライン実行テンプレートで source_url 変数を使用して、プルリクエストやプッシュリクエストなどのイベントをトリガーするフォークしたリポジトリーに関する情報を取得します。

    使用例

    apiVersion: tekton.dev/v1beta1
    kind: PipelineRun
    # ...
    spec:
      params:
        - name: source_url
          value: "{{ source_url }}"
      pipelineSpec:
        params:
          - name: source_url
    # ...

  • 今回の更新により、承認されたユーザーが、承認されていないユーザーからのプルリクエストに対してパイプライン実行をトリガーするために ok-to-test コメントを提供し、作成者がブランチにさらに変更を加えた場合、Pipelines as Code によってパイプラインがトリガーされます。承認されたユーザーが新しい ok-to-test コメントを提供するまでパイプラインのトリガーを無効にするには、TektonConfig CR の pipelinesAsCode.settings.remember-ok-to-test 仕様を false に設定します。
  • 今回の更新により、GitHub のステータス確認ページで、すべてのタスクのステータスを示すテーブルに各タスクの表示名が含まれるようになりました。
  • 今回の更新により、GitLab で実行されるパイプラインで tags push イベントを設定できるようになりました。
  • 今回の更新により、Pipelines の target_urlsource_url フィールドを Code Common Expression Language (CEL) 式フィルタリングアノテーションとして使用して、特定のターゲットまたはソースのリクエストをフィルタリングできるようになりました。
  • 今回の更新により、トークンを使用してリモート GitHub URL を取得するように設定する場合に、スラッシュを含むブランチ名を追加できるようになりました。この https://github.com/organization/repository/blob/feature%2Fmainbranch/path/file の URL 例のように、パイプラインをコードとして適切に解析するには、ブランチ名内のスラッシュを %2F としてエンコードする必要があります。この URL の例では、ブランチ名は feature/mainbranch で、フェッチするファイルの名前は /path/file です。
  • 今回の更新により、tkn pac resolve コマンドで --v1beta1 フラグを使用できるようになりました。パイプライン実行が v1beta1 API バージョンスキーマで生成される場合は、このフラグを使用します。

1.6.2. 互換性を失わせる変更点

  • 今回の更新により、openshift-operators namespace を OpenShift Pipelines をインストールするためのターゲット namespace として使用できなくなります。openshift-operators 名前空間をターゲット namespace として使用した場合は、Red Hat OpenShift Pipelines Operator バージョン 1.12 にアップグレードする前にターゲット namespace を変更してください。そうしないと、アップグレード後に、targetNamespace 設定を除く TektonConfig CR の設定を変更できなくなります。
  • 今回の更新により、新しい spec.pipeline.performance.replicas パラメーターは、パイプライン実行またはタスク実行の Pod ごとに作成されるレプリカの数を制御します。これまでにデプロイメントのレプリカ数を手動で設定した場合は、OpenShift Pipelines バージョン 1.12 にアップグレードした後に、このパラメーターを使用してレプリカ数を制御する必要があります。
  • 今回の更新により、次のパラメーターは TektonResult CR でサポートされなくなりました。

    • db_user
    • db_password
    • s3_bucket_name
    • s3_endpoint
    • s3_hostname_immutable
    • s3_region
    • s3_access_key_id
    • s3_secret_access_key
    • s3_multi_part_size

      これらのパラメーターはシークレットを使用して指定する必要があります。OpenShift Pipelines バージョン 1.12 にアップグレードした後、TektonResult CR を削除して再作成し、これらのパラメーターを提供する必要があります。

  • 今回の更新により、tkn pac bootstrap コマンドは --github-hostname フラグをサポートします。--github-api-url フラグは非推奨になりました。

1.6.3. 既知の問題

  • namespace に制限範囲が設定されているが、Pod の一時ストレージが制限範囲に設定されていない場合、Pod はエラーの段階になり、Pod ephemeral local storage usage exceeds the total limit of containers 0 というメッセージが表示されることがあります。
  • TektonResult CR の設定を変更する場合は、既存の TektonResult CR を削除して、新しい CR を作成する必要があります。既存の TektonResult CR を変更した場合、その変更は Tekton Results の既存のデプロイメントには適用されません。たとえば、接続を内部データベースサーバーから外部データベースサーバーに変更した場合、またはその逆に変更した場合、API は古いデータベースに接続されたままになります。

1.6.4. 修正された問題

  • 今回の更新が行われる前は、Pipelines as Code はブランチベース名のみに基づいてパイプライン実行を行い、同じベース名にもかかわらず、異なるブランチ名でパイプライン実行を誤ってトリガーする可能性がありました。今回の更新により、Pipelines as Code はパイプライン実行のベース名と、正確なブランチ名の両方をチェックします。
  • 今回の更新以前は、受信 Webhook イベントによって、他のイベント用に設定された複数のパイプライン実行がトリガーされる可能性がありました。今回の更新により、受信 Webhook イベントは、Webhook イベント用に設定されたパイプライン実行のみをトリガーします。
  • 今回の更新により、パイプライン実行の ownerRef が削除された場合に備えて、パイプライン実行をクリーンアップするときに pac-gitauth シークレットが明示的に削除されるようになりました。
  • 今回の更新より前は、パイプライン実行内のタスクが理由を含むメッセージを表示して失敗すると、パイプライン実行全体が PipelineValidationFailed という理由で失敗していました。今回の更新により、パイプラインの実行が失敗し、失敗したタスクと同じ理由のメッセージが表示されます。
  • 今回の更新前は、disable-ha フラグの値が Pipelines コントローラーに正しく渡されず、高可用性 (HA) 機能が有効になることはありませんでした。今回の更新により、TektonConfig CR の disable-ha フラグの値を false に設定することで HA 機能を有効化できます。
  • 今回の更新が行われる前は、config map データに記載されているイメージをコピーしようとすると、skopeo-copy クラスタータスクに失敗していました。今回の更新により、skopeo-copy クラスタータスクが適切に完了します。
  • 今回の更新により、tkn pac generated – language=java コマンドによって自動的に生成されたパイプライン実行に、正しいアノテーションとパラメーター名が付けられるようになりました。
  • 今回の更新が行われる前は、管理権限を持つユーザーのみが tkn pac create repository コマンドを正常に実行できました。今回の更新により、許可されたユーザーはすべて tkn pac create repository コマンドを実行できるようになります。
  • 今回の更新より前は、特定のパイプラインを指定する /test <run-name> および /retest <run-name> ユーザーコメントによって、期待どおりにパイプラインの実行がトリガーされませんでした。今回の更新では、これらのコメントによりパイプライン実行が正常にトリガーされます。
  • 今回の更新より前は、Name フィールドではなく、generateName フィールドが含まれる .tekton フォルダー内で複数のパイプライン実行があった場合、パイプライン実行は失敗していました。今回の更新でこの問題が修正されています。
  • 今回の更新以前は、GitLab を使用する場合の Pipelines as Code では、ラベルの追加やステータスの設定など、マージリクエスト内の任意のイベントによってパイプラインの実行がトリガーされていました。今回の更新により、パイプラインの実行は、オープン、再オープン、またはプッシュイベントがある場合にのみトリガーされます。チェックのステータスを含むコメントがマージリクエストに投稿されるようになりました。
  • 今回の更新より前は、パイプライン実行が承認を待機している間、GitHub および Gitea プルリクエストのチェックセクションにチェックのステータスが skipped と表示されることがありました。今回の更新により、正しい pending approval のステータスが表示されるようになりました。
  • 今回の更新以前は、バンドルリゾルバーはパイプラインを取得しようとするとタイプを Task に設定することがあり、取得エラーが発生することがありました。今回の更新により、リゾルバーは正しいタイプを使用してパイプラインを取得するようになりました。
  • 今回の更新により、Tekton Results をクエリーする際の共通表現言語 (CEL) の NOT 演算子の処理で発生していたエラーが修正されました。
  • 今回の更新により、レコードの LIST 操作が要求され、指定された結果が - であった場合に Tekton Results API で生成される 404 エラー応答が修正されました。
  • 今回の更新前は、EventListener オブジェクトで、status.address.url フィールドは常にデフォルトのポートに設定されていました。今回の更新により、status.address.url フィールドは、spec.resources.kubernetesresource.serviceport パラメーターで指定されたポートと一致するように設定されます。
  • 今回の更新前は、GitHub API がページネーションされたレスポンスを提供した場合に、Pipelines as Code はレスポンスの最初のページのみを使用していました。今回の更新により、ページネーションされたレスポンスがすべてが完全に処理されます。
  • 今回の更新が行われる前は、KMS Hashicorp Vault のホストアドレスが正しく設定されていない場合、または Tekton Chains が KMS Hashicorp Vault に接続できない場合、Tekton Chains コントローラーがクラッシュしていました。今回の更新により、Tekton Chains は接続エラーをログに記録し、クラッシュしなくなります。

1.6.5. Red Hat OpenShift Pipelines 一般提供 1.12.1 のリリースノート

今回の更新により、Red Hat OpenShift Pipelines General Availability (GA) 1.12.1 が OpenShift Container Platform 4.12 以降のバージョンで利用できるようになりました。

1.6.5.1. 修正された問題

  • この更新前は、カスタムコンソールに出力するようにカスタムコンソールドライバーを使用して Pipelines as Code を設定した場合、特定のケースで Pipelines as Code コントローラーがクラッシュしていました。変更をプルリクエストにプッシュした後、このプルリクエストの CI ステータスチェックが waiting for status to be reported になり、関連するパイプラインの実行が完了しない可能性があります。この更新により、Pipelines as Code コントローラーは正常に動作するようになりました。変更をプルリクエストにプッシュすると、関連するパイプラインの実行が正常に完了し、プルリクエストの CI ステータスチェックが更新されます。
  • Pipelines as Code を使用する場合、特定のユーザーを含まないアクセスポリシーを Repository カスタムリソース (CR) に作成し、そのユーザーを Git リポジトリーの OWNER ファイルに追加すると、そのユーザーは Pipelines as Code CI プロセスに対する権利を持ちませんでした。たとえば、ユーザーが Git リポジトリーにプルリクエストを作成したとします。CI プロセスは、このプルリクエストに対して自動的には実行されません。この更新により、Repository CR のアクセスポリシーには含まれていないが、OWNER ファイルには含まれているユーザーが、リポジトリーの CI プロセスを実行できるようになりました。
  • この更新により、HTTP/2.0 プロトコルは Webhook でサポートされなくなりました。Red Hat OpenShift Pipelines へのすべての Webhook 呼び出しでは、HTTP/1.1 プロトコルを使用する必要があります。

1.6.6. Red Hat OpenShift Pipelines 一般提供 1.12.2 のリリースノート

今回の更新により、Red Hat OpenShift Pipelines General Availability (GA) 1.12.2 が OpenShift Container Platform 4.12 以降のバージョンで利用できるようになりました。

1.6.6.1. 修正された問題

  • この更新前は、max-keep-runs パラメーターを超えると、最新のパイプライン実行に対して生成された Git シークレットが削除されました。この更新により、Git シークレットは最新のパイプライン実行時に削除されなくなりました。
  • この更新により、S2I クラスタータスクは一般提供のコンテナーイメージを使用します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.