III DevOps
, 客戶服務
, 操作手冊
請使用公司網路或會內VPN,並以AD帳號及密碼登入DevOps平台。
請依序填入專案相關資訊,並選擇適合之開發環境範本,目前平台提供27種範本 (持續新增中),但若純源碼掃描,則可直接選擇「Default」,該範本不進行環境建置,僅進行程式碼安全掃描。
\
\
請先將範本的源碼下載下來
[注意] 1.1. ***源碼下載後,會看到以下的目錄,但請注意,不要覆蓋 「app」 以外之目錄,以避免Pipeline 運行異常
[注意] 1.1.1 若您拉下的源碼目錄內未含有app 資料夾, 則請直接創建一新的源碼目錄, 並將您的源碼放置該新創之目錄裡即可.
[注意] 1.2 *** 也請勿將既有的 git repo 直接用 git push –force 至新建立專案的 gitlab repo, 這會導致建立專案時選擇範本所產生的定義檔消失。 也就是指該專案將無法在 git push 後觸發自動掃描等 Pipeline 功能。所以請先 git clone 後複製原始碼進 repo 內 app 目錄後, 再透過 git commit / push 方式來處理
[注意] 1.3 *** clone 專案,通過第三方gitGit客户端修改,請以https 的方式 clone 專案
注意事項: 若僅掃源碼,請記得只要將app 內的檔案置換成您的源碼即可
Image Not Showing Possible ReasonsLearn More →
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
檢視SonarQube報告
3.1 登入後,即可看到SonarQube報告
檢視CheckMarx 報告
語言或框架 & 資料庫 | 無資料庫 | PostgreSQL | MariaDB | SQLite | MongoDB | MS SQL |
---|---|---|---|---|---|---|
一 | default-dev(僅執行源碼掃描) | postgres-dev | mariadb-dev | 一 | mongodb-dev | mssql-dev |
ASP.NET Core | asp-dotnet-core-example | 一 | 一 | 一 | 一 | 一 |
Java Spring Boot | spring-boot-gradle-hello | spring-boot-postgres-example | spring-boot-mariadb-restapi | 一 | 一 | 一 |
jQuery | bootstrap-jquery-simple-web | 一 | 一 | 一 | 一 | 一 |
Node.js | nodejs-express-hello | 一 | 一 | 一 | nodejs-mongodb-todo | 一 |
PHP CodeIgniter | php-codelgniter-simple | 一 | 一 | 一 | 一 | 一 |
PHP Laravel | laravel-app-template | laravel-postgres-login | laravel-mariadb-login | laravel-sqlite-login | 一 | 一 |
Python Django | django-testsite | django-postgresql-todo | django-mariadb-todo | django-sqlite-todo-test1 | 一 | 一 |
Python Flask | flask-webpage | flask-postgres-todo | flask-mariadb-todo | flask-sqlite-todo | 一 | 一 |
Vue.js | vuejs-app-template2 | 一 | 一 |
使用範本建立之專案,可至專案列表取得該專案之GitLab 連結。當源碼下載後,再將您的源碼依下面圖示指定位置commit 進去。
2.1 記得調整下載之源碼包內的Dockerfile, 因為docker build 失敗的project 在DevOps也跑不起來哦。
請至選單 個別專案 > 專案設定 內展開「測試工具管理」,預設可直接設定master 分支的 pipeline 測試規劃
「進階分支設定」進行各分支的設定管理,例如master 跑完整的,但develop 分支則關掉全部只留源碼掃描的SonarQube或CheckMarx.
組織管理者登入 III DevOps 系統即呈現所有專案彙整狀況,可點選儀表板內關注的項目呈現明細清單或圖表資訊。
專案經理登入 III DevOps 系統即呈現所負責的專案清單與進度狀況,也可以點選該專案之 Gitlab 知道平台源碼 Repo 位址連結,進行源碼編修。每一專案皆伴隨著三大外掛資源(Gitlab、Redmine、Harbor) 服務連結,提供用戶進階操作的需求與彈性。
進來路徑有二種:
專案總覽區塊分為
(1) 議題分佈狀態:
列出該專案之議題狀態與其佔量比重, 其圖示標籤都可動態點按切換。
(2) 議題維度統計:
提供 「受分配者」(預設)、「優先權」及「議題種類」等不同維度之分配比重,與上述之「問題追蹤狀態」一樣,其圖示標籤都可動態開啟或關閉關注。
(3) 專案成員
羅列出該專案之所有成員清單,若需更改,則請至 專案管理> 專案設定> 專案成員 進行成員管理
(4) 測試結果
列出各測試工具之最後一次測試結果, 亦可使用右上角之「更新」按鈕進行立即更新報告結果。
工作規劃提供預設為需求規格起始之WBS工作項目列表,故若該專案同仁未將契約之最上層需求設定會需求規格(議題類別),則無法正常顯示工作項目列表
(1). 列表上的小箭頭是可以展開到下一層,預設為全收,僅出現第一層
(2). Excel 下載– 目前僅支援到第一層需求規格,未來視需求調整
(3). 顯示欄位可動態調整
(4). 進階「篩選條件」
篩選條件,提供更進階之限制範圍,使用者可依需求自定義相關之選擇條件,每個條件皆為單選,且呈現最後各自為交集(and)之篩選結果。其選擇示意如下:
(5). WBS 報表匯出
WBS工作規劃清單支援第一層工作項目之Excel匯出
(6). 甘特圖
甘特圖提供另一種WBS的圖形呈現,你可透過甘特瞭解各追蹤項目之期程
(7). 重新刷新頁面、重新取資料
最上方之迴轉圖示,提供該頁面重取資料服務。若需要即時更新,即可點按重拉所有之追蹤議題
談論需求追溯前,須先讓您瞭解平台支援之議題類別與可使用方式,如此您在使用需求追溯表時,較容易理解其流向之作法與設定。
III DevOps議題類別支援達9 種左右,使用者可依需求選擇適合自己專案之項目,其類別如下:
為符合大部分標案之需求,其預設之追蹤條件為需求規格」->「功能設計」->(功能開發)->「測試計畫」再自動連結至測試檔案(Sideex/Postman)與測試結果,若欲修改需求追溯之檢核方式可參考(4)追溯檢核進行檢核條件新增或修改
。
追溯檢核提供簡易的方式,讓使用者輕易瞭解議題斷鏈,進而執行相關措施。
預設為軟體開發週期之 需求 -》設計 -》開發 -》測試(標準檢核模組),當然III DevOps更提供自定義之檢核條件(同時也會繪圖之基礎)設定,讓使用者可依不同專案屬性進行議題追溯與追蹤
操作方式如下:
–
專案設定三大功能以下逐一說明:
1.專案版本管理:可在此新增專案版本,可編輯專案版本開始日期/到期日期,亦能修改狀態等,在此可看到所有專案版本狀態。
2.測試工具管理:可針對分支勾選需要自動化測試的工具,在跑自動化測試時將會根據分支設定的測試工具進行檢測。
3.專案成員管理:新增專案成員、移除專案成員,並可以使用後面的操作按鈕「議題」來查看該成員是否還有被指派的議題單,如有議題單,是否關閉或轉移給其他同仁,確認無任何議題單後,即可移除該成員。
查看「專案版本管理」設定細節
顯示專案版本名稱、建立時間、到期日、狀態,並可在操作區進行編輯/移除
新增版本
輸入版本名稱/到期日/狀態/描述
查看「測試工具管理」設定細節
查看「專案成員管理」設定細節
新增專案成員
點開「新增專員」按鈕,可用姓名、部門、職稱及帳號等資訊搜尋該成員,一次可勾選多筆再一次新增加入。
操作/議題
若有成員需離退,可在離退前檢查是否還有議題單。
點擊「議題」按鈕,進入議題清單。
操作/移除
點擊「移除」按鈕,將移除專案成員。
若該成員還有議題尚未關閉,則會彈窗提示,點擊「進行議題處理」,即可轉跳至議題清單進行操作。
/
專案經理在專案會議中可透過這專案議題活動功能來引導議題的討論,當了解議題實際的狀態,就可透過拖拉方式進行視覺化的快速變更狀態,讓團隊成員在會議討論過程中就能對議題狀態達成一致的認知。
/
(1) 提供多樣化的欄位篩選,讓看板操作更貼近你想呈現的畫面
(2) 也提供"議題狀態"(預設)、”議題類別”、”專案成員”、”專案版本” 等主要維度切換。但各維度仍可再進行進階篩選(可多選)例如:
(3) 快捷項目區: 不用另外跳出視窗,直接帶出議題內可以設定的項目提供修改
(4) 右鍵快取選單: 可右鍵直接更換議題狀態、查看議題關聯圖
(5) 議題關聯圖: 系統自動將需求追溯心智表繪製完成,可清楚追溯每一個議題
專案議題清單可讓專案經理快速查看專案的重點議題,也可以快速建立主議題與子議題,讓專案的工作項目清楚列管,此功能與 Redmine 雙向同步,讓習慣 Redmine 介面的團隊成員可繼續使用 Redmine 作業。
本頁面提供快速開立議題與進階篩選等功能,以下將逐一說明:
(1) 議題快速開立
點擊 1 新增議題,即會出現 2 及 3 的輸入視窗,您僅需指定議題類別及議題,即可馬上建立一張新議題。待後續需求,還可再進該議題單進行編修。
Learn More →
左側選單 > 工作執行 > 備忘記事
核心概念:可協助團隊收集及擷取知識、集結來自所有人都能編輯的內容,以及分享計劃與創意想法。 例如:可建立團隊需要的技術筆記、小組成員資訊、教育訓練手冊、需求分析與操作手冊等。
進入備忘記事頁面
新增記事,點擊「新增記事」按鈕
出現編輯頁面
1.WYSIWYG 編輯器模式,所見及所得
2.Markdown模式
建立完成一則團隊筆記,回到列表查看
操作區按鈕
操作/內容 (Read only)
本頁面僅供閱讀,不可編輯
操作/編輯
所有成員皆能編輯同一則筆記
操作/刪除
點選「刪除」按鈕,會出現提示框,請再次確認是否要刪除
專案管理中時常需要的文件等檔案,都可運用此功能上傳後做統整。團隊的所有成員都可自由運用此功能將相關文件、需求文件、研究文件等上傳。
本節介紹檔案列表的操作入口及功能。
檔案列表入口
左側選單 > 個別專案 > 檔案列表
建立檔案
溫馨提醒:一次只能選擇一個檔案
上傳完成
一起維護檔案列表,查看最新團隊文件吧!
版本歷程是針對專案內的所有工作項目進行圖形化顯示,可一目瞭然人力配置、議題數量、進度呈現,在規劃新需求或功能時會根據不同專案版本新增議題及規劃管理。
版本歷程入口
左側選單 > 工作執行 > 版本歷程
頁面說明
本頁面將會列出所有專案版本,顯示進度條、議題數量,並可展開單一專案版本進行工作項目清單查看、議題狀態查看。
可點選單一版本,展開圖形化總覽
釋出版本提供打包專案原始碼紀錄版本,可匹配正式發布時間點打包專案版本,紀錄發布時間與版本,打包前需「檢查議題」來檢視版本內是否還有議題尚未關閉,若未關閉的議題可以批量關閉或批量搬移,確認議題都關閉的狀態下才能開始進行打包作業。打包完成後,您選取的專案版本會關閉,如需繼續使用專案版本,可至「專案設定」>「專案版本」> 「開啟」您需要的專案版本。
常見操作說明:
釋出版本入口
左側選單 > 工作執行 > 釋出版本
開始打包專案,可以跨版本打包喔!
點選按鈕「包版作業」
出現下拉選單可選擇專案版本,在點選按鈕「檢查議題」
檢查議題後,若有未關閉的議題將會提醒您,並可在頁面操作批量關閉或搬移
議題關閉或搬移完畢後,就可以進行包版囉!
確認分支、映像檔、輸入版本說明,即可點選「開始包版」按鈕進行包版
包版完成! 查看包版紀錄
本章節提供所有程式提交、Pipeline執行狀況與資源監控等訊息。
開發分支列出本專案之所有分支,提供每一分支目前之更新狀態與最後一次提交之程式目的與更新時間
III DevOps Pipeline 之運作監控頁面,提供使用者一直覺與互動之操作介面
(1) 列表名稱狀態說明
狀態/測試項目
狀態有 Queuing(佇列等待中)、Waiting(等待中)、Building(建置中)、Failed(執行失敗)與Finished(執行完成)等狀態,以下針對需要注意的狀態分別說明:
操作
報告
本報告彙整此Pipeline執行時所產生之測試報告,並提供Excel、PDF等報表格式下載
實證環境,提供有WebServer環境之專案,一直接連入的可能,如網頁,其將直接另開一網頁供檢視; 而資料庫,則會顯示其連線之IP/Domain name , 與Port供複製使用
(1) POD 命令列視窗
提供使用者一網頁式的K8S資源操作與LOG檢視
(2) 網頁
(3) 資料庫
此頁面列出所有本專案使用之資源監控,同時亦提供POD(pipeline 運行之工作項目)之資源狀態。
點入POD之詳細資料後,可顯示最後一次Pipeline運行之工作項狀態與LOG
測試管理模組提供您直接在UI頁面上傳腳本後可以新建"測試計畫"議題單唷!
直接在UI頁面操作新增/刪除/編輯,還有關聯議題單與新建測試計畫,這樣做能讓您達到需求追溯的完整性,保存每一次的測試紀錄與議題關聯,在使用需求追溯表產生圖形化顯示時,直接呈現從需求規劃到測試結果的每個歷程點。
點選進入「測試檔案」頁面
可以看見有範本預設寫入Gitlab files的兩個腳本json檔,在此你可以按「上傳測試集」
上傳腳本
操作區介紹
操作/編輯
讓您可以直接關聯已開立的議題單!
操作/新增計畫
還沒有"測試計畫"議題單沒關係,直接新增一個,請點選「新增計畫」。
輸入議題內容後,按「儲存」,會立即顯示您的議題單內容。
操作/刪除
彈框提示您是否確認要刪除。
可透過勾選區,選取您想匯出的測試計畫,可下載CSV檔供您統整數據或追蹤使用。
/
[回答]: 因密碼為DevOps 代為更改密碼,故GitLab UI 會因安全機制跳出重設密碼視窗。但本機端的 commit 不受該機制影響。
[很重要] 在重設密碼視窗,如上圖所示,請輸入AD新密碼三次即可(GitLab默許設定一致)。
確認您專案的 gradle 版本,並將它改至專案的 Dockerfile
若欲使用SonarQube,則請將下列文字新增至 build.gradle 的檔案裡。
plugins {
id 'org.springframework.boot' version '2.3.3.RELEASE'
id 'io.spring.dependency-management' version '1.0.8.RELEASE'
id 'java'
id "org.sonarqube" version "3.1.1"
}
2.1 填入位置可參考下列圖示所示
Learn More →