iT邦幫忙

2024 iThome 鐵人賽

DAY 2
0
DevOps

將 AI Code Review 整進 CICD系列 第 2

將 AI Code Review 整進 CICD Day2

  • 分享至 

  • xImage
  •  

Day1 我們在 local 端將 AI code review 整了進去,但我們的 MR URL 是給死的,這不符合正常使用情境,我們現在要將運行這件事情整進 runner 內,然後藉由 webhook 帶入 server

main-feature(repo) - trigger webhook -> ai-review-runner(repo)

我們先做第一件事情,確認 main-feature - trigger webhook → 是可以正常運作的,我們才可以解決第一件事情,動態給予 MR URL 。

在main-feature 的 setting - webhooks,我們得知 webhooks 要設定幾樣事情

  1. url - 這邊的 URL,我們參考官方網站,如果要觸發另一個 repo 的 pipeline 可以藉由網址的方式

  2. trigger event → 這邊會設定 Merge request events

初始化 ai-review-runner

我們先來建立 ai-review-runner 的 repo,由於這個 runner 到時候會放 image,裡面可能會有隱私 token,所以先開 private。建立好 repo 後,我們先建立基本的 pipeline,等等才知道能不能成功串接。因為是 private,所以我 clone 時有帶上 personal token

git clone https://ooii8929:xxxxx@gitlab.com/ooii8929/ai-review-runner

我們新增一個 .gitlab-ci.yml 檔案,然後 push 上 branch,發現有成功觸發

stages:
  - build

build_job:
  stage: build
  script:
    - echo "Building the project..."
    - echo "Build complete."

https://ithelp.ithome.com.tw/upload/images/20240816/20118525FZtzJK4MLr.png

建立 Trigger

我們要來創建 trigger pipeline 專用的 pipeline trigger token。在 ai-review-runner 前往 setting - cicd - Pipeline trigger tokens。Description 寫 For ai code review。拿到 token 之後,我們參考官方的 webhook URL

https://gitlab.example.com/api/v4/projects/<project_id>/ref/<ref_name>/trigger/pipeline?token=<token>

https://gitlab.com/api/v4/projects/60531797/ref/main/trigger/pipeline?token=xxxxx

在 main-feature 的 webhook 新增上述 URL,token 的地方可以善用 Mask portions of URL。成功加入後按一下 test - merge request event,就可以看到上方有 HTTP 201

https://ithelp.ithome.com.tw/upload/images/20240816/20118525JqxZyEEK8v.png

回到 ai-review-runner 來看,就可以看到 pipeline 被 trigger 了

https://ithelp.ithome.com.tw/upload/images/20240816/20118525DIhpdCclXY.png


上一篇
將 AI Code Review 整進 CICD Day1
下一篇
將 AI Code Review 整進 CICD Day3
系列文
將 AI Code Review 整進 CICD24
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言