jenkins best practices meetup slides
TRANSCRIPT
![Page 1: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/1.jpg)
Jenkins Best PracticesBy Gergely Brautigam
![Page 2: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/2.jpg)
Links
• Github: https://github.com/Skarlso/jenkinsbestpractices
• Docker Hub: https://hub.docker.com/r/skarlso/jenkinsbestpractices/
![Page 3: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/3.jpg)
Basics — UIhttps://wiki.jenkins-ci.org/display/JENKINS/Simple+Theme+Plugin
![Page 4: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/4.jpg)
Before Simple Theme Plugin
http://www.metecs.com/assets/images/capabilities/jenkins-screenshot.png
![Page 5: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/5.jpg)
After Simple Theme Plugin + Material Theme
http://jenkins-contrib-themes.github.io/jenkins-material-theme/images/screenshot-jenkins-theme-material-main-large.png
![Page 6: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/6.jpg)
Basics - Config Histroyhttps://wiki.jenkins-ci.org/display/JENKINS/JobConfigHistory+Plugin
![Page 7: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/7.jpg)
Diff for your config
![Page 8: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/8.jpg)
Basics - Rebuildhttps://wiki.jenkins-ci.org/display/JENKINS/Rebuild+Plugin
![Page 9: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/9.jpg)
Rebuild Your Previous Job
![Page 10: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/10.jpg)
Basics - Mask Passwordhttps://wiki.jenkins-ci.org/display/JENKINS/Mask+Passwords+Plugin
![Page 11: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/11.jpg)
No more leak in the Logs
![Page 12: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/12.jpg)
Advanced - Foldershttps://wiki.jenkins-ci.org/display/JENKINS/CloudBees+Folders+Plugin
![Page 13: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/13.jpg)
Folders For Branching
![Page 14: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/14.jpg)
Usages For Folders
• Orignizing
• Clean workspace and environment
• All views is not cluttered — while with views it still is
• Branches — combined with the next one…
![Page 15: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/15.jpg)
Advanced — DSLhttps://wiki.jenkins-ci.org/display/JENKINS/Job+DSL+Plugin
![Page 16: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/16.jpg)
Never use the configuration screen again
![Page 17: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/17.jpg)
Single Seed Job To Rule Them All
![Page 18: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/18.jpg)
Branching with DSL + Folders• Job’s groovy file lives next to the source code
![Page 19: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/19.jpg)
Advanced - MultiJobhttps://wiki.jenkins-ci.org/display/JENKINS/Multijob+Plugin
![Page 20: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/20.jpg)
Parallel Test Runs With Multijob
![Page 21: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/21.jpg)
Expert - Pretested Integration
https://wiki.jenkins-ci.org/display/JENKINS/Pretested+Integration+Plugin
![Page 22: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/22.jpg)
Branch Setup
![Page 23: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/23.jpg)
Pretest Setup
![Page 24: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/24.jpg)
Push local branch to ready branch
• git push origin BFG-321:ready/BFG-321
![Page 25: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/25.jpg)
Expert - Pipelines + Jenkins 2.0
• Everything you saw here — integrated
• Pipeline — Previously known as workflow
![Page 26: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/26.jpg)
Pipeline - Jenkinsfile
![Page 27: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/27.jpg)
Pipeline
![Page 28: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/28.jpg)
Pipelines - MultiBranch Fetch configuration
![Page 29: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/29.jpg)
Pipelines - MultiBranch - Run builds
Only builds branches which have ‘Jenkinsfile’ at root
![Page 30: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/30.jpg)
Bonus Round
• Packer / Vagrant / Docker provisioning of build slaves
• Configuration management for credentials
• Load Balancing Jenkins slaves
![Page 31: Jenkins Best Practices Meetup Slides](https://reader033.vdocument.in/reader033/viewer/2022052418/586fdc8b1a28ab18428b6505/html5/thumbnails/31.jpg)
Thank you for listening!
• Github: https://github.com/Skarlso/jenkinsbestpractices
• Docker Hub: https://hub.docker.com/r/skarlso/jenkinsbestpractices/