ldap: Interpolate the backupdir config variable.
authorMatthijs Kooijman <matthijs@stdin.nl>
Thu, 1 Jan 2009 14:20:50 +0000 (15:20 +0100)
committerMatthijs Kooijman <matthijs@stdin.nl>
Thu, 1 Jan 2009 14:46:33 +0000 (15:46 +0100)
examples/example.ldap
handlers/ldap.in

index 66a0aa35cb0ace894cf1fadba893a946a77fa85a..6fec13f50c097f80c8e2e9b85bfa3980b868d5d3 100644 (file)
@@ -7,7 +7,9 @@
 ## ldapadd without being reordered.
 ##
 
-## backupdir (default /var/backups/ldap): the destination for the backups
+## backupdir (default /var/backups/ldap): the destination for the backups.
+## This variable is interpolated, see backup.d (5) for which variables are
+## available.
 # backupdir = /var/backups/ldap
 
 ## conf (default /etc/ldap/slapd.conf): the location of the slapd.conf file.
index 83d6a6f73a2aac025d956ac57694838f5ad0b242..6ef9948cf2f7dc5dd6851ce568d8658c67f731fa 100644 (file)
@@ -56,18 +56,18 @@ make_backup() {
       vexec="$VSERVER $vsname exec"
    fi
 
+   dumpdir=`interpolate "$backupdir" "$vsname"`
+   info "Backing up to dir '$dumpdir'"
+
    [ -f $vdir$conf ] || fatal "slapd config file ($conf) not found"
-   [ -d $backupdir ] || mkdir -p $backupdir
-   [ -d $backupdir ] || fatal "Backup directory '$backupdir'"
+   [ -d $dumpdir ] || mkdir -p $dumpdir
+   [ -d $dumpdir ] || fatal "Backup directory '$dumpdir'"
 
    dbsuffixes=(`@AWK@ 'BEGIN {OFS=":"} /[:space:]*^database[:space:]*\w*/ {db=$2}; /^[:space:]*suffix[:space:]*\w*/ {if (db=="bdb"||db=="hdb"||db="ldbm") print db,$2}' $vdir$conf|@SED@ -e 's/[" ]//g'`)
 
    ## LDIF DUMP
 
    if [ "$ldif" == "yes" ]; then
-      dumpdir="$backupdir"
-      [ -d $dumpdir ] || mkdir -p $dumpdir
-      
       if [ "$databases" == 'all' ]; then
          dbcount=`grep '^database' $vdir$conf | wc -l`
          let "dbcount = dbcount - 1"