aboutsummaryrefslogtreecommitdiff
path: root/lib/leap_cli/remote
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2012-10-27 15:13:45 -0700
committerelijah <elijah@riseup.net>2012-10-27 15:13:45 -0700
commit2bc0fe5aca5afe89647c8416a3d3cd440475121c (patch)
tree8b3fab72e4fa6b052428064029f66577e3c74016 /lib/leap_cli/remote
parentb649cce68bb5628f02e324ada7fa72177c832a10 (diff)
downloadleap_cli-2bc0fe5aca5afe89647c8416a3d3cd440475121c.tar.gz
leap_cli-2bc0fe5aca5afe89647c8416a3d3cd440475121c.tar.bz2
minor code cleanup
Diffstat (limited to 'lib/leap_cli/remote')
-rw-r--r--lib/leap_cli/remote/plugin.rb20
1 files changed, 12 insertions, 8 deletions
diff --git a/lib/leap_cli/remote/plugin.rb b/lib/leap_cli/remote/plugin.rb
index 3fb5160..6b59727 100644
--- a/lib/leap_cli/remote/plugin.rb
+++ b/lib/leap_cli/remote/plugin.rb
@@ -18,21 +18,25 @@ module LeapCli; module Remote; module Plugin
def rsync_update
SupplyDrop::Util.thread_pool_size = puppet_parallel_rsync_pool_size
servers = SupplyDrop::Util.optionally_async(find_servers, puppet_parallel_rsync)
+
+ # rsync to each server
failed_servers = servers.map do |server|
- #p server
- #p server.options
+
# build rsync command
- _paths = yield server
- _source = _paths[:source]
- _user = server.user || fetch(:user, ENV['USER'])
- _dest = SupplyDrop::Rsync.remote_address(_user, server.host, _paths[:dest])
- _opts = {:ssh => ssh_options.merge(server.options[:ssh_options]||{})}
- rsync_cmd = SupplyDrop::Rsync.command(_source, _dest, _opts)
+ paths = yield server
+ remote_user = server.user || fetch(:user, ENV['USER'])
+ rsync_cmd = SupplyDrop::Rsync.command(
+ paths[:source],
+ SupplyDrop::Rsync.remote_address(remote_user, server.host, paths[:dest]),
+ {:ssh => ssh_options.merge(server.options[:ssh_options]||{})}
+ )
# run command
logger.debug rsync_cmd
server.host unless system rsync_cmd
+
end.compact
+
raise "rsync failed on #{failed_servers.join(',')}" if failed_servers.any?
end