jenkins (war)stories
DESCRIPTION
Gave a presentation at the Software Engineering Guild of TartuTRANSCRIPT
![Page 1: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/1.jpg)
Jenkins (War)stories
Toomas RömerZeroTurnaroundTartu, Estonia
@toomasr
Thursday, October 10, 13
![Page 2: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/2.jpg)
Why this talk?
• Logical step from previous unit test topic
• I’m a Jenkins fanboy :)
• Maybe I can inspire you!?
2
Thursday, October 10, 13
![Page 3: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/3.jpg)
Why talk about Jenkins?
• First Jenkins installation in 2008– Have administered
– Have used as a developer
– Have developed plugins for it
– Still using daily but more like a manager
– Good friends with Cloudbees people
3
Thursday, October 10, 13
![Page 4: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/4.jpg)
What have I done with Jenkins?
Built-tested-released software
Implemented continuous delivery
Updated websites (docs, changelogs etc.)
Propagating code or binary artifacts
Workflow management
Thursday, October 10, 13
![Page 5: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/5.jpg)
Why so popular?
Authentication
Authorization
Logging
Notifications
Distributed
Thursday, October 10, 13
![Page 6: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/6.jpg)
Cron on Steroids
Thursday, October 10, 13
![Page 7: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/7.jpg)
Enterprise Cron
Thursday, October 10, 13
![Page 8: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/8.jpg)
Background - 2013
300 600 jobs
8 20 dedicated machines
Amazon ~7000 instance-hour per month
3 4 in house plugins developed, 2 abandoned
Custom dashboard (35 x 215 grid)
Thursday, October 10, 13
![Page 9: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/9.jpg)
Jenkins Overlords
• Jenkins Overlord– Actually his name is Juri
• Each project has a goto guy– Works with Juri when something
bad happens, also known as an Overlord :)
9
Thursday, October 10, 13
![Page 10: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/10.jpg)
Stories
Stories–Managing the cluster– Functional Tests–Servlet Tests– The API–Random thoughts
Thursday, October 10, 13
![Page 11: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/11.jpg)
Managing the cluster
11
Thursday, October 10, 13
![Page 12: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/12.jpg)
Managing the cluster
12
Thursday, October 10, 13
![Page 13: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/13.jpg)
Managing the cluster
• Lots of projects but 1 Jenkins cluster– Java– Application server X– Database server X– Framework X– PHP/Python/Groovy/SBT/Maven– Play Framework– Android– Eclipse– ....
13
Thursday, October 10, 13
![Page 14: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/14.jpg)
Managing the cluster
14
Thursday, October 10, 13
![Page 15: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/15.jpg)
Managing the cluster
15
Thursday, October 10, 13
![Page 16: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/16.jpg)
Functional Tests
16
Thursday, October 10, 13
![Page 17: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/17.jpg)
JRebel Functional JDK Tests
Thursday, October 10, 13
![Page 18: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/18.jpg)
JRebel Functional JDK Tests
Thursday, October 10, 13
![Page 19: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/19.jpg)
JRebel Functional JDK Tests
Per JDK– Per functional test
• Compile couple of classes• Run some methods and assert• Recompile couple of classes• Run some methods and assert• …
Thursday, October 10, 13
![Page 20: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/20.jpg)
JRebel Functional JDK Tests
Which Jenkins feature is the best fit here?
Thursday, October 10, 13
![Page 21: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/21.jpg)
JRebel Functional JDK Tests
Thursday, October 10, 13
![Page 22: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/22.jpg)
JRebel Functional JDK Tests
Groovy Script
Thursday, October 10, 13
![Page 23: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/23.jpg)
JRebel Functional JDK Tests
Thursday, October 10, 13
![Page 24: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/24.jpg)
JRebel Functional JDK Tests
How to get test results? Jenkins feature…
Thursday, October 10, 13
![Page 25: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/25.jpg)
JRebel Functional JDK Tests
Output JUnit XML!
Thursday, October 10, 13
![Page 26: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/26.jpg)
JRebel Functional JDK Tests
Thursday, October 10, 13
![Page 27: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/27.jpg)
Jenkins API
27
Thursday, October 10, 13
![Page 28: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/28.jpg)
API
• Java/JavaScript/Python and others
• Super easy to get started (show demo)
• Retrieve info about Jenkins
• Trigger builds
• Create/copy jobs
28
Thursday, October 10, 13
![Page 29: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/29.jpg)
29
Thursday, October 10, 13
![Page 30: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/30.jpg)
30
Thursday, October 10, 13
![Page 31: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/31.jpg)
Custom Dashboard
Thursday, October 10, 13
![Page 32: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/32.jpg)
Random thoughts
32
Thursday, October 10, 13
![Page 33: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/33.jpg)
There is an app plugin for that
Thursday, October 10, 13
![Page 34: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/34.jpg)
Green Balls
34
Thursday, October 10, 13
![Page 35: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/35.jpg)
Green Balls
34
Thursday, October 10, 13
![Page 36: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/36.jpg)
Prep releases
Thursday, October 10, 13
![Page 37: Jenkins (war)stories](https://reader031.vdocuments.mx/reader031/viewer/2022020122/554f3e49b4c90572088b5153/html5/thumbnails/37.jpg)
Q & A
Thursday, October 10, 13