Automating Drupal Deployment with drush_make and Features


If you are in the business of building and deploying Drupal sites, you probably have a manual recipe (or shell script) that you follow for each new project. This usually involves downloading various contributed modules and external libraries, setting up custom content types, and configuring themes, just for a start. Worse, if you’ve developed new functionality, deploying it to a live site is slow and error-prone. What if it were possible to describe the necessary components and custom functionality of your creations in code, making them versionable, and saving yourself hours of labor?

In this session, we will describe how to do that by leveraging the power of Drupal’s install profiles, the new drush_make utility, and the Features module.


drush_make is capable of downloading code and libraries from anywhere to get your site’s building blocks, and if you’re not afraid of a little PHP, install profiles can do all of the site configuration tasks that require seemingly hours of clicking and typing.

The Features module provides a standardized method of exporting the components of your site into distributable, code-based solutions that can be kept up to date long after installation. We’ll take a quick look at how Features can make deployment and version control for discrete functionality sets much less of a nightmare. We’ll also talk about what Features can’t do for you yet, and what the road ahead looks like for making those things work.


The slides for this presentation are now publicly available at… —enjoy!


Sounds fan-tabulous… I have been playing with Features and looking at profiles. Thinking that Drush is a necessary step, and look forward to a bit of guidance.