From 011103a0e7c70aebaa4e348d7cf9e62436ecbe7c Mon Sep 17 00:00:00 2001 From: "Endi S. Dewata" Date: Tue, 5 Oct 2010 16:31:20 -0400 Subject: WIP --- ldap/admin/src/scripts/DSMigration.pm.in | 10 +++++++++- ldap/admin/src/scripts/Migration.pm.in | 13 +++++++++++-- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/ldap/admin/src/scripts/DSMigration.pm.in b/ldap/admin/src/scripts/DSMigration.pm.in index 38407ba2..53e06303 100644 --- a/ldap/admin/src/scripts/DSMigration.pm.in +++ b/ldap/admin/src/scripts/DSMigration.pm.in @@ -1042,6 +1042,13 @@ sub migrateDSInstance { return @errs; } + my $setup = new Setup($mig->{res}); + $setup->{update} = 1; + + if (@errs = updateDS($setup)) { + return @errs; + } + # next, the databases if (@errs = migrateDatabases($mig, $inst, $src, $dest)) { return @errs; @@ -1079,6 +1086,7 @@ sub migrateDS { # for each instance foreach my $inst (@{$mig->{instances}}) { +print "Migrating $inst.\n"; if (-f "$mig->{configdir}/$inst/dse.ldif") { $mig->msg($WARN, 'instance_already_exists', "$mig->{configdir}/$inst/dse.ldif"); next; @@ -1095,7 +1103,7 @@ sub migrateDS { # instance on the dest # extract the information needed for ds_newinst.pl - my $oldconfigdir = "$mig->{oldsroot}/$inst/config"; + my $oldconfigdir = "$mig->{oldsroot}/$inst"; my $inf = createInfFromConfig($oldconfigdir, $inst, \@errs); if (@errs) { $mig->msg(@errs); diff --git a/ldap/admin/src/scripts/Migration.pm.in b/ldap/admin/src/scripts/Migration.pm.in index 66618c8b..23ed2d05 100644 --- a/ldap/admin/src/scripts/Migration.pm.in +++ b/ldap/admin/src/scripts/Migration.pm.in @@ -233,8 +233,17 @@ sub init { # get list of instances to migrate if (! @instances) { # an instance must be a directory called $oldsroot/slapd-something and the file - # $oldsroot/slapd-something/config/dse.ldif must exist - @instances = grep { -d && -f "$_/config/dse.ldif" && ($_ =~ s,$self->{oldsroot}/,,) } + # $oldsroot/slapd-something/dse.ldif must exist +print "oldsroot: $self->{oldsroot}\n"; +print "actualsroot: $self->{actualsroot}\n"; + +my $files = glob("$self->{oldsroot}/slapd-*"); +print "files: $files\n"; + +foreach $file (grep { -d && -f "$_/dse.ldif" } $files) { +print " - : $file\n"; +} + @instances = grep { -d && -f "$_/dse.ldif" && ($_ =~ s,$self->{oldsroot}/,,) } glob("$self->{oldsroot}/slapd-*"); } -- cgit