如何连接Terraform以创建从GCP中的私有bitbucket存储库提取的云构建触发器

时间:2019-04-04 14:48:48

标签: google-cloud-platform bitbucket terraform google-cloud-build terraform-provider-gcp

我正在建立一个Terraform计划,以便在Google云提供商中创建云构建触发器。但是,terraform文档中概述的步骤适用于公共git存储库。当我尝试连接私有bitbucket存储库时,出现“找不到存储库”错误。

resource "google_cloudbuild_trigger" "cloudbuild-trigger" {
  trigger_template {
    branch_name = "staging"
    repo_name = "BITBUCKET_TEAM_NAME/repo_name"
    dir = "site_dir"
  }

  filename = "cloudbuild.yml"
}

2 个答案:

答案 0 :(得分:1)

要提供对私有存储库的访问权限— BitBucket提供了App Password

在创建具有“存储库读取”权限的密码后,您可以使用您的应用程序密码形成URI,以提供对存储库的访问权限。

例如:https://YOUR_USERNAME:YOUR_APP_PASSWORD@bitbucket.org/YOUR-TEAM/YOUR-REPO.git,并且该URI将提供访问权限而无需询问密码即可读取您的存储库。当然,您必须了解凭据泄露的后果。

答案 1 :(得分:0)

repo_name 需要Cloud Source Repository的名称,而不是bitbucket存储库。最初,从UI,我们可以将云构建连接到我们的Bitbucket存储库(私有)。

在设置中,我们可以选择在Cloud Source中镜像存储库。然后,我们可以提供Cloud Source存储库名称ti terraform。在这种情况下,我们不必将任何位桶凭据传递到terraform。