亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Google Cloud Build 上部署 Golang AppEngine 產生無限構建

在 Google Cloud Build 上部署 Golang AppEngine 產生無限構建

Go
料青山看我應如是 2023-06-05 13:28:18
我正在嘗試設置 Cloud Build 管道以將golang應用程序部署到 App Engine,但它似乎會生成無限版本的自身,然后超時。首先,這是我的配置。steps:- name: "gcr.io/cloud-builders/go"  args:    - get    - "-u"    - "-d"    - "github.com/didip/tollbooth"    - "github.com/lib/pq"    - "github.com/stretchr/testify"    - "github.com/go-redis/redis"    - "cloud.google.com/go/pubsub"  dir: "/workspace"  volumes:    - name: 'go'      path: '/gopath'  env:    - "GOPATH=/gopath"- name: "gcr.io/cloud-builders/gcloud"  args: ["app", "deploy", "--stop-previous-version"]  dir: "/workspace"  volumes:    - name: 'go'      path: '/gopath'  env:    - "GOPATH=/gopath"這是相關部分app.yaml:service: "myservice"runtime: customenv: flex當我部署到我已將其配置為觀看的分支時,它開始構建就好了,并完成第 0 步。然后它開始第 1 步,即,它似乎遞歸地生成管道的另一個實例(見下面的gcloud app deploy日志). 這一直持續到一切超時。這是日志的開頭(接近尾聲時,您會看到它再次在步驟 1 中遞歸地開始步驟 0)。
查看完整描述

2 回答

?
忽然笑

TA貢獻1806條經驗 獲得超5個贊

所以這原來是一個關于如何Google Cloud Build處理配置文件的問題cloudbuild.yaml。它必須在每次看到一個新版本時生成一個新版本,無論它是否已經被看到。

就我而言,由于項目很小,所以cloudbuild.yaml我的 go 源代碼都位于項目的根目錄。這會導致以下情況:

  • 初始git push觸發構建,讀取cloudbuild.yaml.

  • 該構建發現cloudbuild.yaml當前工作目錄中有一個,并為此生成一個新構建。

我想這很有用,因為您可以為項目中的各種事物設置多個構建配置,這些配置將在遇到時構建。

將 go 源移動到src/(遠離 cloudbuild)解決了這個問題。

tl;dr不要把你的放在cloudbuild.yaml工作目錄中。


查看完整回答
反對 回復 2023-06-05
?
嗶嗶one

TA貢獻1854條經驗 獲得超8個贊

我無法重新創建無限構建,但有幾件事


查看完整回答
反對 回復 2023-06-05
?
慕標琳琳

TA貢獻1830條經驗 獲得超9個贊

您無權部署應用程序和啟用 Appenginge Flexible API。


在日志中,有一個警告:


WARNING: Unable to verify that the Appengine Flexible API?

is enabled for project [project-name].?

You may not have permission to list enabled services on this project.

If it is not enabled, this may cause problems in running your deployment.

Please ask the project owner to ensure that the Appengine Flexible API

has been enabled and that this account has permission to list enabled APIs.

簡化 AppEngine 靈活應用部署的步驟:

  1. 作為項目所有者:首次啟用 Appengine Flexible API + 部署應用程序,并且:

  2. 為您用于執行該任務的用戶授予部署 AppEngine 應用程序的權限。


查看完整回答
反對 回復 2023-06-05
  • 2 回答
  • 0 關注
  • 222 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號