我正在使用Azure DevOps和Terraform将多个应用服务部署到Azure,但我的应用服务的应用设置每次都在更改,所以我不得不手动将它们添加到变量组和我的Terraform配置,这真的很烦人,也很浪费时间,所以我希望当我将它们添加到变量组时,它会自动添加到Terraform配置。
11dmarpk1#
使用变量组将应用程序设置自动添加到Terraform:可以,您可以在Azure Devops中创建变量组,并使用Terraform配置访问它。你可以尝试下面的terraform代码来实现同样的效果。我已经添加了locals块来定义值,并将其传递到azurerm_appservice,app_settings块来访问变量。
locals
azurerm_appservice
app_settings
terraform { required_providers { azurerm = { source = "hashicorp/azurerm" version = "3.44.1" } } } locals{ app_settings = { key1 = var.value key2 = var.value } } provider "azurerm"{ features{} } resource "azurerm_resource_group" "example" { name = "example-resources" location = "West Europe" } resource "azurerm_app_service_plan" "example" { name = "example-appserviceplan" location = azurerm_resource_group.example.location resource_group_name = azurerm_resource_group.example.name sku { tier = "Standard" size = "S1" } } resource "azurerm_app_service" "example" { name = "example-app-service" location = azurerm_resource_group.example.location resource_group_name = azurerm_resource_group.example.name app_service_plan_id = azurerm_app_service_plan.example.id site_config { dotnet_framework_version = "v4.0" scm_type = "LocalGit" } app_settings = local.app_settings }
应用以上配置后,Terraform成功初始化:
或者,您可以使用管道将设置推送到应用配置,如MsDoc中所述。
1条答案
按热度按时间11dmarpk1#
使用变量组将应用程序设置自动添加到Terraform:
可以,您可以在Azure Devops中创建变量组,并使用Terraform配置访问它。
你可以尝试下面的terraform代码来实现同样的效果。我已经添加了
locals
块来定义值,并将其传递到azurerm_appservice
,app_settings
块来访问变量。应用以上配置后,Terraform成功初始化:
或者,您可以使用管道将设置推送到应用配置,如MsDoc中所述。