diff options
| author | David Boreham <dboreham@redhat.com> | 2005-01-28 20:36:06 +0000 |
|---|---|---|
| committer | David Boreham <dboreham@redhat.com> | 2005-01-28 20:36:06 +0000 |
| commit | b323e287076458e646831a3b5cec0262ac60c5fd (patch) | |
| tree | ebce2520494204a3feef95e859b896fa3e8627a6 /ldap/admin/src/scripts | |
| parent | d70d772e768245c06466a68fc3f32739692c20cc (diff) | |
| download | ds-b323e287076458e646831a3b5cec0262ac60c5fd.tar.gz ds-b323e287076458e646831a3b5cec0262ac60c5fd.tar.xz ds-b323e287076458e646831a3b5cec0262ac60c5fd.zip | |
Add support for filesystem-based replica initialization.
Diffstat (limited to 'ldap/admin/src/scripts')
| -rw-r--r-- | ldap/admin/src/scripts/template-bak2db.pl | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/ldap/admin/src/scripts/template-bak2db.pl b/ldap/admin/src/scripts/template-bak2db.pl index 10cb99bc..cdb51c74 100644 --- a/ldap/admin/src/scripts/template-bak2db.pl +++ b/ldap/admin/src/scripts/template-bak2db.pl @@ -16,11 +16,13 @@ sub usage { print(STDERR " : -j filename - Read Directory Manager's password from file\n"); print(STDERR " : -a dirname - backup directory\n"); print(STDERR " : -t dbtype - database type (default: ldbm database)\n"); + print(STDERR " : -n backend - name of backend instance to restore\n"); print(STDERR " : -v - verbose\n"); } $taskname = ""; $archivedir = ""; $dbtype = "ldbm database"; +$instance = ""; $dsroot = "{{DS-ROOT}}"; $mydsroot = "{{MY-DS-ROOT}}"; $verbose = 0; @@ -39,6 +41,8 @@ while ($i <= $#ARGV) { $i++; $passwdfile = $ARGV[$i]; } elsif ("$ARGV[$i]" eq "-t") { # database type $i++; $dbtype = $ARGV[$i]; + } elsif ("$ARGV[$i]" eq "-n") { # backend instance name + $i++; $instance = $ARGV[$i]; } elsif ("$ARGV[$i]" eq "-v") { # verbose $verbose = 1; } else { @@ -75,12 +79,20 @@ $taskname = "restore_${yr}_${mn}_${dy}_${h}_${m}_${s}"; if ($archivedir eq "") { &usage; exit(1); } +use File::Spec; +$isabs = File::Spec->file_name_is_absolute( $archivedir ); +if (!$isabs) { + $archivedir = File::Spec->rel2abs( $archivedir ); +} $dn = "dn: cn=$taskname, cn=restore, cn=tasks, cn=config\n"; $misc = "changetype: add\nobjectclass: top\nobjectclass: extensibleObject\n"; $cn = "cn: $taskname\n"; +if ($instance ne "") { + $nsinstance = "nsInstance: ${instance}\n"; +} $nsarchivedir = "nsArchiveDir: $archivedir\n"; $nsdbtype = "nsDatabaseType: $dbtype\n"; -$entry = "${dn}${misc}${cn}${nsarchivedir}${nsdbtype}"; +$entry = "${dn}${misc}${cn}${nsinstance}${nsarchivedir}${nsdbtype}"; $vstr = ""; if ($verbose != 0) { $vstr = "-v"; } chdir("$dsroot{{SEP}}shared{{SEP}}bin"); |
