使用Terraform构建GitLab项目

时间:2018-04-17 17:11:48

标签: gitlab terraform

我尝试使用内置的Terraform提供程序" GitLab"在Terraform中构建GitLab项目/回购。这似乎非常简单,但是当我$ terraform plan我的文件时,我意外地收到了以下401未经授权的错误。

terraform {
  required_version = ">= 0.11.0"
}

provider "gitlab" {
  token = "<valid-token-id>"
}

resource "gitlab_project" "my_repo" {
  name         = "My Repo"
  namespace_id = 85
}

// ERROR RETURNED BELOW
Error: Error running plan: 1 error(s) occurred:
* provider.gitlab: GET https://gitlab.com/api/v4/user: 401 {message: 
401 Unauthorized}

我知道我传入gitlab provider的GitLab令牌是有效的,因为我在接下来的电话时收到了有效的回复:

$ curl https://<mycompany>.githost.io/api/v4/projects?private_token=$GITLAB_TOKEN

此外,该令牌来自具有完整GitLab访问权限的超级用户。

我意识到这是两个独立的终点,它会成功进行curl通话和terraform plan通话。有没有办法让我配置Terraform在计划/应用时遇到的端点?有没有人有这方面的经验?

1 个答案:

答案 0 :(得分:0)

谢谢ydaetskcoR !!

我是一个大假人。我需要的只是指定base_url(包括/api/v4/在内的所有出路)。

provider "gitlab" {
  token    = "<valid-token>"
  base_url = "https://<mycompany>.githost.io/api/v4/"
}

史诗般的高五给你。