summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2016-08-29 13:40:01 -0700
committerelijah <elijah@riseup.net>2016-08-29 13:40:01 -0700
commit6dbb8af5eeb0f7bd0300feb3a564011be1f08d93 (patch)
tree8af277b18791a97efa880b4075848ab734e14fb3 /lib
parentad5acc562718df0505a318907e26185c8b91a284 (diff)
fix bug when nodes have bad tags
Diffstat (limited to 'lib')
-rw-r--r--lib/leap_cli/config/manager.rb11
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/leap_cli/config/manager.rb b/lib/leap_cli/config/manager.rb
index b42f1ae0..e39334c8 100644
--- a/lib/leap_cli/config/manager.rb
+++ b/lib/leap_cli/config/manager.rb
@@ -324,8 +324,8 @@ module LeapCli
node['tags'].each do |node_tag|
tag = node_env.tags[node_tag]
if tag.nil?
- msg = 'in node "%s": the tag "%s" does not exist.' % [node['name'], node_tag]
- log 0, :error, msg
+ msg = 'in node `%s`: the tag "%s" does not exist!' % [node['name'], node_tag]
+ LeapCli.log 0, :error, msg
raise LeapCli::ConfigError.new(node, "error " + msg) if throw_exceptions
else
new_node.deep_merge!(tag)
@@ -384,8 +384,11 @@ module LeapCli
end
if node['tags']
node['tags'].to_a.each do |node_tag|
- env(node.environment).tags[node_tag].node_list.add(node.name, node)
- env('_all_').tags[node_tag].node_list.add(node.name, node)
+ if env(node.environment).tags[node_tag]
+ # if tag exists
+ env(node.environment).tags[node_tag].node_list.add(node.name, node)
+ env('_all_').tags[node_tag].node_list.add(node.name, node)
+ end
end
end
if node.name == 'default' || environment_names.include?(node.name)