Cover by John Ferguson Smart

Safari, the world’s most comprehensive technology and business learning platform.

Find the exact information you need to solve a problem on the fly, or go deeper to master the technologies and skills you need to succeed

Start Free Trial

No credit card required

O'Reilly logo

Implementing Automated and Continuous Deployment

In its most elementary form, Automated Deployment can be as simple as writing your own scripts to deploy your application to a particular server. The main advantage of a scripted solution is simplicity and ease of configuration. However, a simple scripted approach may run into limits if you need to perform more advanced deployment activities, such as installing software on a machine or rebooting the server. For more advanced scenarios, you may need to use a more sophisticated deployment/configuration management solution such as Puppet or Chef.

The Deployment Script

An essential part of any Automated Deployment initiative is a scriptable deployment process. While this may seem obvious, there are still many organizations where deployment remains a cumbersome, complicated and labor-intensive process, including manual file copying, manual script execution, hand-written deployment notes, and so forth. The good news is that, in general, it does not have to be this way, and, with a little work, it is usually possible to write a script of some sort to automate most, if not all, of the process.

The complexity of a deployment script varies enormously from application to application. For a simple website, a deployment script may be as simple as resyncing a directory on the target server. Many Java application servers have Ant or Maven plugins that can be used to deploy applications. For a more complicated infrastructure, deployment may involve ...

Find the exact information you need to solve a problem on the fly, or go deeper to master the technologies and skills you need to succeed

Start Free Trial

No credit card required