Presented by
Antonio De Marco
Andrea Pescetti
Drupal 7 allows to easily build and maintain distributions, i.e. repeatable website templates; you can benefit from this in all cases, whether you aim at large-scale deployments or even at maintaining a single website.

We will show how to package core and contributed modules in a distribution by using a Makefile and a profile and keeping them up-to-date during the whole development cycle.

Then you will learn how to use Code-Driven Development to store all settings in a sustainable way: use the Features module to easily describe configuration in code, a proper separation between Features to make your code reusable and extendible, a well-thought design of Features to create easier development patterns, CTools and Exportables to put your configuration in code even when a module does not support it natively.

Last, we will see how the distributions update mechanism allows you to create a new version of your distribution for easy and painless configuration updates of a live site.

Intended audience
All developers who wish to benefit from a clean development workflow allowing collaboration, code reuse and safe updates. The distributions workflow can be applied to single sites too, with similar benefits.

Questions answered by this session
How do I design my Features properly?

How can I create a Drupal distribution?

How does the distributions approach allow a cleaner workflow in general?

How can I have a safe upgrade path for my sites?

How can I easily maintain a Drupal distribution?

Drupal is a registered trademark of Dries Buytaert.