コンテキスト対応のクラウド設定

ローカル環境でクラウド設定を作成し、テストが成功した場合は、エンドポイント、シークレットキー/パスワードおよびユーザー名を変更しなくても、アップストリーム環境で同じクラウド設定を使用する必要があります。このユースケースを実現するために、Cloud Service上のAEM Formsでは、コンテキストに応じたクラウド設定を定義する機能が導入されました。
例えば、Azure ストレージアカウントのクラウド設定は、開発環境、ステージング環境、実稼動環境で、の様々な接続文字列とキーを使用して再利用できます。

コンテキスト対応のクラウド設定を作成するのに必要な手順を次に示します。

環境変数の作成

標準環境変数は、Cloud Manager を介して設定および管理できます。 これらは実行時環境に提供され、OSGi 設定で使用できます。 環境変数には、環境固有の値または環境シークレットを変更内容に応じて指定できます。

次のスクリーンショットは、定義されたazure_keyおよびazure_connection_string環境変数を示しています
環境変数

これらの環境変数は、適切な環境で使用する設定ファイルで指定できます
例えば、すべてのオーサーインスタンスでこれらの環境変数を使用する場合は、次に指定するようにconfig.author フォルダーに設定ファイルを定義します

設定ファイルを作成

IntelliJ で プロジェクトを開きます。 config.author に移動し、ファイルを作成します。

org.apache.sling.caconfig.impl.override.OsgiConfigurationOverrideProvider-integrationTest.cfg.json

config.author

前の手順で作成したファイルに、次のテキストをコピーします。 このファイルのコードは、accountName プロパティと accountKey プロパティの値を環境変数 azure_connection_stringazure_key で上書きしています。

{
  "enabled":true,
  "description":"dermisITOverrideConfig",
  "overrides":[
   "cloudconfigs/azurestorage/FormsCSAndAzureBlob/accountName=\"$[env:azure_connection_string]\"",
   "cloudconfigs/azurestorage/FormsCSAndAzureBlob/accountKey=\"$[secret:azure_key]\""

  ]
}
NOTE
この設定は、クラウドサービスインスタンスのすべてのオーサー環境に適用されます。設定を公開環境に適用するには、同じ設定ファイルをintelliJ プロジェクトのconfig.publish フォルダーに配置する必要があります
NOTE
​> 上書きされるプロパティがクラウド設定の有効なプロパティであることを確認してください。クラウド設定に移動して、次に示すように上書きするプロパティを見つけます。

cloud-config-property

基本認証を使用する REST ベースのクラウド設定の場合は、通常、serviceEndPoint、userName および password のプロパティの環境変数を作成する必要があります。

次の手順

AEM プロジェクトを Cloud Manager にプッシュ

recommendation-more-help
experience-manager-learn-help-cloud-service