Two-day intensive hands-on training
This course will provide you with a thorough grounding in Continuous Integration and Continuous Delivery concepts and give you the necessary skills to implement them using Jenkins. You will learn how to configure and utilize Jenkins to its full potential as the foundation of the tool-stack that shall support the software development process.
You will learn how to automate and execute anything from within Jenkins, taking a deep dive into all aspects of automated deployment, automated testing, code metrics, advanced support for Version Control Systems, integration to task management systems, and we will discuss and demonstrate the different interfaces that can be used to extend, automate and tweak Jenkins in the direction that suits your needs exactly.
This class is intensive and hands-on!
We have a complete lab set-up where you will gain fast paced experiences to take home, ready to apply in your environment. You only need to bring a laptop.
The course structure is module based, with each module containing an instructor lead presentation of each topic followed by either lab exercises or discussions. Attendees are welcome to bring questions or challenges from their own background.
Testimonials from attendees from our previous courses
"Got great inspiration for how we can work on a setup with Jenkins containing functional test"
"The course lived really well up to my expectations. I got control of what it was all about what to use Jenkins. And indeed a glimpse of how we are going to use Jenkins."
Continuous Integration Primer
- The motivation behind continuous integration
- Key concepts in CI
- Setting up Jenkins jobs, project types, views, plugins, slaves, configuration, security models.
- Understanding the UI
Daily use - making sense of data
- Know your jobs and Jenkins console
- Notifications and alarms
- Drinking from the firehose
- Creating an awareness culture
Initial config - Metrics and plugins
- Metrics quality gates and thresholds
- Using tools to counteract software entropy
- Extending Jenkins with new features
- Visualizing metrics with plugins
- Jenkins master and slave model
- Job roaming
- Slave labelling
- Right-sizing your architecture
Continuous delivery primer
- The motivation behind continuous delivery
- Deployment pipelines
- Software as a factory
- Continuous Delivery Maturity Model
- Handling Jenkins jobs configuration as code
- Jenkins server configuration as code
- Automate your Definition of Done
- The four flavours of pretested integration
- Why to automate software versioning
- Semantic versioning
- Stamping build information into artifacts
- Integrations into other systems
- The software factory and inventory management
- Components and products
- Artifact promotion and deployment
- Configuration rotation
- Divide and conquer strategies
- Parallelization and pipeline performance
- Configuration as code
- Version controlling your Jenkins setup