iT邦幫忙

2023 iThome 鐵人賽

DAY 20
1
IT管理

每天利用 Jira 開單時,練習一個密技,應該不是薪水小偷吧!?系列 第 20

Day20 - DevOps- 拉 Jira issue 到 IN PROGRESS 立馬 Create a branch in GitLab

  • 分享至 

  • xImage
  •  

今天心情非常的好,因為今天的練習有 Template 可以直接啟用,而且我還做完了驗證,是個完整的練習。

更重要的是,鐵人賽文章終於完成 2/3 啦!

只差最後 10 天而已,我就完成人生中第一次鐵人賽文章比賽。
從第 1 篇到現在第 20 篇我的心態從未變過,只求完賽不求完美。
好好的利用寫文章的驅動力,我能把想做的工具設定練習、寫程式體驗,好好的用心完成,把所見所聞確實紀錄下來就夠了。
我也留意到雖然我可能寫的不好,但也有朋友會來看文章,真的很感謝你們的不嫌棄。希望你們會看到這一段文字,我是特別寫給你們的。O(≧▽≦)O

今日分享:

  1. 啟用 DevOps Automation rules - When issue is moved to In progress → Create a branch in GitLab
  2. 驗證 DevOps Automation rules 成功的時刻

啟用 When issue is moved to In progress → Create a branch in GitLab

  1. 找到 Automation Templates
  • 首先從專案 Board 點擊左邊功能區的 [Project setting]
    https://ithelp.ithome.com.tw/upload/images/20231005/20162673qwQmtCvPCQ.png

  • 點擊左邊功能區的 [Automation]

  • 點擊中間上方的 [Rules] 、[Audit log] 、 [Templates] 的 [Templates]

  • 進到 Automation templates 選單後向下拉

  1. 在 DevOps 那一區中,找到 When issue is moved to In progress → Create a branch in GitLab ,並點擊進去。
    https://ithelp.ithome.com.tw/upload/images/20231005/20162673mSnbpv0ZmM.png

  2. Rules details 已經自動的填完 [Name] ,而其他的不用設定。
    [Name]:When issue is moved to In progress → Create a branch in GitLab
    直接按下 「Turn it on]
    https://ithelp.ithome.com.tw/upload/images/20231005/20162673lKtqiTfUUG.png

打完收工,今日結束,是不是很簡單呢~~~~我們明天見囉

等等,這樣就沒了嗎?

我開個玩笑啦!其實沒這麼偷懶,我們會來看每個設定怎麼做的,而且我也會依我的需求做修改。

  1. 詳看 [When] 的設定並修改
    我們也點擊 [When] 了解一下 Automation rules 的設定。
    此處是 Issue transitioned 設定區,需要設定的欄位有 [From status]、[To status],因為這個 Rule 的觸發事件是 Ticket 從某 status 移到 另一個 status,我們的情境是 When issue is moved to In progress,所以我的設定如下:
  • [From status]:TO DO
  • [To status]:IN PROGRESS
    https://ithelp.ithome.com.tw/upload/images/20231005/20162673XBWtDGjNMe.png
  1. 詳看 [IF] 的設定
    我們也點擊左邊區域,黃色的 [IF] 了解一下 Automation rules 的設定。
  • 此處是 Issue fields condition 設定區,需要設定的欄位有 [Field]、[Condition]、[Value],以下是我的設定。
  • [Field]:Issue Type
  • [Condition]:equals
  • [Value]:Task (因為我的 Ticket 都是用 Task 開的,所以我修改了這個欄位的值)
  • 按下右下角的 [Save]
    https://ithelp.ithome.com.tw/upload/images/20231006/20162673Jy1z4hhKHi.png
  1. 詳看 [Than] 的設定
  • 我們也點擊 [than] 了解一下 Automation rules 的設定。
    看到右邊 Create branch in Gitlab 的設定,除了 [Gitlab Project]、Create from branchBranch name 欄位外,也需要 Connect GitLab,於是,於是我們就點擊 [Log in use your GitLab connection]右邊的 [Log in]
    https://ithelp.ithome.com.tw/upload/images/20231006/20162673XtmBnbnspD.png
  1. 我們進到 GitLab User Setting 授權的畫面 ,看到 Authorize GitLab for JIra App to use your account? 的對話框,我們按下 [Authorize]。
    https://ithelp.ithome.com.tw/upload/images/20231006/201626737EfOdqFlsq.png

  2. 回到 Jira Create branch in Gitlab 的設定,可以看到下方顯示 [Connected to Gitlab as Gobby CHEN Yi-chun」 的字樣,表示 我的 Jira 和 我的 GitLab 已經完成連結。
    https://ithelp.ithome.com.tw/upload/images/20231006/201626730TXyywnHaL.png

  3. 我們來設定 [Gitlab Project]、Create from branchBranch name 欄位的設定值。

  • [Gitlab Project]:從下拉式選單選取練習用的 Project httpserver001
  • 這段 Smart value 的意思是 the Summary field value
    {{triggerIssue.key.toLowerCase()}} -->被觸發的 issue Key,且用將字符串中的字母轉換為小寫
    {{triggerIssue.summary.replaceAll("[^a-zA-Z\d]","-") -->被觸發的 Summary名稱,依字母轉換為倒寫以及 -
    .toLowerCase()}}-->字母轉換為小寫

想了解更多

  • 按下右下角的 [Save],最後再按下右上角的 [Turn it on],恭喜完成 ✅ ,灑花~
    https://ithelp.ithome.com.tw/upload/images/20231006/20162673tHlokrib85.png
  1. 下方有個 How do I reference created branches in my rule?,可以點擊下去了解更多關於設定的事項。
    https://ithelp.ithome.com.tw/upload/images/20231006/20162673nBqi71gi3h.png

  2. 回到 Rules list ,這個 Rule 已經設定完成。
    https://ithelp.ithome.com.tw/upload/images/20231006/201626739gAb2TiVi0.png

  3. 我們也點擊看 [Audit log] 這次的設定,也有成功。
    https://ithelp.ithome.com.tw/upload/images/20231006/20162673Srf8EdiAim.png


驗證 DevOps Automation rules - When issue is moved to In progress → Create a branch in GitLab 成功與否的時刻

呼~好緊張啊,萬一又沒有成功(其實我已經練習好幾次有問題),那我只要再試一次!

  1. 回到 Project 的 Scrum board 在 TO DO 的 status 有一張 II3DD-4 的 Ticket。
    https://ithelp.ithome.com.tw/upload/images/20231006/20162673bwAvW9yoQ5.png

同時我們也打開我的 GitLab [Branchs]中,只有看到以下的 branchs

  • II3DD-1-ithomeironman-1
  • II3DD-1-ithomeironman-2
  • II3DD-1-ithomeironman-3
  • II3DD-1--------ithomeironman--------1
  • II3DD-1--------ithomeironman--------2
  • II3DD-1--------ithomeironman--------3
  • main
    https://ithelp.ithome.com.tw/upload/images/20231006/20162673pOkzMKoQPP.png
  1. 回到 Project 的 Scrum board 把在 TO DO 的 II3DD-4 Ticket 拉到 IN PROGRESS 的 status 。
    https://ithelp.ithome.com.tw/upload/images/20231006/20162673c20QibTGwj.png

同時我們也打開我的 GitLab [Branchs]中,branchs 清單多了一個 II3DD-1--------ithomeironman--------4,符合我們對 Automation rule 的設定。
https://ithelp.ithome.com.tw/upload/images/20231006/20162673xI9uHjGNSV.png

成功啦!我好興奮我好興奮

好啦,今天練習完成,我也將結束 Sprint 2 ,我們明天再見囉 ~


上一篇
Day19 - 工人智慧動手把 Jira 與 GitLab 連結,完成最後一哩路
下一篇
Day21 - DevOps - 開 Branch,立馬把 Jira issue 移到 IN PROGRESS,真的好棒棒唷
系列文
每天利用 Jira 開單時,練習一個密技,應該不是薪水小偷吧!?30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言