A copy strategy for Capistrano 3, which mimics the :copy
scm of Capistrano 2.
This will make Capistrano tar the current directory, upload it to the server(s) and then extract it in the release directory.
Machine running Capistrano:
- Capistrano 3
- tar
Servers:
- mktemp
- tar
First make sure you install the capistrano-scm-copy by adding it to your Gemfile
:
gem "capistrano-scm-copy"
Add to Capfile:
require 'capistrano/copy'
Then switch the :scm
option to :copy
in config/deploy.rb
:
set :scm, :copy
Remove files and directories that you don't want to copy:
set :exclude_dir, ['tmp', 'config/*.yml']
I'm new to programming for Capistrano and even Ruby in general. So any feedback is appreciated.
The MIT License (MIT)
- Fix issue related to
tar_roles
(see wercker/capistrano-scm-copy#15)
- Add support for
tar_roles
(see wercker/capistrano-scm-copy#8)
- Fix issue when running on Mac OS X (see wercker/capistrano-scm-copy#9)
- Allow exclude directory to be an Array (see wercker/capistrano-scm-copy#9)
- Add
exclude_dir
- Add
:include_dir
- Add
task :set_current_revision
- Initial release