0.0
No commit activity in last 3 years
No release in over 3 years
Replacement for the rails deploy strategy which ships with Capistrano, allows you to deploy Drupal sites with ease. Based off of Lee Hambley's Railsless Deploy.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

Drupal Deploy (Based off of Lee Hambley's Railsless Deploy)

If you want a way to deploy your drupal code, copy files/ directory (and back it up), and dump and import your development database to another server (and back it up!) all by with 'cap deploy', this is for you.

Please visit the wiki for a couple of example files!

Installation

$ gem install drupal-deploy

Dependencies

capistrano-ext, the multi-stage extension for Capistrano, will be checked for while installing this.

Usage

Begin your application's Capfile like this:

require 'rubygems'
require 'drupal-deploy'
load    'config/deploy'

Be sure to remove the original require 'deploy' as this is where the standard tasks are defined. You don't want to use those.

Now proceed as you normally would. I really, really recommend looking through the tasks that come with this, though.

Get a full task list with cap -T

Assumptions

This deploy strategy makes a bunch of assumptions which you may or may not like:

  • You have drush installed on your remote server(s)
  • Your files/ directory is in the standard location, sites/default
  • Your site's code lives in a directory named drupal/

Your site's directory structure should resemble this:

my_website/
`- .git/
`- .gitignore
`- Capfile
`- config/
  `- deploy.rb
  `- deploy/
    `- staging.rb
    `- production.rb
`- drupal/
  `- <drupal files>

What's Included?

If you want to try before you buy, here's the list of tasks included with this version of the deploy recipe:

cap deploy                    # Deploys your project.
cap deploy:check              # Test deployment dependencies.
cap deploy:cleanup            # Clean up old releases.
cap deploy:db                 # Dumps and imports the development database to your live site
cap deploy:db:pull            # Dumps and imports the live database to the development site
cap deploy:files              # Copies the files directory from development to live
cap deploy:files:pull         # Pull the files directory from the live server to development
cap deploy:pending            # Displays the commits since your last deploy.
cap deploy:pending:diff       # Displays the `diff' since your last deploy.
cap deploy:pull               # Pull the database and files directory from your primary server to your secondary server
cap deploy:rollback           # Rolls back to a previous version and restarts.
cap deploy:setup              # Prepares one or more servers for deployment.
cap deploy:update             # Copies your project and updates the symlink.
cap deploy:update_code        # Copies your project to the remote servers.
cap deploy:upload             # Copy files to the currently deployed version.
cap drupal:configure:settings # Copy the appropriate settings.php file.
cap drupal:symlink:webapp     # Symlink the website
cap invoke                    # Invoke a single command on the remote servers.
cap shell                     # Begin an interactive Capistrano session.

I recommend running cap -vT too and looking through everything. There are a bunch of internal tasks at work.

Bugs & Feedback

Questions? Feedback? Love it? Hate it? Want to fix it? Anything else? Let me know.

http://github.com/jh3