DevOps for Web Development: Orchestrating Application Deployment


This chapter describes in detail how to orchestrate different build jobs for continuous integration, configuration management, continuous delivery, and so on. It will cover how the build pipeline plugin and pipeline feature of Jenkins 2.0 can be used to orchestrate an end-to-end automation process for application deployment. Until now, we have covered continuous integration, cloud provisioning using Chef, configuration management, and continuous delivery. Each was configured in a unique build job. Now we are only going to manage all those build jobs in a manner that the checkout or execution of the build pipeline will result in the checkout, compilation, unit test execution, installation of the Linux instance on Amazon EC2, installation of the runtime environment, configuration of permissions in the newly created instance, and deployment of the WAR file.

DevOps Orchestration

In this chapter, we will cover the following topics:

  • Creating parameterized build jobs for end-to-end automation
  • Configuring a build pipeline for the orchestration of a build job
  • Executing the build pipeline for application deployment automation

The build pipeline, also called the deployment or application delivery pipeline, can be used to achieve end-to-end automation for all operations, including continuous integration, cloud provisioning, configuration management, continuous delivery, continuous deployment, and notifications. The following Jenkins plugins can be used for overall orchestration of all the activities involved in end-to-end automation:

  • Continuous integration: Jenkins
  • Configuration management: Chef
  • Cloud service providers: AWS, Microsoft Azure
  • Container technology: Docker
  • Continuous delivery/deployment: ssh

Jenkins can be used to manage unit testing and code verification; Chef can be used for setting up a runtime environment; Knife plugins can be used for creating a virtual machine in AWS or Microsoft Azure; the build pipeline or deployment pipeline plugins in Jenkins can be used for managing deployment orchestration.

For more details get the DevOps for Web Development book.

DevOps for Web Devlopment

It is also available at:

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s