X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fentropykey%2Fmanifests%2Finit.pp;h=6d327fc6dfc0cc5db92f692f0e3139c6bcebf459;hb=21edc51f3c8a84ec014b0f0bffc8ebd972b6b2f2;hp=13de3e4ea915e9c1006a825c4f9f1eb704839c33;hpb=7af611e0182886baa11ae172e741d5e8eb2d2ce4;p=mirror%2Fdsa-puppet.git diff --git a/modules/entropykey/manifests/init.pp b/modules/entropykey/manifests/init.pp index 13de3e4ea..6d327fc6d 100644 --- a/modules/entropykey/manifests/init.pp +++ b/modules/entropykey/manifests/init.pp @@ -1,80 +1,18 @@ -class entropykey::provider { - package { - "ekeyd": ensure => installed; - } - - file { - "/etc/entropykey/ekeyd.conf": - source => "puppet:///modules/entropykey/ekeyd.conf", - notify => Exec['restart_ekeyd'], - require => [ Package['ekeyd'] ], - ; - } - - exec { - "restart_ekeyd": - command => "true && cd / && env -i /etc/init.d/ekeyd restart", - require => [ File['/etc/entropykey/ekeyd.conf'] ], - refreshonly => true, - ; - } - - include "stunnel4" - stunnel4::stunnel_server { - "ekeyd": - accept => 18888, - connect => "127.0.0.1:8888", - ; - } -} - -class entropykey::local_consumer { - package { - "ekeyd-egd-linux": ensure => installed; - } - - file { - "/etc/default/ekeyd-egd-linux": - source => "puppet:///modules/entropykey/ekeyd-egd-linux", - notify => Exec['restart_ekeyd-egd-linux'], - require => [ Package['ekeyd-egd-linux'] ], - ; - } - - exec { - "restart_ekeyd-egd-linux": - command => "true && cd / && env -i /etc/init.d/ekeyd-egd-linux restart", - require => [ File['/etc/default/ekeyd-egd-linux'] ], - refreshonly => true, - ; - } -} - -class entropykey::remote_consumer inherits entropykey::local_consumer { - include "stunnel4" - stunnel4::stunnel_client { - "ekeyd": - accept => "127.0.0.1:8888", - connecthost => "${entropy_provider}", - connectport => 18888, - ; - } -} - class entropykey { - case getfromhash($nodeinfo, 'entropy_key') { - true: { include entropykey::provider } - } - $entropy_provider = entropy_provider($fqdn, $nodeinfo) - case $entropy_provider { - false: {} - local: { include entropykey::local_consumer } - default: { include entropykey::remote_consumer } - } + if getfromhash($site::nodeinfo, 'entropy_key') { + include entropykey::provider + } + + $entropy_provider = entropy_provider($::fqdn, $site::nodeinfo) + case $entropy_provider { + false: {} + local: { include entropykey::local_consumer } + default: { + class { 'entropykey::remote_consumer': + entropy_provider => $entropy_provider, + } + } + } } - -# vim:set et: -# vim:set sts=4 ts=4: -# vim:set shiftwidth=4: