diff options
Diffstat (limited to 'modules/openldap/manifests')
| -rw-r--r-- | modules/openldap/manifests/config.pp | 2 | ||||
| -rw-r--r-- | modules/openldap/manifests/init.pp | 14 | ||||
| -rw-r--r-- | modules/openldap/manifests/master.pp | 16 | ||||
| -rw-r--r-- | modules/openldap/manifests/slave.pp | 6 | ||||
| -rw-r--r-- | modules/openldap/manifests/slave_instance.pp | 4 | ||||
| -rw-r--r-- | modules/openldap/manifests/var.pp | 3 |
6 files changed, 32 insertions, 13 deletions
diff --git a/modules/openldap/manifests/config.pp b/modules/openldap/manifests/config.pp index 6f364ffc..336f8a23 100644 --- a/modules/openldap/manifests/config.pp +++ b/modules/openldap/manifests/config.pp @@ -2,6 +2,6 @@ define openldap::config($content) { file { $name: require => Package['openldap-servers'], content => $content, - notify => Exec['/etc/init.d/ldap check'], + notify => Exec["slaptest"], } } diff --git a/modules/openldap/manifests/init.pp b/modules/openldap/manifests/init.pp index 35455d1a..34a214a2 100644 --- a/modules/openldap/manifests/init.pp +++ b/modules/openldap/manifests/init.pp @@ -1,21 +1,23 @@ class openldap { + include openldap::var + package { 'openldap-servers': } - service { 'ldap': + service { $openldap::var::service: subscribe => Package['openldap-servers'], - require => Openssl::Self_signed_cert["ldap.$::domain"], + require => Openssl::Self_signed_cert["ldap.${::domain}"], } - exec { '/etc/init.d/ldap check': + exec { "slaptest": refreshonly => true, - notify => Service['ldap'], + notify => Service[$openldap::var::service], } file { '/etc/ssl/openldap/': ensure => directory, } - openssl::self_signed_cert{ "ldap.$::domain": + openssl::self_signed_cert{ "ldap.${::domain}": directory => '/etc/ssl/openldap/', } @@ -26,5 +28,7 @@ class openldap { content => ''; '/etc/sysconfig/ldap': content => ''; + '/etc/sysconfig/slapd': + content => ''; } } diff --git a/modules/openldap/manifests/master.pp b/modules/openldap/manifests/master.pp index 730feb19..53122628 100644 --- a/modules/openldap/manifests/master.pp +++ b/modules/openldap/manifests/master.pp @@ -1,4 +1,6 @@ class openldap::master inherits openldap { + include openldap::var + Openldap::Config['/etc/openldap/mandriva-dit-access.conf'] { content => template('openldap/mandriva-dit-access.conf'), } @@ -10,7 +12,7 @@ class openldap::master inherits openldap { group => 'ldap', owner => 'ldap', require => Package['openldap-servers'], - before => Service['ldap'], + before => Service[$openldap::var::service], } Openldap::Config['/etc/openldap/slapd.conf'] { @@ -21,12 +23,20 @@ class openldap::master inherits openldap { content => template('openldap/ldap.sysconfig'), } + Openldap::Config['/etc/sysconfig/slapd'] { + content => template('openldap/slapd.sysconfig'), + } + + host { "ldap.${::domain}": + ip => '127.0.0.1', + } + if $::environment == 'test' { # if we are in a test vm, we need to fill the directory # with data package { 'openldap-clients': } - mga-common::local_script { 'init_ldap.sh': + mga_common::local_script { 'init_ldap.sh': content => template('openldap/init_ldap.sh'), require => Package['openldap-clients'], } @@ -34,7 +44,7 @@ class openldap::master inherits openldap { exec { 'init_ldap.sh': # taken arbitrary among all possible files creates => '/var/lib/ldap/objectClass.bdb', - require => Local_script['init_ldap.sh'], + require => Mga_common::Local_script['init_ldap.sh'], } } } diff --git a/modules/openldap/manifests/slave.pp b/modules/openldap/manifests/slave.pp index a3559ef8..ba0cfb9d 100644 --- a/modules/openldap/manifests/slave.pp +++ b/modules/openldap/manifests/slave.pp @@ -2,7 +2,7 @@ class openldap::slave($rid) inherits openldap { @@openldap::exported_slave { $rid: } - $sync_password = extlookup("ldap_syncuser-$::hostname",'x') + $sync_password = extlookup("ldap_syncuser-${::hostname}",'x') # same access rights as master Openldap::Config['/etc/openldap/mandriva-dit-access.conf'] { @@ -16,4 +16,8 @@ class openldap::slave($rid) inherits openldap { Openldap::Config['/etc/sysconfig/ldap'] { content => template('openldap/ldap.sysconfig'), } + + Openldap::Config['/etc/sysconfig/slapd'] { + content => template('openldap/slapd-slave.sysconfig'), + } } diff --git a/modules/openldap/manifests/slave_instance.pp b/modules/openldap/manifests/slave_instance.pp index a12771a3..fbf998c6 100644 --- a/modules/openldap/manifests/slave_instance.pp +++ b/modules/openldap/manifests/slave_instance.pp @@ -1,10 +1,8 @@ # TODO create the user for sync in ldap -# this define is mainly syntaxic sugar +# this define is mainly syntactic sugar define openldap::slave_instance($rid) { include openldap class { 'openldap::slave': rid => $rid, } } - - diff --git a/modules/openldap/manifests/var.pp b/modules/openldap/manifests/var.pp new file mode 100644 index 00000000..d6947eb8 --- /dev/null +++ b/modules/openldap/manifests/var.pp @@ -0,0 +1,3 @@ +class openldap::var { + $service = 'slapd' +} |
