Terraform-使用Gitlab提供程序保存机密

时间:2018-06-29 09:20:22

标签: gitlab terraform

根据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}"
}

将为我们节省很多痛苦。

1 个答案:

答案 0 :(得分:0)

尽管有open issue,但有评论说有人打算在几个月前开始进行这项工作,目前尚无法完成。

Gitlab提供程序使用确实具有upstream xanzy/go-gitlab projectsupport for project variables,因此添加它应该不会太费力。如果您之前写过Go语言书和/或曾经为Terraform提供者做出过贡献,那么考虑到在该问题上缺乏更新,可能值得您亲自尝试。