【发布时间】:2020-11-25 06:39:44
【问题描述】:
我是 terraform 的新手,我想使用 Terraform 创建一个 Google Cloud Function,但想从 Github 提取源代码。
我设法做到这一点,压缩函数并使用 Terraform 将其复制到云存储中,但我不喜欢这个工作流程,因为我必须运行一个脚本才能开始。我宁愿只是在 Github 上做一个 PR,然后在 GCP 中查看新代码。
我已经将 Google Cloud Source Repositories 设置为从我的 Github 获取源代码。
我不清楚使用“source_repository”参数的 Terraform 文档。我想做的只是从 master 分支上的 HEAD 获取源代码。
我只是想知道在这种情况下如何指定“source_repository”参数。
我的云源存储库网址是https://source.cloud.google.com/projectName/github_offiecDomain_gitRepoName
我的云函数 terraform 脚本看起来像
resource "google_cloudfunctions_function" "js_function" {
source_repository {
url = "https://source.cloud.google.com/projectName/github_offiecDomain_gitRepoName"
}
}
当我terraform apply 它返回一个错误
google_cloudfunctions_function.js_function: Creating...
Error: googleapi: Error 400: The request has errors, badRequest
on main.tf line 89, in resource "google_cloudfunctions_function" "js_function":
89: resource "google_cloudfunctions_function" "js_function" {
编辑将我的日志级别移动到跟踪
这就是我所拥有的
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: ff
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: {
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: "error": {
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: "code": 400,
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: "message": "The request has errors",
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: "errors": [
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: {
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: "message": "The request has errors",
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: "domain": "global",
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: "reason": "badRequest"
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: }
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: ],
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: "status": "INVALID_ARGUMENT"
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: }
2020-08-05T11:07:30.722+0500 [DEBUG] plugin.terraform-provider-google_v3.17.0_x5: }
我认为我的 URL 参数无效。任何线索我该如何写我的网址?
【问题讨论】:
-
你解决过这个问题吗?遇到同样的问题。
-
@LukasBatteau 有一个我们需要遵循的 url 模式。您不能直接复制并粘贴 url。在下面的 url source.developers.google.com/projects*/repos/*/moveable-aliases/*/paths/ 中用你自己的名字替换 ''
标签: github google-cloud-platform google-cloud-functions terraform terraform-provider-gcp