Capistrano has an in built mechanism for sharing areas and files between different releases of a Rails application on the same machine. The Brightbox gem takes that facility and makes it generally available. Any file or directory can be shared between releases simply by including it in the appropriate list.
Local shared area management is handled with two Capistrano variables: :local_shared_dirs and :local_shared_files. Within the config/deploy.rb file, locate the Local Shared Area section and uncomment the relevant lines.
If you want to create a shared directory area (such as an upload area for assets), add the directory name to the list, e,g:
set :local_shared_dirs, %w(public/assets public/images/uploads)
Similarly to create a shared file, add the name of the file to the list.
set :local_shared_files, %w(config/database.yml config/activemerchant.yml)
Note that all the directories and filenames are expressed relative to the root of the Rails application
You can create the shared directory structure by re-running setup, e.g.
cap deploy:setup
The system creates the directories and files in the shared area within your application. If you are using shared files, you will need to copy the files into the shared area manually.
Now when you deploy your application, the gem recipes will automatically create symbolic links to your shared directories and files.
cap deploy
Note that this area is a Local shared area that is shared between the releases of a single application on a single machine. It will not share the files between machines, or between applications.