昨天建立好整體的環境,今天就讓我們來把他進行完整設定,並且執行一個實際專案。
drone server 要可以運作,必須要從 gitea 中取得 client id
與 secret
,就讓我們開始吧!
在登入 gitea
後,點選右上方的使用者大頭貼,之後點選 設定
接著點選 應用程式
再來我們來 新增 OAuth2 應用程式
,名稱可以隨意定義,重新導向的 URL 使用 http://<url>/login
,設定如下
設定完畢點選 建立應用程式
會出現以下畫面,要將 客戶端 ID
與 客戶端密鑰
複製起來後面會用到
接著回到 docker-compose
的設定,開啟 .env
檔案,將上一步取得的設定貼至此處如下
客戶端 ID -> DRONE_GITEA_CLIENT_ID
客戶端密鑰 -> DRONE_GITEA_CLIENT_SECRET
設定完畢之後,輸入以下指令重新啟動 drone-server
docker-compose up -d
接著可以透過在瀏覽器輸入 http://<ip>:9999
進入 drone-server
的畫面,輸入後會先看到此畫面
按下「授權應用程式」後,就會跳轉回到 drone-server
的畫面
我們可以在 gitea
中建立一個名為 chat
的 組織
,之後在裡面建立名為 random_anonymous_chat
的儲存庫
建立完畢之後回到 drone-server
中按下 Sync
的按鈕進行同步(與 gitea 同步),等同步完成後會看到以下畫面
看到此畫面代表設定成功
將 drone 與 gitea 設定同步是一個非常簡單的動作,但這個動作帶來的效益非常大,我們可以藉此設定不同專案的 CI 流程,有任何更動也都是同步進行。