Pull: rollback on rsync failure and support gateway variable #12

wants to merge 3 commits into


None yet
2 participants

mcary commented Jul 12, 2011

I've made two changes to capistrano_rsync_with_remote_cache:

  1. When rsync fails, instead of silently continuing, rollback the deploy
  2. Obey Capistrano's :gateway variable to forward SSH through a bastion host when calling rsync

I've added tests for each. Please let me know if there is anything else you require for acceptance of these changes.



mcary added some commits Jul 12, 2011

Rollback the deploy instead of continuing when rsync fails
When rsync fails, I'm getting a deploy that looks like it went fine
except for an inconspicuous message saying that rsync failed and a
production deployment that's still on the old code version.  Sometimes I
don't notice right away that the new code is not actually live, and this
is a big problem.

I'd like to see a clear error message when rsync fails.

Raise an exception of rsync fails to any of the servers receiving a code
Add support for Capistrano's :gateway variable to rsync invocation
When running rsync, the RsyncWithRemoteCache strategy doesn't heed
Capistrano's :gateway parameter, which says to SSH to the server
named by that parameter before connecting to the target server.

Add support for a gateway by using the ProxyCommand SSH directive.
Assume netcat is installed as nc on the target system.

mtrias commented Mar 21, 2013


Is this feature planned to be merged sometime ? Are there any other alternatives to this ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment