The 21st-century software engineering practices of continuous integration (CI) and continuous delivery (CD) have rapidly come to define the best practices for software development, quality assurance, and delivery. CI/CD practices are fundamental to most successful DevOps practices and enable huge benefits for delivering more value, more frequently and with lower risk than traditional engineering. At the same time, CI/CD practices drastically reduce many of the risks and pains associated with deploying software releases and bugfixes.
Jenkins has long been the community tool leader in the open-source world for practicing continuous integration and delivery. It’s robust and enterprise-capable big brother, the CloudBees Jenkins platform, expands the capabilities users love about Jenkins to an enterprise-class toolchain and level of support.
This hands-on Jenkins training course teaches engineering and development teams how to run an enterprise CI/CD practice. Our lab environment and classroom model is deeply interactive, giving students hands-on practice and access to an expert in the classroom so they can return to work ready to immediately use everything Jenkins has to offer.
Looking to solve a particular issue with Jenkins, or need learning targeted to your unique team environment? Have a learning advisor contact you or request more information about our onsite services and learn how we can deliver you customized Jenkins training at a discounted rate.
This course is available for both the open source and CloudBees Platform versions of Jenkins.
A few immediate benefits of attending this course:
- Update your Agile Knowledge
- Automate your Software Delivery Pipeline with Jenkins
- Implement CI/CD with Jenkins
- Integrate Jenkins with Git / GitHub
- Take your Agile Teams to the next level with Jenkins
- Reduce integration issues
- Improve code quality
- Manage plugins within the Jenkins platform
- Build and automate deployments
- Review and implement best practices for Jenkins Pipeline Plugin
- Upcoming Dates and Locations
Guaranteed To Run
- Course Outline
As organizations increase the usage of Jenkins, scaling up to deal new issues will arise when additional masters are added to the environment. Business critical challenges are inevitable because each master will require separate maintenance, security, and upgrades to remain functional. This course will teach you how to use Jenkins for your solution, resulting in:
- Full control of all masters from one central control
- Accelerated automation, development, and delivery
- Meaningful, measurable, quantifiable performance enhancements
Part 1: Foundations of CI/CD in enterprise environments
In order to create an efficient Jenkins environment, the stability of the source control system & the Continuous Integration infrastructure needs to be determined. The root of the CD pipeline starts with the foundation of your environment which is constantly affected by automation, integration, testing and quality assessment, and so on.
- What is Jenkins, CI & CD, and how can Jenkins help my business?
- Introduction to Jenkins and its use for CI best practices
- Feature overview: open-source Jenkins
- Example deployment approaches: Dedicated hardware, Docker, AWS
Part 2: Agile Refresher
Agile development is creating more effective enterprises, and adoption of its values is at an all-time high. The ability to manage changing priorities, increase project visibility, and accelerate product delivery are but a few of the many benefits that Agile development creates. Overall performance has high expectations in today's digital landscape, and the implementation of Agile principles keep teams prepared for new demands, technologies, and trends.
- The Agile Manifesto
- Success with Scaling Agile
- Agile Management Tools
- Implementation of common tools
Part 3: Getting started with Jenkins
Jenkins is at the nucleus of integration & delivery, thus the mastery of it is essential for agile development teams. Pre-deployment, deployment, and post-deployment functionality should be planned and considered before the code is committed.
- Key components of Jenkins
- Jobs in Jenkins
- Projects in Jenkins
- Builds in Jenkins
- Jenkins Templates and modular jobs
Part 4: Jenkins plugins
One of the reasons for Jenkins popularity is because it has literally hundreds of plugins that are customized to expand usage and capabilities within all solutions. These days, the right plugin can assist in fixing problems that you didn’t even know you had.
- Pipeline (Mainly these plugins - Input Step, Basic Steps, Build Step, Job, Groovy
- Docker Pipelines & Commons
- Using parameters and credentials with plugins
- Choice parameters
- Conditional Build Steps
- Amazon Web Services & EC2 Container Services plugins
Part 5: Integrating Jenkins and version control
Jenkins has excellent support for various source code management systems like CVS, Subversion, Git, and more. Complicated jobs continue to need modification, as a natural condition of CI, therefore integration is often a new configuration.
- A Git example
- Jenkins and best SCM practices with Github
- Using Jenkins for Optimizing and Measuring Code Quality Code
- Code Coverage Metrics
- Running and using Builds
Part 6: Parameterized Builds
Any given project will have the option make it’s build parameterized. This enables jobs to be executed with version numbers, server URLs, node names, and specified organizational
- Adding Parameters
- Passing Parameter Values
- Executing a Parameterized Build
- Jenkins credentials
Part 7: Automating Deployments
Automation is one of the most important components necessary for a development team to be agile. Deployment automation is tricky to implement, and many people think they are doing it correctly when they are not.
- Deploying code
- Servers, Clients, and Workstations
- Docker & AWS Containers
- Integrating automated tests (e.g.: Cucumber tests and any other) in Builds and Deployment jobs with Pipeline
- Include Jenkins integration with JFrog Artifactory (DJ use Artifactory for different use cases, including storing docker images and registries)
Part 8: Handling Build Failures
Recognizing known issues, dealing with problems efficiently, and preventing future errors is a must when it comes to continuous delivery. Pipelines have introduced much greater traceability of changes to the build process, so that build fails can be dealt with immediately.
- Detecting the source of a build failure
- Troubleshooting Jenkins Builds
- Build failure Analyzer
- Build log scanning
- Git Timeouts
Part 9: Folders in Jenkins
2. Folders Plus
Part 10: Merging
1. Validated Merges
2. Using GitHub for validated merges
3. Pull-Request Builder for GitHub
Part 11: Running a CI/CD Pipeline through Jenkins
1. Pipeline development tools
2. Pipeline Plugin
3. Trigger a pipeline
- Who should attend
This Jenkins training course is perfect for:
- Software Developers
- Project Managers
- Quality Assurance Professionals
- Software Testers
- Product Owners
- Business Intelligence Professionals
- Infrastructure Engineers
- Development Team Members
- Operations Team Members
- Anyone who is a hands-on user of the CloudBees Jenkins platform or open source Jenkins