]> gitweb.fluxo.info Git - leap/leap_cli.git/commitdiff
replace local and production values with 'environment'.
authorelijah <elijah@riseup.net>
Sat, 9 Mar 2013 07:08:42 +0000 (23:08 -0800)
committerelijah <elijah@riseup.net>
Sat, 9 Mar 2013 07:08:42 +0000 (23:08 -0800)
lib/leap_cli/commands/vagrant.rb
lib/leap_cli/config/object.rb

index 3526d2373542e8173dc5a82c323da601f6f2f82f..f7505f2e1f49838777d91e4ffe75f395ad423d6d 100644 (file)
@@ -85,7 +85,7 @@ module LeapCli; module Commands
     if args.empty?
       nodes = [""]
     else
-      nodes = manager.filter(args)[:local => true].field(:name)
+      nodes = manager.filter(args)[:environment => "local"].field(:name)
     end
     if nodes.any?
       vagrant_dir = File.dirname(Path.named_path(:vagrantfile))
@@ -138,7 +138,7 @@ module LeapCli; module Commands
   end
 
   def pick_next_vagrant_ip_address
-    taken_ips = manager.nodes[:local => true].field(:ip_address)
+    taken_ips = manager.nodes[:environment => "local"].field(:ip_address)
     if taken_ips.any?
       highest_ip = taken_ips.map{|ip| IPAddr.new(ip)}.max
       new_ip = highest_ip.succ
index e4fe6195523dbd17e39e631a50c3cffbe5141e5e..4f5afe1866be6a5f0847e6e5623e798678832fd3 100644 (file)
@@ -124,8 +124,8 @@ module LeapCli
           # merge hashes
           if old_value.is_a?(Hash) || new_value.is_a?(Hash)
             value = Config::Object.new(@manager, @node)
-            old_value.is_a?(Hash) ? value.deep_merge!(old_value) : (value[key] = old_value if old_value.any?)
-            new_value.is_a?(Hash) ? value.deep_merge!(new_value, prefer_self) : (value[key] = new_value if new_value.any?)
+            old_value.is_a?(Hash) ? value.deep_merge!(old_value) : (value[key] = old_value if !old_value.nil?)
+            new_value.is_a?(Hash) ? value.deep_merge!(new_value, prefer_self) : (value[key] = new_value if !new_value.nil?)
 
           # merge arrays
           elsif old_value.is_a?(Array) || new_value.is_a?(Array)
@@ -184,10 +184,10 @@ module LeapCli
       end
 
       #
-      # returns a list of nodes that match similar production level (production, local, development, etc)
+      # returns a list of nodes that match the same environment
       #
       def nodes_like_me
-        nodes[:production => @node.production, :local => @node.local, :development => @node.development]
+        nodes[:environment => @node.environment]
       end
 
       class FileMissing < Exception