2017-06-16 91 views
2

我試圖使用一個服務帳戶使用gcloud beta functions deploy從CI,卻得到一個錯誤:服務帳戶角色部署谷歌雲功能

(gcloud.beta.functions.deploy) ResponseError: status=[403], code=[Forbidden], message=[The caller does not have permission]

我找不到在IAM Web控制檯的任何角色看起來合適。我使用哪一個?

+0

- 您可以展開CI首字母縮略詞嗎? - 請使用--log-http命令運行以查看哪個呼叫失敗。 - 請運行'gcloud auth list'來檢查gcloud認證的帳戶。 –

+0

@BasketWeaver CI =持續集成(詹金斯/竹/ Bitbucket pipeleines等)。我正在使用gcloud服務帳戶([email protected])。這很清楚網絡上發生了什麼 - 我試圖執行「gcloud.beta.functions.deploy」,並且響應是403,因爲服務帳戶沒有正確的權限。作爲QuestionAndAnswer建議添加「所有者」和「編輯器」可能會解決問題,但我希望獲得更具體的角色。 –

+0

似乎沒有任何可以允許部署函數的更窄權限的角色。並沒有這樣做的權限,所以你似乎甚至不能創建自己的角色:( –

回答

1

您可以始終從這兩個選項開始。至少他們必須工作。

enter image description here

,並確保您設置了所有必需的環境變量,以使默認應用程序憑據工作。

+1

我希望「嗨,我來自谷歌,我們剛剛添加了「雲端函數的角色」,但現在「編輯器」正常工作...... –

0

檢查您的當前配置:gcloud config list

查看結果和檢查project =是完全一樣的作爲目標項目的PROJECT_ID

你可以列出你的項目:gcloud config set project

重要

Project =未設置名稱。必須設置PROJECT_ID