我正在尝试使用 null_resource 配置器在函数应用程序中配置 2 个函数,这就是 null_resource 的样子
resource "null_resource" "functions" {
triggers = {
functions = "${local.version}_${join("+", [for value in local.functions : value["name"]])}"
}
provisioner "local-exec" {
command = <<-EOT
cd functions/
func azure functionapp publish ${local.app_name}
cd ../
EOT
interpreter = ["bash", "-c"]
}
depends_on = [azurerm_function_app.core]
}
天蓝色的 devops 步骤如下所示:
#Apply
- bash: terraform apply deployment.tfplan
displayName: Terraform Apply
workingDirectory: dev/terraform/
env:
ARM_SUBSCRIPTION_ID: $(kv-arm-subscription-id)
ARM_CLIENT_ID: $(kv-arm-client-id)
ARM_CLIENT_SECRET: $(kv-arm-client-secret)
ARM_TENANT_ID: $(kv-arm-tenant-id)
但我看到两个问题:
1-它没有找到functions文件夹,虽然它在里面
2-它返回一个无法连接到 azure 的错误,这是完整的错误消息:
│
│ Error running command 'cd functions/
│ func azure functionapp publish my-app-gt-test5345
│ cd ../
│ ': exit status 1. Output: bash: line 0: cd: $'functions/\r': No such file
│ or directory
│ Unable to connect to Azure. Make sure you have the `az` CLI or
│ `Az.Accounts` PowerShell module installed and logged in and try again
│ bash: line 2: cd: $'../\r': No such file or directory
