Azure DevOps 設計策略與實戰分析:開發工程師從入門到進階完全指南(iThome鐵人賽系列書)
* m- k- q- R ~/ k; E! c% ~ 作者:范明城
. y* V* t$ x) @. i" t4 D# p" Z" L 出版社:博碩; B4 K' `% M9 q" H# d
出版日期:2023/11/22 @ B+ D$ t% }1 p* \3 L, ?
Azure DevOps 由淺入深運用技巧的工具書!
) U4 |& z5 J; ^! m7 C: W9 _ 本書內容改編自第14屆 iThome 鐵人賽 DevOps 組佳作系列文章《Azure DevOps 進階應用》,與第13屆 iThome 鐵人賽 DevOps 組系列文章《把玩 Azure DevOps》。8 |2 l# w# d9 C
本書特色
* Q& h7 X# F+ m' [. C3 H 1. 針對 DevOps *重要的持續整合(CI)與持續傳遞(CD)進行深入的介紹
/ s, ]4 Y4 {1 A8 q* [ Azure DevOps 是一套完整的應用程式生命週期管理系統,包含了專案管理、版本控管、CI/CD、測試管理、程式庫管理等,本書針對 DevOps 其中一個重要的範圍:「CI/CD 自動化設計」進行較深入的介紹。' \ {7 i7 f) x3 y6 k8 `
2. 市場上少數針對 Azure DevOps 功能詳細介紹的書籍* R5 Y( G& a$ \2 X$ F
不論是書局中的中文書,或是網路上的中文網站,幾乎是*深入針對 Azure DevOps 中的 Pipeline 如何使用與設計進行介紹的文章。
( K' ?+ E7 B: I0 c& J 3. 從適用於部門或團隊的少數專案設計方式到全公司專案使用的範本化設計規劃介紹' O- C+ u4 h N2 ^6 \5 y
從少量系統的簡單應用設計到適用微服務設計的大量系統範本化 Pipeline 設計,都可以從本書介紹的內容得到一些設計的想法。4 u, B9 p+ P* y0 y
4. 從 DevOps 工程師的角度出發,*容易入門上手的學席路徑( i) Y; i0 J5 I/ o4 L* X( n5 O% _
有別於其它的 DevOps 方案需要各搭建不同的系統才能夠完善 DevOps 各個環節的功能,Azure DevOps 是一個整合性的解決方案,也是 DevOps 工程師*容易入門上手的方案。尤其是使用雲端的 Azure DevOps 更不用煩惱架設系統的難題,堪稱進入 DevOps 領域*容易的一條路徑。* }# u( K; }* B- e( j
CHAPTER 01 Azure DevOps 介紹
- k6 m2 z4 P; I, _ CHAPTER 02 Azure DevOps 的組織與專案
& _) q5 T% G$ C CHAPTER 03 版本控制系統 Repos5 D* S6 d! _; q/ ]
Git Repository, O/ W; ~" Z+ A# _- z
TFVC Repository& h+ V2 u& e6 K$ V0 G$ E+ ~+ Z
CHAPTER 04 設定*一個 CI Pipeline
6 v5 V' v0 _1 r/ e# y. Z 事前準備
* T' a& B$ ^; p" |; P3 f5 e 建立*一個 Pipeline
) z9 t, R& H) q! A Pipeline執行與除錯
3 ~ y8 d c7 c0 w CHAPTER 05 編譯與部署 .Net 專案
& D( P1 _6 @9 r6 \ h8 v) G; F3 n 編譯 .Net 專案9 L6 @, W- N, l
設定變數,建立共用的 Build Pipeline
+ U; r' R. W; o7 O CHAPTER 06 Azure DevOps Artifacts 簡介
5 x, n& s+ o. S% v2 Q$ r' N5 [! { 讓組織外的使用者也能存取私有套件庫
' D+ b4 z4 n( X8 i CHAPTER 07 Artifacts 應用:上傳與管理 NuGet Packages
7 I2 p* N2 X) F" Q* a% u 編譯時產生 nupkg 檔案
; G- [1 N' r1 W Build Nuget 套件上傳到 Artifacts3 U9 Y# C' V2 p7 E+ ~ I3 d
CHAPTER 08 使用 Extensions for Azure DevOps
- b5 d& I; n. z CHAPTER 09 進階 Pipeline 設定與觸發方式' w, \! D9 B5 u: {/ ]4 J+ |
利用安裝的擴充功能修改 C# 專案版本 Q3 a; ~: i" u
替Pipeline 設定時間排程執行# Q" T6 b }7 Z% ^2 C
將Pipeline 設定為 Git Repo 有異動時自動執行3 A3 V- w9 W3 K9 e* l, G* R$ d
CHAPTER 10 進一步了解 YAML 結構描述與多個 Agent Job
$ x# V4 u; J4 T8 x+ ?6 S. K$ o/ n YAML 格式以外的 Pipeline 傳統編輯器: u v7 e! @3 w4 A
深入了解 YAML Pipeline 結構描述:多個 Agent Job Q, A Y; s1 }$ x+ L9 F7 k1 ]& Z
CHAPTER 11 優化 Pipeline 的識別與管理& Y" `5 A2 z. e# X% s( c
CHAPTER 12 面對多個系統專案的規劃' a% B# W5 k2 c4 i7 t( J+ }5 F5 d
分支策略
0 g3 j( s' `% l, o; K! I Build Pipeline (CI)5 b% M0 g. l" L2 @8 l# x
Release Pipeline (CD)" g! F% C1 j8 O/ v
結語) x1 ~5 V1 U5 f' _% v
CHAPTER 13 使用 Google Artifact Registry 存放Docker Image
* N1 `% h5 F) G 建立 Artifact Registry 存放區
9 _- J" b: C3 Y" s* p, X# \* s. Q 建立服務帳戶
/ u' b! I; a; `' ^9 f 產生授權金鑰
E) i( s2 O7 O. K Docker Login
: a8 g0 F4 P, f# g w) m8 P CHAPTER 14 介紹 Google Cloud Run+ R6 u: ^, H2 j ]5 b7 ?- o
CHAPTER 15 進階版 CI Pipeline 的設計與優化
! d, z0 U P8 O& x" H 再一次深入了解 YAML Pipeline 的結構
! q6 y. o3 }. l5 b0 c 建立 Pull Request(PR) Pipeline5 f% c% t0 \5 W; Z0 f
建立 CI Pipeline9 m0 }% D9 T. I
CHAPTER 16 CD Release Pipeline 的設計與優化
3 ^/ q7 r% @/ |9 D 初探 CD Release Pipeline/ Q9 a C1 z2 Y" {2 ?7 `
應用多個 Artifacts 來源的 CD Pipeline9 H' n: t9 w( W$ G/ Q/ N
CD Pipeline 進階設計
4 i. r& _; ~0 f 設定審核者與 Git Repo 權限問題" h& G# l' S) V! d
匯出 Json 檔案當作範本
$ a3 R$ g( x# O- S5 V n9 y CHAPTER 17 了解 YAML 運算式 Expressions、參數 Parameters 與變數 Variables
9 n0 U( K" P. {/ T4 g 運算式 Expressions 與函數
! B* v! n" ]# G8 h% L 參數 Parameters 與變數 Variables
S" h$ H/ }$ Z7 l2 u! s- `0 U9 w CHAPTER 18 範本 Template 設計與重複使用
( S3 S) \2 v6 b: v 初探 YAML 的範本設計
9 L( C! A& A- n% F 拆解 task 為 step 範本* \! Q. b# @- K
拆解 job 為 job 範本
1 `- f" b$ c# s 設計 Stage 範本
. g! h+ F$ J1 l% e CHAPTER 19 優化 YAML 結構與多個專案設計1 g+ a0 [7 o4 D
多個專案的命名與變數範本設計; Y/ |! m( P3 `# F
加入更多的設計彈性/ M7 W" V+ G9 v$ a
如何使用?
: m2 W1 F* I! j CHAPTER 20 使用 Task 與 CLI 的選擇2 ~/ @1 h% X4 y5 \* N# C
CHAPTER 21 設定 Pipeline 的權限與通知
1 @. L# z! |5 u; C 建立 Group 並設定權限; j4 e9 B. {9 T' e( x0 _8 H; c
Microsoft Teams 整合 Pipeline 通知
g# b; f. k, `8 {4 M, ? CHAPTER 22 建立自管的 Azure DevOps Agent3 s# g# V7 w1 n$ l8 X9 \
在 Windows VM 中建立自管的 Azure DevOps Agent
5 N J1 k! _* {0 I8 q 在 Windows Container 中建立自管的 Azure DevOps Agent$ I" z p$ e. t$ s0 ]+ ], o
在 Linux Container 中建立自管的 Azure DevOps Agent
( c+ j* I3 q# Q: U5 D! z8 T3 h3 K2 s, n) Q* M$ c7 v! Q
9 S1 ~! j/ e( i W/ s
剩余 2% 内容需要支付 3.00×2共享币 后可完整阅读并提供下载链接
共享资料赚共享币,鼓励用户共享优质资料
|