Report abuse

err: Could not retrieve catalog: Failed to parse template ldap/ldap.erb: Could not find value for 'dn_0' at /var/lib/puppet/modules/dist/ldap/manifests/init.pp:10 on node netsvc.lrk.sys
warning: Not using cache on failed catalog

manifest:

class ldap {
    package { 'openldap':
        ensure  =>  latest,
    }

    file { '/etc/openldap/lapd.conf':
        owner   =>  'root',
        group   =>  'root',
        mode    =>  644,
        content =>  template('ldap/ldap.erb'),
        require =>  Package['openldap'],
        }
}

template:

#
# LDAP Defaults
#

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

#BASE   dc=example,dc=com
#URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT  12
#TIMELIMIT  15
#DEREF      never
URI ldap://netsvc.<%= domain %> ldap://netsvc-slave.<%= domain %>
BASE dc=<%= dn_0 %>,dc=<%= dn_1 %>
TLS_CACERTDIR /etc/openldap/cacerts



fact:

# first ldap dn

Facter.add("dn_0") do
    setcode do
        %x{/bin/domainname | cut -d. -f1}.chomp
    end
end