第28章 Pipeline 実行の設定
28.1. 概要
ユーザーがPipeline ビルドストラテジーを使用して初めてビルド設定を作成する際に、OpenShift Container Platform は jenkins-ephemeral という名前のテンプレートを openshift namespace で検索し、ユーザーのプロジェクト内でそれをインスタンス化します。OpenShift Container Platform に同梱される jenkins-ephemeral テンプレートは、インスタンス化の実行時に以下を作成します。
- OpenShift Container Platform の公式の Jenkins イメージを使用した Jenkins のデプロイメント設定
- Jenkins デプロイメントにアクセスするためのサービスとルート
- 新規の Jenkins サービスアカウント
- サービスアカウントにプロジェクトへの編集アクセスを付与する RoleBinding
クラスター管理者は、組み込みテンプレートのコンテンツの変更、またはクラスターを異なるテンプレート場所にポイントするためのクラスター設定の編集によって作成されるものを制御できます。
デフォルトテンプレートのコンテンツを変更するには、以下を実行します。
$ oc edit template jenkins-ephemeral -n openshift
Jenkins 用に永続ストレージを使用する jenkins-persistent テンプレートなどの異なるテンプレートを使用するには、以下をマスター設定ファイルに追加します。
jenkinsPipelineConfig: autoProvisionEnabled: true 1 templateNamespace: openshift 2 templateName: jenkins-persistent 3 serviceName: jenkins-persistent-svc 4 parameters: 5 key1: value1 key2: value2
Pipeline ビルド設定の作成時に、OpenShift Container Platform は serviceName に一致するサービスを検索します。つまり、serviceName はプロジェクト内で一意であるように選択される必要があります。サービスが見つからない場合、OpenShift Container Platform は jenkinsPipelineConfig テンプレートをインスタンス化します。この方法が適さない場合 (たとえば、OpenShift Container Platform の外部にある Jenkins サーバーを使用する場合)、ユーザーのロールに応じていくつかのことを実行できます。
-
クラスター管理者の場合は、単に
autoProvisionEnabledをfalseに設定します。これにより、クラスター全体で自動プロビジョニングが無効にされます。 -
非特権ユーザーである場合は、OpenShift Container Platform で使用するサービスを作成する必要があります。サービス名は
jenkinsPipelineConfigのserviceNameのクラスター設定値と一致している必要があります。デフォルト値はjenkinsです。プロジェクトの外部で Jenkins サーバーを実行しているために自動プロビジョニングを無効にしている場合は、この新規サービスを既存の Jenkins サーバーにポイントすることが推奨されます。「外部サービスの統合」を参照してください。
後者のオプションは、選択したプロジェクト内でのみ自動プロビジョニングを無効にするためにも使用できます。
28.2. OpenShift Jenkins Client プラグイン
OpenShift Jenkins Client プラグインは、OpenShift API Server との高度な対話を実現するために、読み取り可能かつ簡潔で、包括的で Fluent (流れるような) な Jenkins パイプライン構文を提供することを目的とした Jenkins プラグインです。このプラグインは、スクリプトを実行しているノードで使用できる必要がある OpenShift コマンドラインツール (oc) を活用します。
プラグインのインストールと設定の詳細については、以下のリンクから公式ドキュメントを参照し、確認してください。
このプラグインの使用に関する情報を必要としている開発者の場合は、「OpenShift Pipeline の概要」を参照してください。
28.3. OpenShift Jenkins の同期プラグイン
この Jenkins プラグインは、OpenShift BuildConfig および Build オブジェクトと Jenkins ジョブおよびビルドとの同期を維持します。
OpenShift Jenkins 同期プラグインは以下を実行します。
- Jenkins での動的なジョブ/実行の作成。
- ImageStreams、ImageStreamTag、または ConfigMap からのスレーブ Pod テンプレートの動的作成。
- 環境変数の挿入。
- OpenShift Web コンソールでの Pipeline の可視化。
- Jenkins Git プラグインとの統合。これにより、OpenShift ビルドから Jenkins Git プラグインにコミット情報が渡されます。
このプラグインの詳細については、以下を参照してください。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.