根据the documentation,Terraform中已经有一个Gitlab提供程序。但是,我找不到在项目中创建/更新机密的方法。那可能吗?有即将推出的相关功能吗?
这确实对我们的工作有帮助,因为配置terraform所需的其他CI部署需要许多terraform的输出变量。
我们正在使用AWS,某些输出变量(例如 IAM凭据或子网ID )无法轻易地推定或推论,目前我们正努力寻找一种方法来将它们转发给我们的其他工具。
能够执行以下操作:
provider "gitlab" {
token = "${var.gitlab_token}"
url = "${var.gitlab_url}"
}
# Add a project secret
resource "gitlab_project_secret" "my_project_secret" {
project_name = "my_project"
secret_key = "${env}_AWS_SECRET_ACCESS_KEY"
secret_value = ""${module.my_iam_user_module.secret_access_key}"
}
将为我们节省很多痛苦。
答案 0 :(得分:0)
尽管有open issue,但有评论说有人打算在几个月前开始进行这项工作,目前尚无法完成。
Gitlab提供程序使用确实具有upstream xanzy/go-gitlab
project的support for project variables,因此添加它应该不会太费力。如果您之前写过Go语言书和/或曾经为Terraform提供者做出过贡献,那么考虑到在该问题上缺乏更新,可能值得您亲自尝试。