]> gitweb.fluxo.info Git - puppet-monkeysphere.git/commitdiff
adding ability to specify a key server.
authorJamie McClelland <jm@mayfirst.org>
Sat, 19 Mar 2011 05:17:01 +0000 (01:17 -0400)
committerJamie McClelland <jm@mayfirst.org>
Sat, 19 Mar 2011 05:17:01 +0000 (01:17 -0400)
manifests/init.pp

index d9dc98e37d28e8d24f55e6fc6950a9857df96d1c..2d4bd61cc4e7fe3ee4129b8d1b1957ef775003b9 100644 (file)
@@ -25,10 +25,18 @@ class monkeysphere {
 
 }
 
+class monkeysphere::defaults inherits monkeysphere {
+  $keyserver = $monkeysphere_keyserver ? {
+    '' => "pool.sks-keyservers.net",
+    default => $monkeysphere_keyserver,
+  }
+}
+
 class monkeysphere::import_key inherits monkeysphere {
   $key = "ssh://${fqdn}"
   # Server host key import 
   exec { "/usr/sbin/monkeysphere-host import-key /etc/ssh/ssh_host_rsa_key $key":
+    alias => "monkeysphere-import-key",
          user    => "root",
          unless => "/usr/sbin/monkeysphere-host s | grep $key"
   }
@@ -36,6 +44,7 @@ class monkeysphere::import_key inherits monkeysphere {
 
 # Server host key publication
 class monkeysphere::publish_key inherits monkeysphere { 
+  include monkeysphere::defaults
   $no_publish = $monkeysphere_no_publish ? {
     '' => '',
     default => $monkeysphere_no_publish
@@ -44,7 +53,7 @@ class monkeysphere::publish_key inherits monkeysphere {
     info("Not publishing $fqdn monkeysphere key")
   } else {
     exec { "/usr/sbin/monkeysphere-host publish-key":
-      environment => "MONKEYSPHERE_PROMPT=false",
+      environment => [ "MONKEYSPHERE_PROMPT=false", "MONKEYSPHERE_KEYSERVER=$keyserver" ],
       user    => "root",
     }
   }
@@ -52,10 +61,11 @@ class monkeysphere::publish_key inherits monkeysphere {
 
 # add certifiers
 define monkeysphere::add_certifiers( $keyid ) {
+  include monkeysphere::defaults
   exec { "/usr/sbin/monkeysphere-authentication add-id-certifier $keyid":
-         environment => "MONKEYSPHERE_PROMPT=false",
+         environment => [ "MONKEYSPHERE_PROMPT=false", "MONKEYSPHERE_KEYSERVER=$keyserver" ],
          user    => "root",
-         require => [ Package["monkeysphere"] ],
+         require => [ Package["monkeysphere"], Exec["monkeysphere-import-key"] ],
          unless => "/usr/sbin/monkeysphere-authentication list-id-certifiers | grep $keyid"
   }
 }
@@ -77,6 +87,7 @@ define monkeysphere::root_authorized_user_ids( $file ) {
       recurse => true,
   }
   exec { "/usr/sbin/monkeysphere-authentication update-users root":
+         environment => "MONKEYSPHERE_KEYSERVER=$keyserver",
          user    => "root",
          require => [ Package["monkeysphere"] ],
     onlyif => "/usr/bin/test /root/.monkeysphere/authorized_user_ids -nt /var/lib/monkeysphere/authorized_keys/root"