コードのデプロイ

AEM as aCloud ServiceでのCloud Managerを使用したコードのデプロイ

実稼動パイプライン(リポジトリー、環境、テスト環境)を設定したら、コードをデプロイする準備が整います。

  1. Cloud Manager で「デプロイ」をクリックして、デプロイメントプロセスを開始します。

  2. パイプライン実行​画面が表示されます。

    ビルド」をクリックしてプロセスを開始します。

  3. 完全なビルドプロセスによってコードがデプロイされます。

    ビルドプロセスには、以下のステージが含まれます。

    1. ステージのデプロイメント
    2. ステージテスト
    3. 実稼動のデプロイメント
    メモ

    さらに、テスト条件のログを表示したり、結果を確認したりすることで、様々なデプロイメントプロセスから手順を確認できます。

    ステージのデプロイメント​には、以下の手順が含まれます。

    • 検証:この手順では、現在使用できるリソース(設定済みのブランチが存在する場合など)を使用するようにパイプラインが設定され、環境が使用できることを確認します。

    • ビルドおよび単体テスト:この手順では、コンテナ化されたビルドプロセスを実行します。ビルド環境について詳しくは、「ビルド環境の詳細」を参照してください。

    • コードスキャン:この手順では、アプリケーションコードの品質を評価します。テストプロセスの詳細については、「コード品質テスト」を参照してください。

    • イメージのビルド:このステップには、イメージのビルドに使用されたプロセスのログファイルが含まれます。このプロセスでは、ビルドステップで生成されたコンテンツおよび Dispatcher パッケージを Docker イメージと Kubernetes 設定に変換します。

    • ステージへのデプロイ


      ステージテスト​には、以下のステップが含まれます。

    • 製品機能テスト:Cloud Manager のパイプライン実行では、ステージ環境に対するテストの実行をサポートしています。
      詳しくは、「製品機能テスト」を参照してください。

    • カスタム機能テスト:パイプライン内のこのステップは常に存在し、スキップできません。ただし、ビルドでテスト JAR が生成されない場合、テストはデフォルトで合格します。\

      詳しくは、「カスタム機能テスト」を参照してください。

    • カスタム UI テスト:(オプション)顧客はアプリケーションの UI テストを作成し、自動的に実行できます。UI テストは、言語とフレームワークの幅広い選択肢(Java と Maven、Node と WebDriver.io、Selenium に基づいて構築されたその他のフレームワークとテクノロジーなど)を可能にするために Docker イメージにパッケージ化された Selenium ベースのテストです。詳しくは、カスタム UI テストを参照してください。

    • エクスペリエンス監査:パイプライン内のこのステップは常に存在し、スキップできません。実稼動パイプラインの実行時に、チェックを実行するカスタム機能テストの後に、エクスペリエンスの監査手順が組み込まれます。設定されたページがサービスに送信され、評価されます。結果は情報提供であり、ユーザーはスコアおよび現在のスコアと以前のスコアの変化を確認できます。このインサイトは、現在のデプロイメントで前のバージョンになかった不具合が導入されるかどうかを判断するのに役立ちます。
      詳しくは、「エクスペリエンス監査結果について」を参照してください。

デプロイメントプロセス

すべてのCloud Serviceデプロイメントは、周期的なプロセスに従って、ダウンタイムをゼロにします。 詳しくは、ローリングデプロイメントの仕組みを参照してください。

実稼動フェーズへのデプロイメント

AEM サイト訪問者への影響を最小限に抑えるために、実稼動トポロジへのデプロイプロセスはわずかに異なります。

実稼動のデプロイメントは、通常、上記と同じ手順に従いますが、周期的な方法で実行します。

  1. オーサーに AEM パッケージをデプロイします。
  2. dispatcher1 をロードバランサーから分離します。
  3. AEM パッケージを publish1 にデプロイし、Dispatcher を dispatcher1 にデプロイして、Dispatcher キャッシュをフラッシュします。
  4. dispatcher1 をロードバランサーに戻します。
  5. dispatcher1 がサービスを再開したら、dispatcher2 をロードバランサーから分離します。
  6. AEM パッケージを publish2 にデプロイし、Dispatcher パッケージを dispatcher2 にデプロイして、Dispatcher キャッシュをフラッシュします。
  7. dispatcher2 をロードバランサーに戻します。
    このプロセスは、デプロイメントがトポロジのすべてのパブリッシャーおよび Dispatcher に到達するまで続行されます。

このページ