iT邦幫忙

2022 iThome 鐵人賽

DAY 15
0
Software Development

語言只是工具,遊走在需求和技術間的腦力激盪之旅系列 第 15

Day 15 - Case 2 :基本功能無法滿足,但可以透過套件與Code達成(Jira Cloud ScriptRunner篇)

  • 分享至 

  • xImage
  •  

前兩天提到的各個項目主要都是內建的功能,但有時候使用者提出的需求無法滿足的時候,就需要透過第三方的套件來滿足,而今天會大致介紹相關的套件以及使用的程式語言。

Marketplace檢視

要如何檢視可以使用的套件同樣點擊右上角的選單選擇應用程式,然後就可以看到各式各樣的套件,由於套件的數量較多所以如果已經知道想要使用的類型,可以點擊Categories選取需要的種類名稱(ex : 跟專案管理有關就可以選擇Project Management)。
Imgur
Imgur

接著我們就來看看今天的主角囉,看到ScriptRunner for Jira選擇之後可以先看這個功能有提供的相關服務(官方文件參考連結),而可以應用的情境舉凡流程填寫過程中的驗證、指定身份或者是規則的權限定義、當前狀態核准後的自動化執行、
排程的腳本等等。
Imgur

安裝之後可以檢查左邊的欄位有無出現ScriptRunner,如果有的話接著先介紹功能寫好之後測試的地方,點選Script Console後會看到右邊有一個名稱為Script的區塊,在這裡可以將寫好或者是測試好的功能放在這裡面後看到執行的結果。
Imgur
Imgur

Groovy

在進一步介紹剛剛提到的功能前,先說明一下使用這個套件開發的程式語言,如果各位有摸索過Jenkins或者是寫過腳本語言應該不陌生,而之所以這個套件商使用這個語言,莫過於Jira的服務主要是使用JAVA做開發。

如果是第一次接觸這個語言可以參考這個網站來源,裡面有涵蓋一些基礎的相關語法範例,基本上本身就有在寫程式的話就是要去適應和熟悉Groovy的寫法(個人摸索過後的心得是剛開始學起來會有點痛苦,但是寫到後面就有種Python和Java的融合體越寫越上手)。

Scriptrunner基礎應用

簡單說明完這個套件應用的程式語言後,接著回到剛剛提到的Script Console,先輸入迴圈的範例程式碼按輸出就可以看到執行的結果,了解了它的運作機制後舉一個例子說明如何跟當前Jira專案整合應用。
Imgur

在example的選單選取Get Issue Fields,接著會看到此範例的程式碼其中包含變數的定義,以及JIRA API的連結(詳細的API可以參考此網站),然後issueKey就需要回到前幾天提到的後台檢視目前的Task。
Imgur
Imgur

以上圖建立測試的摘要Task為例,將ID-3的key輸入到定義的變數執行後,回傳的結果可以看到是JSON的形式,然後其中的Summary可以看到當前指定key的摘要資訊。
Imgur
Imgur


上一篇
Day 14 - Case 2 :針對需求來做客製化的開發吧(Jira Cloud Screen & Field篇)
下一篇
Day 16 - Case 2 :Task管理開發成果與知識管理整合(Jira & Confluence)
系列文
語言只是工具,遊走在需求和技術間的腦力激盪之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言