--- title: 範例演練 ( Cloud Source Repositories ) tags: GCP # 簡報的標籤 --- ## 這篇會介紹整個 Cloud Build 介面,跟觸發條件的詳細介紹,詳細設定請到這邊觀看 ## [Cloud Build 介面介紹](/IXoQAk0SQjOiJoqB3BcgQw) ## 這篇是介紹 Cloud Source Repositories 介面,詳細設定請到這邊觀看 ## [Cloud Source Repositories 介面介紹](/9LmmsdLlQuu60HwjZi6VSw) --- ## 進入 GCP 點擊左上角三條線,選擇 Cloud Build ![](https://i.imgur.com/Y661J7Q.png) ## 這時左邊會看到幾個功能 - 資訊主頁:觸發條件的一些基本資訊 - 紀錄:觸發條件成功狀況基本資訊和過程 - 觸發條件:觸發條件設定 - 設定:權限設定 ![](https://i.imgur.com/GyfoaPr.png) ## 點選紀錄啟用 Cloud Build API ![](https://i.imgur.com/YIFU7jk.png) ## 點選設定,選擇要開啟的權限 ![](https://i.imgur.com/GKOUKHS.png) ## PS:如果沒有開啟 API 設定這邊是沒辦法設定權限的 ![](https://i.imgur.com/kDHEQMz.png) ## 接下來到 Cloud Source Repositories (下面簡稱 GCSR),點擊會跳出新分頁 ![](https://i.imgur.com/kbohSev.png) ## 剛開始是沒有存放區的,首先先建立一個存放區 ![](https://i.imgur.com/fUhBJUY.png) ![](https://i.imgur.com/wps2jxG.png) ## 輸入存放區名稱,選擇專案 ![](https://i.imgur.com/F9f1ynd.png) ## 建好後選擇驗證放式把存放區拉到本機( 其實就是GitHub 的遠端倉庫 ),本文章使用 SDK 方式 ( 此方式本機要先安裝好 google SDK ) ![](https://i.imgur.com/LVxiLnC.png) ## 使用 GCSR 給的指令把存放區拉到本機 ![](https://i.imgur.com/VFXwaeC.png) ![](https://i.imgur.com/guliARr.png) ## 有了存放區接下來就可以回到 Cloud Build 設定觸發條件了,因為 GCSR 也是 GCP 工具之一,所以不用像 GitHub 一樣設定,直接點選建立觸發條件 ![](https://i.imgur.com/ESkJkR8.png) ## 來到處發條件建立畫面上半部有幾個設定 - 名稱:為觸發條件命名 - 說明:為觸發條件說明 - 事件: - 來源: - 反轉規則: - 納入和隱藏檔案篩選器 ![](https://i.imgur.com/FNATeLh.png) ## 下半部設定 - 檔案類型: - 替代變數: ![](https://i.imgur.com/diz26vR.png) ## 因為 GCSR 存放區建好了,所以來源-存放區這邊就可以直接選擇了 ![](https://i.imgur.com/XYqM59I.png) ## 設定好的觸發條件 ![](https://i.imgur.com/udxGy5B.png) ## 設定好接下來就是測試,先推送一個 Dockerfile 到 GCSR 測試 ### Dockerfile 內容 ``` FROM nginx ``` ## 推送 Dockerfile 到 GCSR ![](https://i.imgur.com/PmpwYAu.png) ## 推送完後到 GSCR 可以看到 Dockerfile ![](https://i.imgur.com/uVscAkn.png) ![](https://i.imgur.com/uHvIWzl.png) ## 推送完後到 Cloud Build 紀錄可以查看觸發條件成功狀況,還有一些基本資訊 ![](https://i.imgur.com/5OvFGvG.png) ## 點擊版本名稱可以進去查看執行過程 ![](https://i.imgur.com/K55xUpC.png) ![](https://i.imgur.com/V8E8hsf.png) ## 使用 Dockerfile 的方式,Cloud Build會自動幫你推送 image 到 Comtainer Registry ![](https://i.imgur.com/9vFWfOs.png) ## 點選資訊主頁,可以看到每個觸發條件的一些基本資訊 ![](https://i.imgur.com/2TH0GDk.png) ## 接下來到 Container Registry 可以看到剛剛建立好推送過來的 image ![](https://i.imgur.com/U5F4mgO.png) ## 到這邊整個流程就結束了