2017-06-19 101 views
2

今天剛開始使用GCloud Functions,我遇到了問題。 我已經更新了我的一個項目,可以使用谷歌的local-emulator(@ google-cloud/functions-emulator)來調試和測試我的新功能。 一切順利,模擬器部署進展得很好。 ```GCloud函數調試部署失敗

$ functions deploy doThing --trigger-http --timeout=540s 
Copying file:///var/folders/nw/.../T/us-central1-doThing-....zip... 
Waiting for operation to finish...done. 
Deploying function.......done. 
Function doThing deployed. 

```

但是當我嘗試使用做同樣的事情,實際gcloud beta functions我得到一個編譯錯誤,沒有任何理由或明顯的方式進行調試:

```

$ gcloud beta functions deploy doThing --stage-bucket test-bucket --trigger-http --timeout=360s 
Copying file:///var/folders/nw/.../T/tmpUJvuxd/fun.zip [Content-Type=application/zip]... 
| [1 files][ 7.5 MiB/ 7.5 MiB] 
Operation completed over 1 objects/7.5 MiB. 
Deploying function (may take a while - up to 2 minutes)...failed. 
ERROR: (gcloud.beta.functions.deploy) OperationError: code=13, message=Error in the build environment 

```

在GClould日誌我沒有得到任何其他細節==>https://pastebin.com/6H7DRkE8

如何調試此部署問題?

回答

3

經過一番研究,我發現了一種調試部署過程的方法。 gcloud工具帶有一系列不易察覺的選項,但提供了諸如verbosity之類的功能。這就是調試部署過程所需的。在這裏找到所有的選項: https://cloud.google.com/sdk/gcloud/reference/alpha/functions/deploy (在頁面底部)

在我的情況下,這個問題是一個私人NPM回購這是肯定的,不能結賬,由於缺乏權限。

gcloud beta functions deploy <NAME> --stage-bucket <BUCKET> --verbosity debug

+0

我們將使用默認設置更好地研究曲面錯誤。 –

+0

@zachary那太酷了! – maephisto

1

我只是有這個同樣的問題,它是通過在模塊名稱package.json/dependencies一個錯字造成的。

+0

謝謝@tonicblue!嗯,仔細檢查,我的代表看起來不錯。如果有一種方法可以調試這個或一些適當的錯誤信息,那將是很好的... – maephisto

+0

同意。我花了一段時間試圖找出解決這個問題的不同方法,並使用谷歌搜索,只有你的SO問題和粘貼bin。很高興你瞭解它的底部。將來,我會將此消息記爲與依賴項相關的內容。 – tonicblue