From 669bf5aa6f81e0cd1d1956bee6ed26715fb896fa Mon Sep 17 00:00:00 2001 From: elijah Date: Sat, 27 Oct 2012 15:56:48 -0700 Subject: auto run 'git submodule update --init' on leap platform if needed --- lib/leap_cli/commands/deploy.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'lib/leap_cli/commands') diff --git a/lib/leap_cli/commands/deploy.rb b/lib/leap_cli/commands/deploy.rb index 8febe4d..31ae053 100644 --- a/lib/leap_cli/commands/deploy.rb +++ b/lib/leap_cli/commands/deploy.rb @@ -6,6 +6,8 @@ module LeapCli arg_name '' command :deploy do |c| c.action do |global_options,options,args| + init_submodules + nodes = manager.filter!(args) if nodes.size > 1 say "Deploying to these nodes: #{nodes.keys.join(', ')}" @@ -13,6 +15,7 @@ module LeapCli quit! "OK. Bye." end end + ssh_connect(nodes) do |ssh| # directory setup ssh.leap.mkdir("/etc/leap") @@ -46,5 +49,20 @@ module LeapCli end end + private + + def init_submodules + Dir.chdir Path.platform do + statuses = assert_run! "git submodule status" + statuses.strip.split("\n").each do |status_line| + if status_line =~ /^-/ + submodule = status_line.split(' ')[1] + progress "Updating submodule #{submodule}" + assert_run! "git submodule update --init #{submodule}" + end + end + end + end + end end \ No newline at end of file -- cgit v1.2.3