| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- #!@perlexec@
- # BEGIN COPYRIGHT BLOCK
- # Copyright (C) 2013 Red Hat, Inc.
- # All rights reserved.
- #
- # License: GPL (version 3 or any later version).
- # See LICENSE for details.
- # END COPYRIGHT BLOCK
- #
- use lib qw(@perlpath@);
- use strict;
- use Setup;
- use SetupLog;
- use Inf;
- use Resource;
- use DialogManager;
- use DSUtil;
- use DSCreate;
- use DSUpdate;
- my $res = new Resource("@propertydir@/setup-ds.res");
- my $setup = new Setup($res);
- if (!$setup->{silent}) {
- my $dialogmgr = new DialogManager($setup, $res, $TYPICAL);
- my @dialogs;
- if ($setup->{update}) {
- require DSUpdateDialogs;
- push @dialogs, DSUpdateDialogs->getDialogs();
- } else {
- require SetupDialogs;
- require DSDialogs;
- push @dialogs, SetupDialogs->getDialogs();
- push @dialogs, DSDialogs->getDialogs();
- }
- $dialogmgr->addDialog(@dialogs);
- my $rc = $dialogmgr->run();
- if ($rc) {
- $setup->doExit();
- }
- }
- my @errs;
- if ($setup->{update}) {
- @errs = updateDS($setup);
- } else {
- @errs = createDSInstance($setup->{inf});
- }
- if (@errs) {
- $setup->msg(@errs);
- if ($setup->{update}) {
- $setup->msg($FATAL, 'error_updating');
- } else {
- if($setup->{inf}->{slapd}->{ServerIdentifier} eq "admin"){
- # 'admin' is reserved for the admin server - log the correct error
- $setup->msg($FATAL, 'error_creating_dsinstance_adminid',
- $setup->{inf}->{slapd}->{ServerIdentifier});
- } else {
- $setup->msg($FATAL, 'error_creating_dsinstance',
- $setup->{inf}->{slapd}->{ServerIdentifier});
- }
- }
- $setup->doExit(1);
- } else {
- if ($setup->{update}) {
- $setup->msg('update_successful');
- } else {
- $setup->msg('created_dsinstance',
- $setup->{inf}->{slapd}->{ServerIdentifier});
- }
- }
- $setup->doExit(0);
- END {
- if ($setup and $setup->{keep}) {
- $setup->{inf}->write("__temp__");
- }
- }
- # emacs settings
- # Local Variables:
- # mode:perl
- # indent-tabs-mode: nil
- # tab-width: 4
- # End:
|