Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Branch: master
Fetching contributors…

Cannot retrieve contributors at this time

64 lines (41 sloc) 1.579 kB

Deploy BDSM Extension

This extension is used to deploy


BDSM Deployment management extension


bdsm deploy [arguments]



Deployment Steps:

  1. update_repository
  2. deploy: a. stage b. configure c. symlink d. replace_current e. cleanup f. record


For each step there are two hooks one that is run before ('before_' prefix) and one that is run after ('after_' prefix).

Each hook is the name of a step listed above prefixed with either before_ or after_. For example around steps a - f there is a 'before_deploy' and an 'after_deploy'

Hooks are only run if the hook file is executable, otherwise the file is considered disabled.

Hooks are looked for and run from two places, shared then repository. First hooks are run from the shared_path/deploy/ directory and then from the shared_path/project_name/config/deploy/ directory.

If you want to execute a task before the code is moved in place but after everything is setup in the staging area, use 'before_replace_current' hook.


If any one of the deployment steps fail, then the deploy should fail as well. If this is not the case please let me know right away and provide a gist of 'bdsm --trace deploy' so that I can inspect where the failure is occurring.


  • git / subversion / mercurial (whichever the application's repository uses).
  • curl
  • rsync


Jump to Line
Something went wrong with that request. Please try again.