Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Learning Continuous Integration with Jenkins

You're reading from   Learning Continuous Integration with Jenkins A beginner's guide to implementing Continuous Integration and Continuous Delivery using Jenkins 2

Arrow left icon
Product type Paperback
Published in Dec 2017
Publisher Packt
ISBN-13 9781788479356
Length 362 pages
Edition 2nd Edition
Tools
Arrow right icon
Author (1):
Arrow left icon
Nikhil Pathania Nikhil Pathania
Author Profile Icon Nikhil Pathania
Nikhil Pathania
Arrow right icon
View More author details
Toc

Table of Contents (11) Chapters Close

Preface 1. Concepts of Continuous Integration 2. Installing Jenkins FREE CHAPTER 3. The New Jenkins 4. Configuring Jenkins 5. Distributed Builds 6. Installing SonarQube and Artifactory 7. Continuous Integration Using Jenkins 8. Continuous Delivery Using Jenkins 9. Continuous Deployment Using Jenkins 10. Supporting Tools and Installation Guide

Benefits of using CI

The following are some of the benefits of using CI. The list is brief, and not comprehensive.

Freedom from long integrations

Integrating the code rarely, as seen in the Waterfall model, can lead to merge hell. It is a situation wherein teams spend weeks resolving the merge issues.

In contrast to this, integrating every single commit on your Feature branch with the Integration branch and testing it for issues (CI) allows you to find integration issues as early as possible.

Metrics

Tools like Jenkins, SonarQube, Artifactory, and GitHub allow you to generate trends over a period. All of these trends can help project managers and teams to make sure the project is heading in the right direction and with the right pace.

Catching issues faster

This is the most important advantage of having a carefully implemented CI system. Any integration issue or merge issue gets caught early. The CI system has the facility to send notification as soon as the build fails.

Rapid development

From a technical perspective, CI helps teams work more efficiently. Projects that use CI follow an automatic and continuous approach while building, testing, and integrating their code. This results in a faster development.

Developers spend more time developing their code and zero time building, packaging, integrating, and deploying it, as everything is automated. This also helps teams that are geographically distributed to work together. With a good software configuration management process in place, people can work on widely distributed teams.

Spend more time adding features

In the past, build and release activities were managed by the developers, along with the regular development work. It was followed by a trend of having separate teams that handled the build, release, and deployment activities. And it didn't stop there; this new model suffered from communication issues and a lack of coordination among developers, release engineers, and testers. However, using CI, all the build, release, and deployment work gets automated. Therefore, the development team need not worry about anything other than developing features. In most cases, even the complete testing is automated. Therefore by using a CI process, the development team can spend more time developing the code.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime