Jenkins User Boot Camp Training
Jenkins User Boot Camp Training Course – Hands-on
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 User Boot Camp 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.
Jenkins User Boot Camp Training Course – Customize it
- We can adapt this Jenkins User Boot Camp Training course to your group’s background and work requirements at little to no added cost.
- If you are familiar with some aspects of this Jenkins User Boot Camp Training course, we can omit or shorten their discussion.
- We can adjust the emphasis placed on the various topics or build the Jenkins User Boot Camp Training around the mix of technologies of interest to you (including technologies other than those included in this outline).
- If your background is nontechnical, we can exclude the more technical topics, include the topics that may be of special interest to you (e.g., as a manager or policy-maker), and present the Jenkins User Boot Camp Training course in manner understandable to lay audiences.
Jenkins User Boot Camp Training Course – Audience/Target Group
The target audience for this Jenkins User Boot Camp Training course:
- 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
Jenkins User Boot Camp Training Course – Class Prerequisites
The knowledge and skills that a learner must have before attending this Jenkins User Boot Camp Training course are:
- Although it is not mandatory, students who have completed the self-paced Fundamentals of DevOps eLearning course have found it very helpful when completing this course.
Jenkins User Boot Camp Training Course – Objectives:
Upon completing this Jenkins User Boot Camp Training course, learners will be able to meet these objectives:
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 Jenkins User Boot Camp Training 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
Jenkins User Boot Camp Training – Course Content
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 markers.
- 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
- 1. Folders
- 2. Folders Plus
Part 10: Merging
- 1. Validated Merges
- 2. Using GitHub for validated merges
- 3. Pull-Request Builder for GitHub
- 4. Templates
Part 11: Running a CI/CD Pipeline through Jenkins
- 1. Pipeline development tools
- 2. Pipeline Plugin
- 3. Trigger a pipeline