実稼動以外のパイプラインの設定

実稼動環境にデプロイする前にコードの品質をテストするための実稼動以外のパイプラインを設定する方法を説明します。

実稼動以外のパイプライン

ステージング環境と実稼動環境にデプロイする実稼動パイプラインに加えて、実稼動以外のパイプラインも設定して、コードを検証できます。

実稼動以外のパイプラインには次の 2 種類があります。

  • コード品質パイプライン - これらの実行コード品質スキャンは、Git 分岐のコードに対して実行され、ビルドステップとコード品質ステップを実行します。
  • デプロイメントパイプライン - コード品質パイプラインなどのビルドステップとコード品質ステップを実行する以外に、これらのパイプラインはコードを実稼動以外の環境にデプロイします。
メモ

初期設定後にパイプライン設定を編集できます。

実稼動以外の新しいパイプラインの追加

Cloud Manager UI を使用してプログラムを設定し、1 つ以上の環境を用意したら、次の手順に従って実稼動以外のパイプラインを追加する準備が整います。

  1. my.cloudmanager.adobe.com で Cloud Manager にログインし、適切な組織とプログラムを選択します。

  2. Cloud Manager のホーム画面から​パイプライン​カードにアクセスします。「+追加」をクリックし、「実稼動以外のパイプラインを追加」を選択します。

    実稼動以外のパイプラインを追加

  3. 実稼動以外のパイプラインを追加​ダイアログの「設定」タブで、追加する実稼働以外のパイプラインのタイプ(コード品質パイプライン​または​デプロイメントパイプライン)を選択します。

    実稼動以外のパイプラインを追加ダイアログ

  4. 実稼動以外のパイプライン名​を指定して、次の追加情報と共にパイプラインを特定します。

    • デプロイメントトリガー - 次のオプションで、パイプラインを開始するデプロイメントトリガーの時期を定義できます。

      • 手動 - このオプションを使用して、パイプラインを手動で開始します。
      • Git の変更時 - このオプションは、設定された Git ブランチにコミットが追加されるたびに CI/CD パイプラインを開始します。このオプションを使用すると、必要に応じてパイプラインを手動で開始できます。
  5. 続行」をクリックします。

  6. 実稼動以外のパイプラインを追加​ダイアログの「ソースコード」タブで、パイプラインが処理するコードのタイプを選択する必要があります。

実稼動以外のパイプラインの作成を完了する手順は、選択した​ソースコード​のオプションによって変わります。上記のリンクをたどって、このドキュメントの次の節に移動し、パイプラインの設定を完了します。

フロントエンドコード

フロントエンドコードパイプラインは、1 つ以上のクライアントサイド UI アプリケーションを含んだフロントエンドコードビルドをデプロイします。このタイプのパイプラインについて詳しくは、CI/CD パイプラインドキュメントを参照してください。

フロントエンドコードの実稼動以外のパイプラインの設定を完了するには、次の手順に従います。

  1. ソースコード」タブで、次のオプションを定義する必要があります。

    • 適格なデプロイメント環境 - パイプラインがデプロイメントパイプラインの場合、デプロイ先の環境を選択する必要があります。
    • リポジトリ - このオプションは、パイプラインがコードを取得する Git リポジトリを定義します。
    ヒント

    Cloud Manager でリポジトリを追加および管理する方法については、リポジトリの追加と管理のドキュメントを参照してください。

    • Git ブランチ - このオプションは、選択したパイプラインのどのブランチからコードを取得するかを定義します。
      • ブランチ名の最初の数文字を入力すると、このフィールドのオートコンプリート機能により、一致するブランチが検索され、選択に役立ちます。
    • コードの場所 - このオプションは、パイプラインがコードを取得する必要がある、選択したリポジトリのブランチ内のパスを定義します。

    フロントエンドパイプライン

  2. 保存」をクリックします。

パイプラインが保存され、プログラムの概要​ページの​パイプライン​カードのパイプラインを管理できるようになります。

フルスタックコード

フルスタックコードパイプラインは、1 つ以上の AEM サーバーアプリケーションを含んだバックエンドおよびフロンエンドコードビルドと HTTPD/Dispatcher 設定を同時にデプロイします。このタイプのパイプラインについて詳しくは、CI/CD パイプラインのドキュメントを参照してください。

メモ

選択した環境にフルスタックコードパイプラインが既に存在する場合、この選択は無効になります。

フルスタックコードの実稼動以外のパイプラインの設定を完了するには、次の手順に従います。

  1. ソースコード」タブで、次のオプションを定義する必要があります。

    • 適格なデプロイメント環境 - パイプラインがデプロイメントパイプラインの場合、デプロイ先の環境を選択する必要があります。
    • リポジトリ - このオプションは、パイプラインがコードを取得する Git リポジトリを定義します。
    ヒント

    Cloud Manager でリポジトリを追加および管理する方法については、リポジトリの追加と管理のドキュメントを参照してください。

    • Git ブランチ - このオプションは、選択したパイプラインのどのブランチからコードを取得するかを定義します。
      • ブランチ名の最初の数文字を入力すると、このフィールドのオートコンプリート機能により、一致するブランチが検索され、選択に役立ちます。
    • Web 層の構成を無視 — オンにすると、パイプラインは Web 層設定をデプロイしません。

    フルスタックパイプライン

  2. 保存」をクリックします。

パイプラインが保存され、プログラムの概要​ページの​パイプライン​カードのパイプラインを管理できるようになります。

Web 階層設定

Web 階層設定パイプラインは HTTPD/Dispatcher 設定をデプロイします。このタイプのパイプラインについて詳しくは、CI/CD パイプラインドキュメントを参照してください。

メモ

選択した環境に web 階層コードパイプラインが既に存在する場合、この選択は無効になります。

Web 階層コードの実稼動以外のパイプラインの設定を完了するには、次の手順に従います。

  1. ソースコード」タブで、次のオプションを定義する必要があります。

    • 適格なデプロイメント環境 - パイプラインがデプロイメントパイプラインの場合、デプロイ先の環境を選択する必要があります。
    • リポジトリ - このオプションは、パイプラインがコードを取得する Git リポジトリを定義します。
    ヒント

    Cloud Manager でリポジトリを追加および管理する方法については、リポジトリの追加と管理のドキュメントを参照してください。

    • Git ブランチ - このオプションは、選択したパイプラインのどのブランチからコードを取得するかを定義します。
    • コードの場所 - このオプションは、パイプラインがコードを取得する必要がある、選択したリポジトリのブランチ内のパスを定義します。
      • Web 階層設定パイプラインの場合、これは通常、conf.dconf.dispatcher.d および opt-in ディレクトリを含んだパスになります。
      • 例えば、プロジェクト構造が AEM プロジェクトアーキタイプから生成された場合、パスは /dispatcher/src のようになります。

    Web 階層パイプライン

  2. 保存」をクリックします。

メモ

既存のフルスタックパイプラインが環境にデプロイされている場合、同じ環境に対して web 層設定パイプラインを作成すると、フルスタックパイプライン内の既存の web 層設定が無視されます。

パイプラインが保存され、プログラムの概要​ページの​パイプライン​カードでパイプラインを管理できるようになりました。

Dispatcher パッケージのスキップ

Dispatcher パッケージをパイプラインの一部として作成しても、ビルドストレージに公開しない場合は、そのパッケージの公開を無効にすることができます。その結果、パイプラインの実行時間が短くなる可能性があります。

Dispatcher パッケージの公開を無効にする次の設定を、プロジェクトの pom.xml ファイルを使用して追加する必要があります。この設定は環境変数に基づいています。この環境変数は、Cloud Manager ビルドコンテナに設定できるフラグの役目を果たすもので、Dispatcher パッケージをいつ無視すべきかを指定します。

<profile>
  <id>only-include-dispatcher-when-it-isnt-ignored</id>
  <activation>
    <property>
      <name>env.IGNORE_DISPATCHER_PACKAGES</name>
      <value>!true</value>
    </property>
  </activation>
  <modules>
    <module>dispatcher</module>
  </modules>
</profile>

このページ