Jenkins is one of the most popular Continuous Integration servers on the market today. It is designed to maintain, secure, communicate, test, build, and improve the software development process. Setting up Jenkins and running build jobs is not enough for a production infrastructure.
For optimal performance and results, architecting, designing, and implementing a production-grade Jenkins deployment is essential. In agile development practices, developers need to integrate their work to fix bugs or to create a new feature or functionality. Jenkins is used for continuous integration, helping to enforce the principles of agile development.
This comprehensive 3-in-1 course is a step-by-step approach to get you up-and-running with Jenkins and then quickly moves on to implement a scalable and production-grade infrastructure. Implement a scalable, stable, and robust production grade infrastructure. Combine multiple services to create optimal code delivery workflows and pipelines. Discover the process of using Jenkins to build, test, and package Java applications. Create a Git repository and Docker images using a local development environment, and other DevOps configuration tools. Get equipped to deploy a modern Jenkins System by provisioning slave nodes to the cloud with Ansible and Docker.
Contents and Overview
This training program includes 3 complete courses, carefully chosen to give you the most comprehensive training possible.
The first course, Practical Jenkins, covers automation of Jenkins deployment in no time!. Get up and running with Jenkins and deliver an optimal Jenkins deployment. Explore and configure features such as high availability, security, monitoring, and backing up/restoring data, which are basically all of the things you need to implementing a scalable and production grade infrastructure. Learn how to implement distributed builds, automate build pipelines, and integrate your Jenkins deployment with external services, thus showing you how to increase your team's productivity with pipeline as a code building advanced pipelines faster and easier.
By the end of this video course, you will be able to automate, implement, secure, and manage your Jenkins deployment in no time.
The second course, Hands-On Continuous Integration and Automation with Jenkins, covers building, testing, and packaging applications with Jenkins in this hands-on video course supported by practical real-world examples. Delve into the installation of the required software dependencies and libraries and demonstrates the workflow you'll need to follow to perform continuous integration for a sample application. Learn how to integrate code repositories and build tools in order to build code pipelines to implement both continuous integration and continuous delivery. Finally, you will also learn to automate deployment to a cloud platform such as AWS.
The third course, Deploying Jenkins to the Cloud with DevOps Tools, covers professional practices, techniques, and solutions for using Jenkins in cloud environments. Explore different AWS services and use them for Continuous Integration. Customize and configure your Jenkins master automatically on boot-up with Groovy code in order to achieve the build process we want. This includes adding secrets to the credentials store, installing and configuring plugins, and setting some basic values within the Jenkins main configuration. Once we are able to interact with Gitlab, we will then configure a way to run Jenkins nodes on Kubernetes so that we can actually build our software.
When everything looks good in our development environment, we will then see what an almost production-ready CI system in the cloud looks like, especially with regard to security aspects.
By the end of the course, you’ll implement and manage your production - grade Jenkins deployments to build, test, and package applications, supported by practical real-world examples.
About the Authors
- Anirban Saha is an infrastructure professional with more than seven and half years' experience in infrastructure management at various industries and organizations ranging from early startups to corporate environments. He has worked extensively with configuration management and automation tools including Puppet, Chef, Ansible, Saltstack, and Terraform, to name a few. He has extensive experience in architecting, deploying, and managing large infrastructures and speaks at various conferences on the latest technologies.
- Sandro Cirulli is a certified Jenkins engineer, co-maintainer of XSpec, an open source unit testing framework for XML technologies, and co-organizer of DevOps Oxford Meetup. Sandro currently works as Lead Language Technologist in the Dictionaries department of Oxford University Press (OUP) where he's in charge of system administration, cloud, and DevOps. Sandro holds an MS degree in Computer Science from Oxford Brookes University and blogs at sandrocirulli. net.
- Martin Reinhardt has around 10 years' experience in research, enterprise solutions, consulting, portal development, JEE solutions, application and infrastructure integration, test automation, virtualization, and Continuous Integration and Delivery. Specialties: Model driven architecture (MDA), Java Enterprise solutions, test automation with Selenium, Continuous Integration