|
...
|
...
|
@@ -79,7 +79,7 @@ function cleanup_ldap {
|
|
79
|
79
|
function init_ldap {
|
|
80
|
80
|
local keystone_ldif
|
|
81
|
81
|
|
|
82
|
|
- TMP_LDAP_DIR=$(mktemp -d -t ldap.$$.XXXXXXXXXX)
|
|
|
82
|
+ local tmp_ldap_dir=$(mktemp -d -t ldap.$$.XXXXXXXXXX)
|
|
83
|
83
|
|
|
84
|
84
|
# Remove data but not schemas
|
|
85
|
85
|
clear_ldap_state
|
|
...
|
...
|
@@ -91,17 +91,17 @@ function init_ldap {
|
|
91
|
91
|
printf "Configuring LDAP for $LDAP_BASE_DC\n"
|
|
92
|
92
|
# If BASE_DN is changed, the user may override the default file
|
|
93
|
93
|
if [[ -r $FILES/ldap/${LDAP_BASE_DC}.ldif.in ]]; then
|
|
94
|
|
- keystone_ldif=${LDAP_BASE_DC}.ldif
|
|
|
94
|
+ local keystone_ldif=${LDAP_BASE_DC}.ldif
|
|
95
|
95
|
else
|
|
96
|
|
- keystone_ldif=keystone.ldif
|
|
|
96
|
+ local keystone_ldif=keystone.ldif
|
|
97
|
97
|
fi
|
|
98
|
|
- _ldap_varsubst $FILES/ldap/${keystone_ldif}.in >$TMP_LDAP_DIR/${keystone_ldif}
|
|
99
|
|
- if [[ -r $TMP_LDAP_DIR/${keystone_ldif} ]]; then
|
|
100
|
|
- ldapadd -x -w $LDAP_PASSWORD -D "$LDAP_MANAGER_DN" -H $LDAP_URL -c -f $TMP_LDAP_DIR/${keystone_ldif}
|
|
|
98
|
+ _ldap_varsubst $FILES/ldap/${keystone_ldif}.in >$tmp_ldap_dir/${keystone_ldif}
|
|
|
99
|
+ if [[ -r $tmp_ldap_dir/${keystone_ldif} ]]; then
|
|
|
100
|
+ ldapadd -x -w $LDAP_PASSWORD -D "$LDAP_MANAGER_DN" -H $LDAP_URL -c -f $tmp_ldap_dir/${keystone_ldif}
|
|
101
|
101
|
fi
|
|
102
|
102
|
fi
|
|
103
|
103
|
|
|
104
|
|
- rm -rf TMP_LDAP_DIR
|
|
|
104
|
+ rm -rf $tmp_ldap_dir
|
|
105
|
105
|
}
|
|
106
|
106
|
|
|
107
|
107
|
# install_ldap
|
|
...
|
...
|
@@ -110,7 +110,7 @@ function install_ldap {
|
|
110
|
110
|
echo "Installing LDAP inside function"
|
|
111
|
111
|
echo "os_VENDOR is $os_VENDOR"
|
|
112
|
112
|
|
|
113
|
|
- TMP_LDAP_DIR=$(mktemp -d -t ldap.$$.XXXXXXXXXX)
|
|
|
113
|
+ local tmp_ldap_dir=$(mktemp -d -t ldap.$$.XXXXXXXXXX)
|
|
114
|
114
|
|
|
115
|
115
|
printf "installing OpenLDAP"
|
|
116
|
116
|
if is_ubuntu; then
|
|
...
|
...
|
@@ -119,19 +119,19 @@ function install_ldap {
|
|
119
|
119
|
elif is_fedora; then
|
|
120
|
120
|
start_ldap
|
|
121
|
121
|
elif is_suse; then
|
|
122
|
|
- _ldap_varsubst $FILES/ldap/suse-base-config.ldif.in >$TMP_LDAP_DIR/suse-base-config.ldif
|
|
123
|
|
- sudo slapadd -F /etc/openldap/slapd.d/ -bcn=config -l $TMP_LDAP_DIR/suse-base-config.ldif
|
|
|
122
|
+ _ldap_varsubst $FILES/ldap/suse-base-config.ldif.in >$tmp_ldap_dir/suse-base-config.ldif
|
|
|
123
|
+ sudo slapadd -F /etc/openldap/slapd.d/ -bcn=config -l $tmp_ldap_dir/suse-base-config.ldif
|
|
124
|
124
|
sudo sed -i '/^OPENLDAP_START_LDAPI=/s/"no"/"yes"/g' /etc/sysconfig/openldap
|
|
125
|
125
|
start_ldap
|
|
126
|
126
|
fi
|
|
127
|
127
|
|
|
128
|
128
|
echo "LDAP_PASSWORD is $LDAP_PASSWORD"
|
|
129
|
|
- SLAPPASS=$(slappasswd -s $LDAP_PASSWORD)
|
|
130
|
|
- printf "LDAP secret is $SLAPPASS\n"
|
|
|
129
|
+ local slappass=$(slappasswd -s $LDAP_PASSWORD)
|
|
|
130
|
+ printf "LDAP secret is $slappass\n"
|
|
131
|
131
|
|
|
132
|
132
|
# Create manager.ldif and add to olcdb
|
|
133
|
|
- _ldap_varsubst $FILES/ldap/manager.ldif.in >$TMP_LDAP_DIR/manager.ldif
|
|
134
|
|
- sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f $TMP_LDAP_DIR/manager.ldif
|
|
|
133
|
+ _ldap_varsubst $FILES/ldap/manager.ldif.in >$tmp_ldap_dir/manager.ldif
|
|
|
134
|
+ sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f $tmp_ldap_dir/manager.ldif
|
|
135
|
135
|
|
|
136
|
136
|
# On fedora we need to manually add cosine and inetorgperson schemas
|
|
137
|
137
|
if is_fedora; then
|
|
...
|
...
|
@@ -139,7 +139,7 @@ function install_ldap {
|
|
139
|
139
|
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
|
|
140
|
140
|
fi
|
|
141
|
141
|
|
|
142
|
|
- rm -rf TMP_LDAP_DIR
|
|
|
142
|
+ rm -rf $tmp_ldap_dir
|
|
143
|
143
|
}
|
|
144
|
144
|
|
|
145
|
145
|
# start_ldap() - Start LDAP
|