User login

deployment

Settings for sets of sites: Putting Drush configuration into your project repository

Inherit local-only options with 'parent'

Parent is not working across files. Filed support request: http://drupal.org/node/1262230

In an aliases file that lives with your project, so for our SDL project, sdl.aliases.drushrc.php, put in all settings that are true no matter who is using Drush and from where. This is the settings for an externally hosted development collaboration site.

Permissions error on git pull

ben@ubuntu:~/code/oa/web$ rake prod vlad:update
(in /home/ben/code/oa)
Everything up-to-date
Already on 'master'
Your branch is ahead of 'agaric/master' by 10 commits.
From git.agaric.com:/srv/git/oa
 * branch            master     -> FETCH_HEAD
error: unable to unlink old 'web/sites/default/default.settings.php' (Permission denied)
Updating 183cb44..744b38c
rake aborted!
execution failed with status 1: ssh oa@sojourner.mayfirst.org cd /var/local/drupal/oa && git checkout master && git pull agaric master

Agaric going to Drush Aliases

It would be nice to package our Drush aliases with our projects.

Where does drush look for aliases?

It is possible to have your site-specific aliases in sites/default, such as sites/default/aliases.drushrc.php.

Somewhat Related

Updating your Rakefile and syncing content

As when working on any Agaric project that may not have had maintenance done on it in a while, update the Rakefile to be in line with current processes.

First, make sure your Vlad checkout is up-to-date. Go to it cd ~/vlad (in my case, i symlinked Vlad's true location to my home folder so he can find it. On my system Vlad's true location is /usr/local/lib/site_ruby/1.8/i686-linux/vlad/) and git pull.

cd ~/code/projectname
mv Rakefile RakefileOLD
cp /home/ben/vlad/Rakefile Rakefile
diff -up

Remote drush commands

How we would probably want this to work is that "rake prod vlad:drush XXX" call "ssh prodservername drush -r /path/to/project/drupal XXX"

For instance: ssh prodservername drush -r /path/to/project/drupal enable bad_judgement

Deployment and Development

An extremely abbreviated summary of developer's summit deployment breakout.

Josh Koenig summarized the discussion so far and tried to put a direction on it: we want to separate configuration from code and have a couple approaches.

Greg Dunlap (heyrocker) of Deploy module disagreed completely: there is no separation of configuration and content in Drupal, there won't be, and there probably shouldn't be.

And lots of clients, what they really care about, is content deployment.

UUIDs in core would be huge.

Deploying the Agaric way

Background

Where we come from

After journeying from Capistrano to Vlad we eventually use pure Rake tasks for our deployment. While Vlad was a great improvement it also had downsides. Lack of feedback from tasks made it hard to tell why they failed. Also the most interesting feature of those deployment tools is not required in our case: The ability to roll out to many servers at the same time.

Overview of Development to Live Deployment Strategies

General

Plain Everything-in-code

Take a site into Read Only mode while upgrades are performed on a staging site

When you have a web site

There's got to be a module for that...

http://drupal.org/project/mode (6 only, lots of configuration)

Report-back to this thread:

Admin switch to make site read-only
http://drupal.org/node/25584

Resolution

Make a new Drupal site project in the Agaric system

Run from anywhere on the test or development server:

sudo /srv/scripts/agaric-newproject.sh 5 myagaric myagaric.com my.agaricdesign.com

You'll see a fair amount of output, and the last line you see should be:

Site myagaric installed; run /etc/init.d/apache2 reload to enable.

Syndicate content