内部ロード バランサーを使用するように構成された App Service Environment (ASE) の前に配置される Azure にアプリケーション ゲートウェイをデプロイするための Terraform 構成を作成しています。シェル スクリプトを使用して Azure Cloud Shell からテラフォーム構成を実行します。シェル スクリプトでは、AZ CLI コマンドを実行して ASE 内部ロード バランサーの IP アドレスを取得し、それをコマンド ライン変数として Terraform 構成にフィードします。ip_address_list はリストでなければならないというエラーが表示され続けますが、その形式が何を意味するのかわかりません。
以下は、IPアドレスを取得するために使用しているコマンドです。
ilbase_virtual_ip=$(
az resource show \
--ids "/subscriptions/$subscription_id/resourceGroups/$ilbase_rg_name/providers/Microsoft.Web/hostingEnvironments/$ilbase_name/capacities/virtualip" \
--query "additionalProperties.internalIpAddress"
)
これは、以下のようにフォーマットされた IP アドレスを返します。シェルスクリプトの一部としてエコーアウトしているので、正常に取得されたことを確認できます。
"10.10.1.11"
以下は、シェル スクリプトで使用している Terraform コマンド ラインです。
terraform plan \
-var "tfstate_access_key=$tfstate_storage_access_key" \
-var "ilbase_virtual_ip=$ilbase_virtual_ip"
以下は、IP アドレスを適用しようとしている Terraform 構成のコードです。
backend_address_pool {
name = "${data.terraform_remote_state.rg.vnetnamew}-beap"
ip_address_list = "[${var.ilbase_virtual_ip}]"
}
なしで試してみまし[]
たが、同じエラーが発生しました。