From 3ddd8e93a161d748e5703b0856cb2eded0dd19c5 Mon Sep 17 00:00:00 2001 From: elijah Date: Wed, 18 Jun 2014 23:59:05 -0700 Subject: added support for 'control files', files like the .json configuration files but contain arbitrary ruby code evaluated in the context of the node. --- lib/leap_cli/config/object_list.rb | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'lib/leap_cli/config/object_list.rb') diff --git a/lib/leap_cli/config/object_list.rb b/lib/leap_cli/config/object_list.rb index e975a5f..cd69d9b 100644 --- a/lib/leap_cli/config/object_list.rb +++ b/lib/leap_cli/config/object_list.rb @@ -20,6 +20,8 @@ module LeapCli # If the key is a hash, we treat it as a condition and filter all the Config::Objects using the condition. # A new ObjectList is returned. # + # If the key is an array, it is treated as an array of node names + # # Examples: # # nodes['vpn1'] @@ -64,6 +66,11 @@ module LeapCli end end results + elsif key.is_a? Array + key.inject(Config::ObjectList.new) do |list, node_name| + list[node_name] = super(node_name.to_s) + list + end else super key.to_s end -- cgit v1.2.3