wp-capify is a Capistrano setup tailor-made for WordPress. Capistrano is a developer tool for deploying web applications. It is typically installed on a workstation, and used to deploy code from your source code management (SCM) to one, or more servers.
This setup is inspired by theme.fm and supports multistage deployment to the environments staging and production from a development repository.
The modified wp-config.php only loads an existing wp-config-<environment>.php (gitignore'd), which means that no DB credentials are in the git repository. For local development, create a wp-config-local.php. For staging and production, just put the config in the shared directory (see below).
- Development machine, with wp-capify and your WordPress files in
public/ - Staging server, e.g.
staging.example.com - Production server, e.g.
example.com
.
|-- config
|-- public
| |-- wp-config.php
| |-- wp-config-local.php (.gitignore'd)
| |-- wp-admin
| |-- ...
|-- Capfile
|-- README.md
.
|-- shared
| |-- wp-config-staging.php (only @staging)
| |-- wp-config-production.php (only @production)
| |-- uploads
| | |-- blueprints.png
|-- releases
|-- current -> releases/<latest deploy>
- update README: describe directories, symlinks (uploads, current)
- update README with tagging feature
- update README with install and bootstrap instructions
- bootstrap:wordpress: downloads wordpress to public/
- bootstrap:config: creates
wp-config-<local|staging|production>.php