为azure devops通过Terraform从外部文件创建构建变量



我正在通过terraform创建Azure devops构建管道,并希望我的构建变量在创建构建时通过外部文件传递。相同的地形代码将用于创建不同模板的管道,因此相应的变量也将改变,所以为了使它可用于所有管道,我希望我的地形代码从外部文件中获取构建管道变量并创建它。也不能用可变组。因此,如果有任何其他过程请建议。任何帮助或建议将非常感激。

resource "azuredevops_build_definition" "build" {
project_id = azuredevops_project.project.id
name       = "Sample Build Definition"
path       = "\ExampleFolder"
ci_trigger {
use_yaml = true
}
variable {
name  = "PipelineVariable"
value = "Go Microsoft!"
}
variable {
name      = "PipelineSecret"
secret_value     = "ZGV2cw"
is_secret = true
}

上面传递的变量应该从外部文件传递。

您只需要为您需要的值定义地形变量,并在资源中使用它们:

variable "buildinfo"{ type = string default = "my value" }

而在资源中你只需要使用:

.... value = var.buildinfo ....

如果您使用CI

,则可以在每次运行时使用tfvars文件或在管道变量中传递变量值。

你可以这样做:

起程拓殖:

variable "PipelineVariable"" {
}

然后在管道中定义变量,如TF_VAR_PipelineVariable或在使用source .env调用文件(示例文件:.env)的任何阶段:

.env:

export TF_VAR_PipelineVariable=CONTENT

相关内容

  • 没有找到相关文章

最新更新