Jenkins Best Practices
-
Upload
gergely-brautigam -
Category
Software
-
view
80 -
download
0
Transcript of Jenkins Best Practices
![Page 2: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/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](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/3.jpg)
Basics — UIhttps://wiki.jenkins-ci.org/display/JENKINS/Simple+Theme+Plugin
![Page 4: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/4.jpg)
Before SimpleTheme Plugin
![Page 5: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/5.jpg)
After SimpleTheme Plugin
![Page 6: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/6.jpg)
Basics - Config Histroy
https://wiki.jenkins-ci.org/display/JENKINS/JobConfigHistory+Plugin
![Page 7: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/7.jpg)
Diff YourConfiguration
![Page 8: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/8.jpg)
Basics - Rebuildhttps://wiki.jenkins-ci.org/display/JENKINS/Rebuild+Plugin
![Page 9: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/9.jpg)
Rebuild yourPrevious Job
![Page 10: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/10.jpg)
Basics - Mask Password
https://wiki.jenkins-ci.org/display/JENKINS/Mask+Passwords+Plugin
![Page 11: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/11.jpg)
No More Leaksin the Logs
![Page 12: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/12.jpg)
Advanced - Foldershttps://wiki.jenkins-ci.org/display/JENKINS/CloudBees+Folders+Plugin
![Page 13: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/13.jpg)
Folders forBranching
![Page 14: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/14.jpg)
Usages for Folders
Orignizing
Clean Workspaceand Environment
‘All View’ is not cluttered
Branches — Combined with…
![Page 15: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/15.jpg)
Advanced - DSLhttps://wiki.jenkins-ci.org/display/JENKINS/Job+DSL+Plugin
![Page 16: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/16.jpg)
Never UseConfigurationScreen Again
![Page 17: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/17.jpg)
Single SeedJob To RuleThem All
![Page 18: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/18.jpg)
BranchingWithDSL + Folders
Groovy Config
Jobs Groovy File lives next to the source code. Or could be in its own repository.
![Page 19: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/19.jpg)
Advanced - Artifactshttps://wiki.jenkins-ci.org/display/JENKINS/Nexus+Artifact+Uploader
https://wiki.jenkins-ci.org/display/JENKINS/ArtifactDeployer+Plugin
![Page 20: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/20.jpg)
Sharing BetweenJenkins Instances
Multiple Jenkins Instances
For jobs that interact with each other based on artifacts they generate, use a common artifact repository for storing, and sharing said artifacts with fingerprints.
Nexus
Artifactory
![Page 21: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/21.jpg)
Nexus
![Page 22: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/22.jpg)
Artifactory
![Page 23: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/23.jpg)
Advanced - MultiJobhttps://wiki.jenkins-ci.org/display/JENKINS/Multijob+Plugin
![Page 24: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/24.jpg)
Parallel TestRuns With MultiJob
![Page 25: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/25.jpg)
Expert - Pretested Integration
https://wiki.jenkins-ci.org/display/JENKINS/Pretested+Integration+Plugin
![Page 26: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/26.jpg)
Branch Setup
![Page 27: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/27.jpg)
Pretest Setup
![Page 28: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/28.jpg)
Push Local BranchTo ‘Ready’ Branch
git push origin BFG-321:ready/BFG-321
![Page 29: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/29.jpg)
Expert - Pipelines + Jenkins 2.0
![Page 30: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/30.jpg)
• Everything you saw here — integrated
• Pipeline — Previously known as workflow
![Page 31: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/31.jpg)
Pipeline File
![Page 32: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/32.jpg)
Pipeline View
![Page 33: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/33.jpg)
Pipeline MultiBranch Fetch Configuration
![Page 34: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/34.jpg)
Pipelines - MultiBranch - Run builds
Only builds branches which have ‘Jenkinsfile’ at root
![Page 35: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/35.jpg)
Bonus Round
![Page 36: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/36.jpg)
• Packer / Vagrant / Docker provisioning of build slaves and test environments
• Configuration management for credentials
• Load Balancing Jenkins slaves
![Page 37: Jenkins Best Practices](https://reader031.fdocuments.in/reader031/viewer/2022030306/586fdc681a28ab18428b6493/html5/thumbnails/37.jpg)
THANK YOUQUESTIONS?