This is a Drush extension that creates local sites from variables in drush alias files.
This is a simple as posssible wrapper around Drush commands with a few add-ons. It works only on Ubuntu or OSX.
For something more feature-rich and extensible see: http://drupal.org/project/fetcher
Commands
Create or update site
drush @mysite buck
Creates or updates webroot, code, virtual host, /etc/hosts, database and files. It detects if an installation already exists and creates it if it doesn't and updates it if it does. Also fixes permisisons where needed.
Destroy site
drush @mysite buck-destroy
Types of Sites
Buck handles two types of sites.
1) Installation profiles
This requires the following in a alias:
'profile' => 'name of profile',
'makefile' => 'link to makefile',
Optional but helpful:
'site-name' => 'Name of site',
2) "Regular" Drupal sites
This requires the following in a drush alias:
'sync-source' => 'name of alias that this site should sync from',
Required Elements
Buck requires the following elements:
'git' => array(
'url' => '[git url]',
'branch' => '[git branch]',
),
'root' => '[location of site on server]',
'uri' => '[url]',