我有一個 Google Cloudbuild 管道,它測驗提交到我的 Github 存盤庫的開發分支的代碼,并將代碼部署到開發環境。我想在管道中添加另一個步驟,在成功部署到開發環境后,它將我的 dev 分支與 prod 分支合并。有什么方法可以實作嗎?
uj5u.com熱心網友回復:
您可能可以在由 Cloud Build 觸發器“執行”的“cloudbuild.yaml”(或其他名稱)檔案中執行此操作。
根據我的經驗,您將需要一對密鑰——公鑰應該在 GitHub 中,私鑰值——作為秘密存盤在 Secret Manager 中。
因此,在您可能需要使用的 yaml 檔案中(根據您的情況進行更改,不要像這樣使用):
volumes:
- name: 'ssh'
path: /root/.ssh
迄今為止:
- 獲取私鑰(來自秘密)并
/root/.ssh/github使用類似的方法將其保存為 aa 檔案gcloud secrets versions access latest ... - 更改權限
chmod 600 /root/.ssh/github - 創建一個組態檔:
cat <<EOF >/root/.ssh/config
Hostname github.com
IdentityFile /root/.ssh/github
EOF
- 將 GitHub 公鑰保存到 known_hosts 檔案
ssh-keyscan -t rsa github.com > /root/.ssh/known_hosts
之后,您(實際上是您的 Cloud Build 服務帳戶使用提供的憑據)可以使用普通git命令對 GitHub 存盤庫執行任何需要(取決于 GitHub 中授予的權限)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/363605.html
