Hello,

Puppet-3.6 here, although I think this has been bothering me since 3.4 or 3.5.
(Waiting on PUP-3190 for 3.7). I have this seemingly innocuous class:

-------------8<------------------------------------------
class ldap::slapd::nssov {

        include ldap::slapd::rfc2307bis

        # FIXME
        file_line {"/etc/default/slapd::eww":
                path => "/etc/default/slapd",
                line => "mkdir -p /var/run/nslcd ;
                        chown openldap:openldap /var/run/nslcd",
                require => Package["slapd"],
                notify  => Service["slapd"],
        }

        package {["libnss-ldapd", "libpam-ldapd", "ldap-auth-config"]:
                ensure => installed,
        }
        package {["nscd", "libnss-ldap", "libpam-ldap"]:
                ensure => purged,
        }

        service {"nslcd":
                ensure  => stopped,
                enable  => false,
                require => Package["libnss-ldapd"],
        }

        if !($ldap_nss_passwd and $ldap_nss_shadow and $ldap_nss_group) {
                exec {"auth-client-config -t nss -p lac_ldap":
                        require => Package["ldap-auth-config"],
                }
        }
}
-------------8<------------------------------------------

Without fail, Exec["auth-client-config -t nss -p lac_ldap"] is executing before
Package["ldap-auth-config"]. I don't have issues like this anywhere else, so
what am I missing?

It shouldn't matter because the Exec is indeed part of the catalog, but
$ldap_nss_{passwd,shadow,group} are boolean facts, I have stringify turned off.

Thanks!

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to