cdist/other/examples/types/__ethz_dinfk_ldap/manifest

40 lines
1.3 KiB
Bash
Executable File

#!/bin/sh
#
# 2011 Steven Armstrong (steven-cdist at armstrong.cc)
#
# This file is part of cdist.
#
# cdist is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# cdist is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with cdist. If not, see <http://www.gnu.org/licenses/>.
#
#
# Configure nss_ldap for a machine at DINFK.
#
ou="$(cat "$__object/parameter/ou")"
ldap_config="/etc/nslcd.conf"
ldap_package="libnss-ldapd"
# Install required packages
__package "$ldap_package" --state installed
# Generate nss-ldap config file from template
mkdir "$__object/files"
. "$__type/files/nslcd.conf.template" > "$__object/files/nslcd.conf"
__file "$ldap_config" --source "$__object/files/nslcd.conf"
# Configure nsswitch to use ldap
require="__package/$ldap_package __file/$ldap_config" \
__file /etc/nsswitch.conf --source "$__type/files/nsswitch.conf"