You are hereBlogs / moshe weitzman's blog / Tell me about your Drush innovations

Tell me about your Drush innovations


By moshe weitzman - Posted on 16 August 2010

Are you using drush in an interesting or innovative way? Does your development team integrate drush into its workflow? Got any interesting custom commands? Post a comment telling me about it. I'm gathering topics for my Advanced Drush session in Copenhagen.

Also, folks might be interested to know that drush's sql-sync command can now sanitize your database while it is copying it. By default, drush can wipe all passwords and email addresses. Contrib modules can add further logic to wipe personal info from their own tables (e.g. group/newsletter memberships, purchase history, etc.).

Tags

This script will sync development environments. Just needs to be updated with the db sanitizing :)

http://gist.github.com/423121

We're using a custom deployment system (a little like Aegir I suppose) whereby the drush aliases file is amended by a Drupal module, then a database is deployed to be used as a basis for a new Drupal site, giving drush the ability to interact with the site.

So really we have one 'central' site that can spawn others, and once spawned, the 'central' site uses drush to execute commands like vset on its children. This is a much easier way of customising each individual site being spawned, rather than trying to edit the database with SQL commands or via some other route.

Now that drush is fully capable of working on remote systems providing keys are shared, and MySQL can do this, of course, this method can be used to spawn sites on remote systems too.

Shortly after drush_make started making the rounds, I decided I wanted devseed's feature server to make drupal distributions for me based on drush_make stubs, so I forked their code, added a new content type and a bit of new code and got fserver to start distributing full drupal profiles.

http://github.com/EclipseGc/FeatureServer

I also have an open atrium compatible version of this on my github account which I have running for a customer who has a very customized distribution with a number of custom modules in private git repos. Having this functionality has been essentially to actually being able to deploy/update systems for her.

Eclipse

Here's a fun one I found over in the github gists:

http://gist.github.com/221965