Muk*_*aik 5 terraform azure-functions terraform-provider-azure infrastructure-as-code
作为 IaC 的一部分,函数应用程序(我们将其命名为FuncAppX)是使用 Terraform 进行部署的,其中包含一个函数。
我需要使用 Terraform 在函数应用程序中访问同一函数的Url 。我在这里分享相同的屏幕截图以供参考,其中很容易获得“ GetFunction Url ”,但使用 terraform ,我没有办法返回相同的屏幕截图,它需要作为输入传递给另一个函数应用程序。
ssc*_*eck 12
您需要自己构建特定功能端点的 URL。由于具体函数名称是通过 定义的function.json,因此您需要将其复制到 Terraform 脚本中。
locals {
function_foo = "foo"
}
Run Code Online (Sandbox Code Playgroud)
URL 包含一个秘密作为查询参数,您可以通过数据源获取该秘密azurerm_function_app_host_keys。
data "azurerm_function_app_host_keys" "example" {
name = azurerm_function_app.example.name
resource_group_name = azurerm_function_app.example.resource_group_name
depends_on = [azurerm_function_app.example]
}
Run Code Online (Sandbox Code Playgroud)
现在您可以自己构建 URL。
output "url" {
value = "https://${azurerm_function_app.example.default_hostname}/api/${local.function_foo}?code=${data.azurerm_function_app_host_keys.example.default_function_key}"
}
Run Code Online (Sandbox Code Playgroud)
请注意,这些azurerm_function_app_host_keys值可能不会立即可用,因为具体 Function App 的部署与azurerm_function_app服务创建是分离的。根据您的情况,您可能需要添加一些手动同步(例如使用null_resource)。
| 归档时间: |
|
| 查看次数: |
3342 次 |
| 最近记录: |