4. 4
Ground Rules
● Follow the speaker
● Don’t get deviated
● If you are stuck, call any of the volunteers
● We will share all the material with you, don’t bother about that
● Ask questions whenever you have - Don’t wait
● We will focus more on Action than on Philosophy
6. 6
Continuous Delivery
Continuous Integration
● Integrate code into a shared repository frequently
● Each check-in is verified by an automated build
● Can detect errors Early and Easily
Continuous Deployment
● Ability to get changes into production or into the hands of users.
● Code always in deployable state
7. 7
Integration
● At a minimum:
○ Gather latest source together
○ Compile
○ Execute tests
○ Verify success
● Can include other tasks such as:
○ Rebuild the database
○ Build release distribution
○ Run code analysis and coverage tools
○ Generate documentation
14. 14
Why Pipeline?
Code
Implemented and Checked in SCM
Durable
Survive Jenkins Restarts
Pausable
Can Stop Or Wait For Human Approval
Versatile
Complex CD Requirements
Extensible
Easier to add Plugins in DSL
16. 16
Pipeline Commands
Pipeline
User defined model of CD pipeline
Node
Machine in Jenkins environment
Stage
Conceptually defined subsets of tasks
Steps
Granular task that tells Jenkins what to do
17. 17
Pipeline Types - Scripted Vs Declarative
Scripted Pipeline
● Tremendous amount of Flexibility and Extensibility
● Groovy language has a limited learning curve
● Imperative Programming
Declarative Pipeline
● Simpler and Opinionated syntax
● Limits user with strict and predefined structure
● Declarative Programming
20. 20
Jenkins Job Builder
● Configures Jenkins by taking Yaml or Json
● Yaml or Json are human readable
● Create Jenkins job xmls from yamls or jsons
● Uploads to Jenkins using HTTP Api
● Also has Template system
21. 21
How to create Build Pipelines?
JENKINS JOB BUILDER
PIPELINE
CODE TEMPLATES JOBS
APP
TEAM
PET
22. 22
Avoid perils of Shared CI
TOPOLOGY DATA PIPELINE CODE
APP TEAM’S JOBS