CI/CD is a software engineering approach where software is made available to end users as soon as it’s implemented and tested. There is no doubt that CI/CD is the key to implement successful DevOps. However, it’s not easy to establish a CI/CD pipeline and even much harder to optimize it. To continuously optimize CI/CD, we should find ways to measure its performance.
In this session, I’ll share how to define metrics for optimizing CI/CD through a case study consisted of Zuul, Jenkins, OpenStack, etc. The goal is to identify and measure the essential parameters that affect the whole process and finally help teams understand what happened during CI/CD, make team members focus on specific improvements. I’ll present a variety of metrics based on my own experience and show you how to create your own.
• How to determine the type of data you need to collect
• Metrics for individual and teams
• Metrics for the response of your features and products
• How to make better product based on your metrics
2. C E C A 0 A A0E 2 A A C
DDD 2 A E 7A 2 7A C OL T R SN
• AD0 C A 1 2 2 0 E 0 A7 AD0 A E
• I. 9 AD0 A7 0 E 0 D 7 0 D0E A
0 A F0A
3. 19 3 7 , 3AC
7 2 C 3 , 3AC 2 C 3 D I
EEE C F 9 C 9 A A D N TSO 01 1 2 . ' 1 RM L
4. 1 I A 7 77 ?7EC D
• 0A ? 7 7 D A D 4FD 7DD
• 0A C 7 C7DAFC 7 7A 7 A E A
• 0A 7E7C? 7 DF 7DD
• 0A C7 E C7DF E CA9C7DD
• 0A F 97 FDEA?7C 7DD
• 0A 7 97 E7 ? ?7?47CD
• 0A 97 E 7 47 AC A E7 ? ? E7D
• 0A ? CA 7 E 7 CA 7DD
•
AF 7E &A IC 9 E & AF C 9 ED C7D7C 7 L S 0. &0 2 & 0 TORN
Improvement
Prediction
Decision
5. 1 D 5 ?CD DED7C 7D 5
,
ˈ ɛD ɪ
? E?
7D 5 C ? , D D 7? 7C ?7 D ,
, , C CD7 ,
5 E ?7D A 9 DI E ?5 9 DC 7C7 F7 N TSO /0. 0 2 0 R L
6. ?6 E 9 ? 72 ?61? 91?? F
2 ? C 7 6?D 2 7 6? A LN . 0 O I
7. / I H E B ) BEFC DI
• /
• C , FF D HH /E B /EE
• C / D 1 D O I ED 02
• DHF D N HH IE I HH IE
HIEC H H D E B D D H HH H
D B H
• /
• (N B C
• C BE A F E A I C
• IE N F . C
•
• H F ) IH
• B H C
• (EHI 2 B H
• B H EFI ED DHI BB I
LLL BE D I (EFN IP (BE D BB IH H R ( .7 (10 ) 0 . YTWS
• / /
• D ELD
• 2 E I 0 I 2 ECEI E 02
• 2 E I E HI
• /
• HI (E
• B C
• ) I ) DH IN
• (E 1LD H F
• (E (ECFB M IN
• ( H I
• B AH
• D B ) 9I
• I E E M D E A H I E A
8. AH 8A IAF 89 9 A ?9EC 7D AC IAFC AH
• 0 7 A D9EE D IAFC CDE DE9 AC79D IAF EA 9 EA 8AH H 7 D 7C E 7 AC
89 9 A ?9EC 7D
• AEEA? F CA 7 D DF A E ? 97 FD9 E C9 9D A EF E A 8 7 A E9 9 8 EA
ID D C ID D
HHH 7 AF8 9E A IC E AF8 , 7 C ED C9D9C 98 OL TPR 2 1, - . , . , - SN
9. G A D EFDG7FGD9 AFD G7F A
• 1JEF9 E
• 09 A9
• F
• 9DD F
• GG
• 9A AE
• DD DE 19D 9D
• 9FD 7E 19D 9D
• C9 A9E
• 97
• F9
• EF
• 09 D9 9 E9
• 09 9 E9
• 9D 7
III 7 G A9F CJD F G A7 D FE D9E9D 9 LPM S 120 2 .- -2 TORN
Redmine Metrics
10. D 7 4 8 4A8 7
FFF 6 D7 8C A 9 C D7 . 6 A 9 CB A8B8AE87 I SRN 342. 4/5 10 . 04. / LO
D 7 4 8 4A8 7
B867B
11. .NFEJ? I I
• H J? AE9I H D 8BBN D 8 ? 9 B I HL H
• 0E9 8B8D 48J E
• D C9 H E AE9I H D ED 9 B I HL H D C9 H E AE9I H D ED 9 B I HL H
• J8D 8H L 8J ED E AE9I H D D C BJ 9 B I HL HI
BE D J EFNH ?JO BE /D BB H ?JI H I HL T Y 64/ 617 2 / 26/ 1 S R
#
#
#
0E9 8B8D 48J E
H8JE
12. FEI H?H
• I E8H HBEL :J IE HEC D ILE A E .2 ?HHJ
• E8 I 7I
• DJC8 E I 7FF DH :J ?D I E8
• 7H B?D
• FBE E8 # I?C H
• .C7 8J?B: E8 I?C H
LLL 9BEJ: D I EF ? IN BEJ: .D9 BB ? IH H : OS Y T 5 . 50 21 . 15. 0 R
13. .D A L C
• 3D E 9 7 9 F EI E ACE & 3 0
• 3F 11 F CE C I 7 E . D E CEA
• & C E C I 7 E CE C C
C 9 &CD E M # & C 9 E F E F EI 9 NRO SU 120 &2 &. 2 V TP
25%
14. B B C 9 6 C 7 9 B DEC8 FF
Push Tag
Build
Docker
Image
Build ISO
Image
Multi-
Nodes
deployment
Auto Tests Publish
8 C 9 B CD E L C 9 .B8 E F E F EI 9 N RT 342. 4/5 10 . 04. / SO
9 C8 E .A6 4 A 4E B9
F8CB9F
15. / FEI? H H
• E H I? HI F E 9 D E A C8 H ?8 9 CF8 I IE I? E 8 9 I C
• D C8 H 8I E E A C8 9 I C EFI C N8I ED
• D C9 E C8 9 IEI8 C8 D C9
LLL E D I EF ?IO E 0D ?IH H T Y 5640 617 32.0 260 1 S R
#
0C8 4 H 48I
16. .AD I D
• B7 6 D:7 E 6 9 AB 7CC 6 6 ED D:7 CD D 7 CE 9 CD7A
• .AD I7 D:7 6 7B 97 E 6 9 C B AD 6 67 7 7 7DB D DB DC
A7B B 7
## E6 7D A B 9:D ## E6 B 9:DC B7C7BF76 OL T R 01 1 2 . 1 SN
70%
17. D 2A
• CA 9 D D 7 A 2 DA 2 C 9 F 2 C
• A C2 C9 A 2C 9 CF 77 A C CA 0 2 E A2 CA C
A A
• A F 2 7 F CA
• 2 2 D C 2 C 7 2
FFF D C A 9C D A 9C A AE IM SRN . . 1 . LO