Deploying to the Cloud with Jenkins - Ship It Continuously

Finally, it is time to ship our application. There are many ways to get our application deployed to the production environment. We can choose to do it manually, starting from running the mvn clean install command, to sending the .jar file to servers using tools such as FTP or the scp command, then stopping the old version of the application and starting the new version, followed by initiating the E2E test. Or, we can write Python/shell scripts to automate some of the steps. Either way, there are manual steps, which creates room for errors. That's why rolling out an application manually or half-manually is always stressful. Constant focus is required throughout the entire release.

Nowadays, there are various tools that can help us with that. Many of these tools provide deep integration with Version Control Systems (VCS), such as Git, and are free for open source projects. For example, Travis CI will build your application once you push code to GitHub. After the build passes, it will automatically deploy the application to the servers that you specified, then it will inform you of the successful deployment by sending you an email or telling you on Slack. It will also notify you in case the build fails. This whole process is triggered by the push of the code.

In this chapter, we will create a continuous delivery process using Jenkins 2. You will learn the following:

  • What continuous delivery is
  • How continuous delivery is different from continuous integration and continuous deployment
  • How to use Jenkins 2 to build a continuous delivery process
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.226.98.208