]> Frank Brehm's Git Trees - pixelpark/ldap-migration.git/commitdiff
Updating mailhost in after-migration.sh
authorFrank Brehm <frank.brehm@pixelpark.com>
Thu, 28 Oct 2021 13:04:32 +0000 (15:04 +0200)
committerFrank Brehm <frank.brehm@pixelpark.com>
Thu, 28 Oct 2021 13:04:32 +0000 (15:04 +0200)
after-migration.sh

index 9ac83e301f54d2b618894d30d05233befd629663..e6a2f5fab7b0cbbdb47ed8fec018c78f4be5617c 100755 (executable)
@@ -121,16 +121,33 @@ update_passwd_fbrehm() {
 update_mailhost() {
 
     local dn="$1"
-    local old_mailhost=
+    # local old_mailhost=
+    local cmd=
 
-    local cmd="ldapsearch -x -LLL -o ldif-wrap=no -H '${LDAP_URL}' "
-    cmd+="-b \"${dn}\" -x -D \"${LDAP_USR}\" -y \"${LDAP_PWD_FILE}\" "
-    cmd+="\"(objectClass=*)\" mailHost | grep -i 'mailHost:' | sed 's/^mailHost:[      ]*//i'"
+    # cmd="ldapsearch -x -LLL -o ldif-wrap=no -H '${LDAP_URL}' "
+    # cmd+="-b \"${dn}\" -x -D \"${LDAP_USR}\" -y \"${LDAP_PWD_FILE}\" "
+    # cmd+="\"(objectClass=*)\" mailHost | grep -i 'mailHost:' | sed 's/^mailHost:[    ]*//i'"
+    # old_mailhost=$( eval ${cmd} )
 
-    old_mailhost=$( eval ${cmd} )
-    echo " * ${dn}"
-    echo "   '${old_mailhost}' => '${NEW_IMAP_SERVER}'"
+    echo " * '${dn}'"
+    echo "   '${OLD_IMAP_SERVER}'      => '${NEW_IMAP_SERVER}'"
 
+    cat > "${LDIF_FILE}" <<-EOF
+               dn: ${dn}
+               changetype: modify
+               replace: mailHost
+               mailHost: ${NEW_IMAP_SERVER}
+               -
+               EOF
+    # cat "${LDIF_FILE}"
+
+    cmd="ldapmodify -H \"${LDAP_URL}\" -x -D \"${LDAP_USR}\" -y \"${LDAP_PWD_FILE}\""
+    cmd+=" -f \"$( readlink -f "${LDIF_FILE}" )\""
+    # echo
+    # echo "Executing: ${cmd}"
+    # echo
+
+    # eval $cmd
 }
 
 #------------------------------------------------
@@ -158,8 +175,9 @@ update_all_mailhosts() {
         else
             dn=$( echo "${line}" | sed -e 's/^dn:[     ]*//' )
         fi
+        dn=$( echo "${dn}" | sed -e 's/^[      ]*//' -e 's/[   ]*$//' )
         # echo " * ${dn}"
-        dns+=( " ${dn}" )
+        dns+=( "${dn}" )
     done
 
     IFS="${oifs}"