]> git.donarmstrong.com Git - dsa-puppet.git/commitdiff
better way of being defensive
authorStephen Gran <steve@lobefin.net>
Sun, 24 Jun 2012 09:02:55 +0000 (10:02 +0100)
committerStephen Gran <steve@lobefin.net>
Sun, 24 Jun 2012 09:02:55 +0000 (10:02 +0100)
Signed-off-by: Stephen Gran <steve@lobefin.net>
modules/ssh/templates/authorized_keys.erb

index 2b00e56f883a651ba296aa5ae82fee9c76a1b31f..eb104389a61b17a58a2671e5d39ee965072a3514 100644 (file)
@@ -22,17 +22,15 @@ localkeys
 <%=
   ganetikeys = []
   allnodeinfo = scope.lookupvar('site::allnodeinfo')
-  if scope.lookupvar('::cluster_nodes')
-    scope.lookupvar('::cluster_nodes').split.sort.each do |node|
-      if allnodeinfo.has_key?(node)
-        ganetikeys << "# for ganeti: #{allnodeinfo[node]['hostname'].to_s}"
-        ganetikeys << "from=\"#{allnodeinfo[node]['ipHostNumber'].join(',')}\" #{allnodeinfo[node]['sshRSAHostKey'].to_s}"
-      else
-        ganetikeys << "# host #{node} not found in allnodeinfo"
-      end
+  scope.lookupvar('::cluster_nodes').to_a.flatten.split.sort.each do |node|
+    if allnodeinfo.has_key?(node)
+      ganetikeys << "# for ganeti: #{allnodeinfo[node]['hostname'].to_s}"
+      ganetikeys << "from=\"#{allnodeinfo[node]['ipHostNumber'].join(',')}\" #{allnodeinfo[node]['sshRSAHostKey'].to_s}"
+    else
+      ganetikeys << "# host #{node} not found in allnodeinfo"
     end
-    ganetikeys.join("\n");
   end
+  ganetikeys.join("\n");
 %>
 #
 # DSA