Book Image

Learning Continuous Integration with Jenkins - Second Edition

By : Nikhil Pathania
Book Image

Learning Continuous Integration with Jenkins - Second Edition

By: Nikhil Pathania

Overview of this book

In past few years, agile software development has seen tremendous growth. There is a huge demand for software delivery solutions that are fast yet flexible to numerous amendments. As a result, Continuous Integration (CI) and Continuous Delivery (CD) methodologies are gaining popularity. This book starts off by explaining the concepts of CI and its significance in the Agile. Next, you'll learn how to configure and set up Jenkins in many different ways. The book exploits the concept of "pipeline as code" and various other features introduced in the Jenkins 2.x release to their full potential. We also talk in detail about the new Jenkins Blue Ocean interface and the features that help to quickly and easily create a CI pipeline. Then we dive into the various features offered by Jenkins one by one, exploiting them for CI and CD. Jenkins' core functionality and flexibility allows it to fit in a variety of environments and can help streamline the development process for all stakeholders. Next, you'll be introduced to CD and will learn how to achieve it using Jenkins. Through this book's wealth of best practices and real-world tips, you'll discover how easy it is to implement CI and CD using Jenkins.
Table of Contents (18 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface
Index

Exposing your localhost server to the internet


You are required to create Webhooks on GitHub in order to trigger a pipeline in Jenkins. Also, for the GitHub Webhooks to work, it is important that the Jenkins server is accessible over the internet. 

While practicing the examples described in this book, you may feel a need to make your Jenkins server accessible over the internet, which is installed in your sandbox environment. 

In the following section, we will use a tool named ngrok to achieve this feat. Perform the following steps to make your Jenkins server accessible over the internet:

  1. Log in to the Jenkins server machine (standalone Windows/Linux machine). If you are running Jenkins using Docker, log in to your Docker host machine (most probably, Linux).
  2. Download the ngrok application from https://ngrok.com/download.
  3. What you download is a ZIP package. Extract it using the unzip command (to install the ZIP utility on Ubuntu, execute sudo apt-get install zip).
  4. Run the following command to unzip...