]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
ldap: Fix LDAP setup secripts to correctly report failures
authorArran Cudbard-Bell <a.cudbardb@freeradius.org>
Sat, 20 May 2023 17:37:24 +0000 (13:37 -0400)
committerArran Cudbard-Bell <a.cudbardb@freeradius.org>
Sat, 20 May 2023 17:37:24 +0000 (13:37 -0400)
scripts/ci/389ds-setup.sh
scripts/ci/ldap-setup.sh
scripts/ci/ldap2-setup.sh

index d02b878847952211c4da9a5a2cd846dfd9a96a0d..9964d4230345262afcab5ec29f7884f02392ca1f 100755 (executable)
@@ -42,7 +42,8 @@ while [ $count -lt 10 ] ; do
     fi
 done
 
-if [ $? -ne 0 ]; then
+# Exit code gets overwritten, so we check for failure using count
+if [ $count -eq 10 ]; then
        echo "Error configuring server"
        exit 1
 fi
@@ -57,7 +58,7 @@ fi
 #  List databases:
 #    dsconf -D 'cn=Directory Manager' -w secret123 ldap://threeds:3389/ backend suffix list
 #    dc=example,dc=com (localhost)
-# 
+#
 #  Create some basic data in the directory:
 #    dsidm -D 'cn=Directory Manager' -w secret123 ldap://threeds:3389/ -b 'dc=example,dc=com' initialise
 #
@@ -66,7 +67,7 @@ fi
 #
 #  Set user password:
 #    dsidm -D 'cn=Directory Manager' -w secret123 ldap://threeds:3389/ -b 'dc=example,dc=com' account reset_password uid=manager,ou=people,dc=example,dc=com secret123
-# 
+#
 #
 #  Give permissions for user to edit anything:
 #    cat <<EOF > permissions.ldif
@@ -75,9 +76,9 @@ fi
 #    add: aci
 #    aci: (targetattr="*")(target="ldap:///dc=example,dc=com")(version 3.0; acl "allow whatever"; allow (all)(userdn="ldap:///uid=manager,ou=people,dc=example,dc=com");)
 #    EOF
-# 
+#
 #    ldapmodify -D 'cn=Directory Manager' -w secret123 -H "ldap://threeds:3389/" -x -f permissions.ldif
-# 
+#
 #  List ACLs:
 #    ldapsearch -D 'cn=Directory Manager' -w secret123 -H "ldap://threeds:3389/" -x -b 'dc=example,dc=com' '(aci=*)' aci
-# 
+#
index d49e80d24136cd937b897eadb8361dea9602c854..f624154bcd4fbed3da4f695bcd2ee02540615fbd 100755 (executable)
@@ -29,7 +29,10 @@ else
 fi
 
 # Start slapd
-slapd -d any -h "ldap://127.0.0.1:3890/" -f scripts/ci/ldap/slapd.conf 2>&1 > /tmp/slapd.log &
+slapd -d any -h "ldap://127.0.0.1:3890/" -f scripts/ci/ldap/slapd.conf 2>&1 > /tmp/ldap/slapd.log &
+
+# Wait for LDAP to start
+sleep 1
 
 # Add test data
 count=0
@@ -42,8 +45,9 @@ while [ $count -lt 10 ] ; do
     fi
 done
 
-if [ $? -ne 0 ]; then
+# Exit code gets overwritten, so we check for failure using count
+if [ $count -eq 10 ]; then
        echo "Error configuring server"
-    cat /tmp/slapd.log
+       cat /tmp/ldap/slapd.log
        exit 1
 fi
index 18b74e30e6a42207eb0602af48505b4ab3f4a663..d5cce24c22c891990aba3e3c38e829814ebc8ce7 100755 (executable)
@@ -42,7 +42,7 @@ cp raddb/certs/rsa/server.pem /tmp/ldap2/certs/servercert.pem
 openssl rsa -in raddb/certs/rsa/server.key -out /tmp/ldap2/certs/serverkey.pem -passin pass:whatever
 
 # Start slapd
-slapd -h "ldap://127.0.0.1:3891/ ldaps://127.0.0.1:6360" -f scripts/ci/ldap/slapd2.conf &
+slapd -h "ldap://127.0.0.1:3891/ ldaps://127.0.0.1:6360" -f scripts/ci/ldap/slapd2.conf 2>&1 > /tmp/ldap/slapd.log &
 
 # Wait for LDAP to start
 sleep 1
@@ -58,8 +58,9 @@ while [ $count -lt 10 ] ; do
     fi
 done
 
-if [ $? -ne 0 ]; then
-        echo "Error configuring server"
-        exit 1
+# Exit code gets overwritten, so we check for failure using count
+if [ $count -eq 10 ]; then
+       echo "Error configuring server"
+       cat /tmp/ldap/slapd.log
+       exit 1
 fi
-