The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Apache::Voodoo::Install::Updater - Update xml processor

SYNOPSIS

This package provides the internal methods use by voodoo-control that do pre/post/upgrade commands as specified by the various .xml files in an application. It's not intended to be use directly by end users.

USAGE

new( %options )

Creates a new updater object with given configuration options. It assumes that the files for the application have already been installed or exist in appropriate location. A good database security setup would not allow the user the application connects as to have alter, create or drop privileges; thus the need for the database root password. If pretend is set to a true value, the operations are stepped through, but nothing actually happens.

 usage:
    Apache::Voodoo::Install::Updater->new(
                dbroot   => $database_root_password,
                app_name => $application_name,
                verbose  => $output_verbosity_level,
                pretend  => $boolean
        );

do_update()

Causes the update chain to execute: pre-setup.xml, unapplied updates, post-setup.xml

do_new_install()

Causes the new install chain to execute: pre-setup.xml, setup.xml, post-setup.xml, mark all updates applied If this is executed on an existing system, Bad Things(tm) can happen depending on what commands are present in setup.xml

mark_updates_applied()

Wizard mode function. This performs a replace into on the _updates table of a system to have entries and correct checksums for each update file without actually executing them. If something went wrong with an install or upgrade and manual tinkering was required to get things back in order, this method can be used to ensure that the _updates table appears current.

AUTHOR

Maverick, /\/\averick@smurfbaneDOTorg

COPYRIGHT

Copyright (c) 2005 Steven Edwards. All rights reserved.

You may use and distribute Voodoo under the terms described in the LICENSE file include in this package or Apache::Voodoo::license. The summary is it's a legalese version of the Artistic License :)