Menu Close

4.6.4. Git リポジトリーからアプリケーションを作成およびデプロイするためのカスタムパイプラインテンプレートの使用

クラスター管理者は、Git リポジトリーからアプリケーションを作成し、デプロイするには、Red Hat OpenShift Pipelines 1.5 以降で提供されるデフォルトのパイプラインテンプレートを上書きするカスタムパイプラインテンプレートを使用できます。

注記

この機能は、Red Hat OpenShift Pipelines 1.4 以前のバージョンでは利用できません。

前提条件

Red Hat OpenShift Pipelines 1.5 以降がすべての namespace にインストールされ、利用可能であることを確認します。

手順

  1. クラスター管理者として OpenShift Container Platform Web コンソール にログインします。
  2. Administrator パースペクティブで、左側のナビゲーションパネルを使用して Pipelines セクションに移動します。

    1. Project ドロップダウンメニューから、openshift プロジェクトを選択します。これにより、後続の手順が openshift namespace で実行されます。
    2. 利用可能なパイプラインの一覧から、アプリケーションのビルドとデプロイに適したパイプラインを選択します。たとえば、アプリケーションに node.js ランタイム環境が必要な場合は、s2i-nodejs パイプラインを選択します。

      注記

      デフォルトのパイプラインテンプレートは編集しないでください。UI とバックエンドとの互換性がなくなる可能性があります。

    3. 選択したパイプラインの YAML タブで、Download をクリックし、YAML ファイルをローカルマシンに保存します。カスタム設定ファイルが失敗した場合は、このコピーを使用して作業設定を復元できます。
  3. デフォルトのパイプラインテンプレートを無効化 (削除) します。

    1. 左側のナビゲーションパネルを使用して、OperatorsInstalled Operators に移動します。
    2. Red Hat OpenShift PipelinesTekton Configuration タブ → configYAML タブをクリックします。
    3. openshift namespace でデフォルトのパイプラインテンプレートを無効化 (削除) するには、pipelineTemplates パラメーターを TektonConfig カスタムリソース YAML で false に設定し、これを保存します。

      apiVersion: operator.tekton.dev/v1alpha1
      kind: TektonConfig
      metadata:
        name: config
      spec:
      profile: all
      targetNamespace: openshift-pipelines
      addon:
        params:
        - name: clusterTasks
          value: "true"
        - name: pipelineTemplates
          value: "false"
      ...
      注記

      デフォルトのパイプラインテンプレートを手動で削除する場合、Operator はアップグレード時にデフォルトを復元します。

      警告

      クラスター管理者は、Operator 設定でデフォルトのパイプラインテンプレートのインストールを無効にできます。ただし、このような設定ではカスタマイズする必要のあるものだけでなく、すべてのデフォルトのパイプラインテンプレートを無効化 (削除) します。

  4. カスタムパイプラインテンプレートを作成します。

    1. 左側のナビゲーションパネルを使用して、Pipelines セクションに移動します。
    2. Create ドロップダウンメニューから、Pipeline を選択します。
    3. 必要なパイプラインを openshift namespace に作成します。デフォルト名とは別の名前を付けます (例: custom-nodejs)。ダウンロードしたデフォルトのパイプラインテンプレートを開始点として使用し、これをカスタマイズすることができます。

      注記

      openshift は Operator でインストールされるパイプラインテンプレートによって使用されるデフォルトの namespace であるため、openshift namespace にカスタムパイプラインテンプレートを作成する必要があります。アプリケーションがパイプラインテンプレートを使用する場合、テンプレートはそれぞれのプロジェクトの namespace に自動的にコピーされます。

    4. 作成されたパイプラインの Details タブで、カスタムテンプレートの Labels がデフォルトのパイプラインのラベルと一致することを確認します。カスタムパイプラインテンプレートには、アプリケーションのランタイム、タイプ、ストラテジーの正しいラベルが必要です。たとえば、OpenShift Container Platform にデプロイされる node.js アプリケーションの必須ラベルは以下のようになります。

      ...
      pipeline.openshift.io/runtime: nodejs
      pipeline.openshift.io/type: openshift
      ...
      注記

      ランタイムの環境とデプロイメントタイプの組み合わせごとに 1 つのパイプラインテンプレートのみを使用できます。

  5. Developer パースペクティブで、+AddGit RepositoryFrom Git オプションを使用して、作成およびデプロイするアプリケーションの種類を選択します。必要なランタイムとアプリケーションのタイプに基づいて、カスタムテンプレートが自動的に選択されます。