Mastering Jenkins

Configure and extend Jenkins to architect, build, and automate efficient software delivery pipelines

Mastering Jenkins

This ebook is included in a Mapt subscription
Jonathan McAllister

4 customer reviews
Configure and extend Jenkins to architect, build, and automate efficient software delivery pipelines
$0.00
$20.00
$49.99
$29.99p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Preview in Mapt

Book Details

ISBN 139781784390891
Paperback334 pages

Book Description

With the software industry becoming more and more competitive, organizations are now integrating delivery automation and automated quality assurance practices into their business model. Jenkins represents a complete automation orchestration system, and can help converge once segregated groups into a cohesive product development and delivery team. By mastering the Jenkins platform and learning to architect and implement Continuous Integration, Continuous Delivery, and Continuous Deployment solutions, your organization can learn to outmanoeuvre and outpace the competition.

This book will equip you with the best practices to implement advanced continuous delivery and deployment systems in Jenkins. The book begins with giving you high-level architectural fundamentals surrounding Jenkins and Continuous Integration. You will cover the different installation scenarios for Jenkins, and see how to install it as a service, as well as the advanced XML configurations. Then, you will proceed to learn more about the architecture and implementation of the Jenkins Master/Save node system, followed by creating and managing Jenkins build jobs effectively. Furthermore, you’ll explore Jenkins as an automation orchestration system, followed by implementing advanced automated testing techniques. The final chapters describe in depth the common integrations to Jenkins from third-party tools such as Jira, Artifactory, Amazon EC2, and getting the most out of the Jenkins REST-based API.

By the end of this book, you will have all the knowledge necessary to be the definitive resource for managing and implementing advanced Jenkins automation solutions for your organization.

Table of Contents

Chapter 1: Setup and Configuration of Jenkins
The Jenkins platform architecture and configuration techniques
Jenkins on Microsoft Windows
Jenkins on Linux and UNIX
Running Jenkins behind an NGINX reverse proxy
Running Jenkins behind an Apache reverse proxy
Disaster recovery in Jenkins
Jenkins on Mac OS X
Summary
Chapter 2: Distributed Builds – Master/Slave Mode
Understanding the master and slave architecture
Choosing a launch method
Administering Jenkins slaves
Labels, groups, and load balancing
Summary
Chapter 3: Creating Views and Jobs in Jenkins
The Jenkins user interface
Jobs in Jenkins
Creating views
Summary
Chapter 4: Managing Views and Jobs in Jenkins
Managing Views in Jenkins
Navigating a job's project page
Job execution
The Job Execution Configuration panel
The Status panel
The Console Output
Summary
Chapter 5: Advanced Automated Testing
Quality assurance initiatives and test automation terminology
The Software Development Lifecycle
Connecting product codes to tests
Baking quality into the product
Automated testing in Jenkins
Unit tests in Jenkins through MSTest
Distributed testing solutions
Summary
Chapter 6: Software Deployments and Delivery
Standardizing build outputs
Implementing a Definitive Media Library
Automated deployments
Summary
Chapter 7: Build Pipelines
The value proposition of build pipelines
Architecting a build pipeline
Implementing build pipelines in Jenkins
Summary
Chapter 8: Continuous Practices
Kaizen – Continuous Improvement
Continuous Integration
Continuous Delivery
Continuous Deployment
Summary
Chapter 9: Integrating Jenkins with Other Technologies
Jenkins and Docker – Linux guide
Integrating Jenkins with Ansible – Linux and Windows
Jenkins and Artifactory
Jenkins and Selenium Grid
Jenkins and Jira
Summary
Chapter 10: Extending Jenkins
Setting up the development environment
Creating a Jenkins plugin skeleton
The plugin skeleton
Importing a Maven-generated skeleton into IntelliJ
The architecture of Jenkins plugins
Jelly tags and files
Compiling and installing an HPI plugin
Summary

What You Will Learn

  • Create and manage various types of build jobs, and implement automation tasks to support a software project of any kind
  • Get to grips with the automated testing architecture, and scalable automated testing techniques
  • Facilitate the delivery of software across the SDLC by creating scalable automated deployment solutions
  • Manage scalable automation pipelines in Jenkins using the latest build, test, and deployment strategies
  • Implement a scalable master / slave build automation platform, which can support Windows, Mac OSX, and Linux software solutions
  • Cover troubleshooting and advanced configuration techniques for Jenkins slave nodes
  • Support a robust build and delivery system by implementing basic infrastructure as code solutions in configuration management tools such as Ansible

Authors

Table of Contents

Chapter 1: Setup and Configuration of Jenkins
The Jenkins platform architecture and configuration techniques
Jenkins on Microsoft Windows
Jenkins on Linux and UNIX
Running Jenkins behind an NGINX reverse proxy
Running Jenkins behind an Apache reverse proxy
Disaster recovery in Jenkins
Jenkins on Mac OS X
Summary
Chapter 2: Distributed Builds – Master/Slave Mode
Understanding the master and slave architecture
Choosing a launch method
Administering Jenkins slaves
Labels, groups, and load balancing
Summary
Chapter 3: Creating Views and Jobs in Jenkins
The Jenkins user interface
Jobs in Jenkins
Creating views
Summary
Chapter 4: Managing Views and Jobs in Jenkins
Managing Views in Jenkins
Navigating a job's project page
Job execution
The Job Execution Configuration panel
The Status panel
The Console Output
Summary
Chapter 5: Advanced Automated Testing
Quality assurance initiatives and test automation terminology
The Software Development Lifecycle
Connecting product codes to tests
Baking quality into the product
Automated testing in Jenkins
Unit tests in Jenkins through MSTest
Distributed testing solutions
Summary
Chapter 6: Software Deployments and Delivery
Standardizing build outputs
Implementing a Definitive Media Library
Automated deployments
Summary
Chapter 7: Build Pipelines
The value proposition of build pipelines
Architecting a build pipeline
Implementing build pipelines in Jenkins
Summary
Chapter 8: Continuous Practices
Kaizen – Continuous Improvement
Continuous Integration
Continuous Delivery
Continuous Deployment
Summary
Chapter 9: Integrating Jenkins with Other Technologies
Jenkins and Docker – Linux guide
Integrating Jenkins with Ansible – Linux and Windows
Jenkins and Artifactory
Jenkins and Selenium Grid
Jenkins and Jira
Summary
Chapter 10: Extending Jenkins
Setting up the development environment
Creating a Jenkins plugin skeleton
The plugin skeleton
Importing a Maven-generated skeleton into IntelliJ
The architecture of Jenkins plugins
Jelly tags and files
Compiling and installing an HPI plugin
Summary

Book Details

ISBN 139781784390891
Paperback334 pages
Read More
From 4 reviews

Read More Reviews