Often, certain files (
config/database.yml, etc) are excluded from an
application’s SCM, but required to be present for deploy. We’ve abstracted
this pattern with some Capistrano automation that goes great with Moonshine.
For example, if you keep
config/database.yml out of your SCM, add the
following line to your
:shared_config: - config/database.yml
This file will then be automatically uploaded when you run
and symlinked to
current/config/database.yml on each deploy.
There are some extra cap tasks for working with these files manually, if needed:
Uploads all files in
/srv/APPNAME by default) for all servers in the
current deploy stage.
Downloads all files in
shared_config from all servers in the current deploy stage.
Symlinks all files in
on all remote hosts in the current deploy stage.
local_config functionality is still supported, but
shared_config is recommended.