scripts::DBUpdateTo6::Base - Base class for migrations.
Refreshes the configuration to make sure that a ZZZAAuto.pm is present after the upgrade.
$DBUpdateTo6Object->RebuildConfig( UnitTestMode => 1, # (optional) Prevent discarding all objects at the end. CleanUpIfPossible => 1, # (optional) Removes leftover settings that are not contained in XML files, # but only if all XML files for installed packages are present. );
Clean up the cache.
$DBUpdateTo6Object->CacheCleanup();
Parse and execute an XML array.
$DBUpdateTo6Object->ExecuteXMLDBArray( XMLArray => \@XMLArray, Old2NewTableNames => { # optional 'article' => 'article_data_mime', 'article_plain' => 'article_data_mime_plain', 'article_attachment' => 'article_data_mime_attachment', }, );
Parse and execute an XML string.
$DBUpdateTo6Object->ExecuteXMLDBString( XMLString => ' <TableAlter Name="gi_webservice_config"> <ColumnDrop Name="config_md5"/> </TableAlter> ', );
Checks if the given table exists in the database.
my $Result = $DBUpdateTo6Object->TableExists( Table => 'ticket', );
Returns true if the table exists, otherwise false.
Checks if the given column exists in the given table.
my $Result = $DBUpdateTo6Object->ColumnExists( Table => 'ticket', Column => 'id', );
Returns true if the column exists, otherwise false.
Checks if the given index exists in the given table.
my $Result = $DBUpdateTo6Object->IndexExists( Table => 'ticket', Index => 'id', );
Returns true if the index exists, otherwise false.
Clean up the cache.
$DBUpdateTo6Object->GetTaskConfig( Module => "TaskModuleName");
Update an existing SysConfig Setting in a migration context. It will skip updating both read-only and already modified settings by default.
$DBUpdateTo6Object->SettingUpdate( Name => 'Setting::Name', # (required) setting name IsValid => 1, # (optional) 1 or 0, modified 0 EffectiveValue => $SettingEffectiveValue, # (optional) UserModificationActive => 0, # (optional) 1 or 0, modified 0 TargetUserID => 2, # (optional) ID of the user for which the modified setting is meant, # leave it undef for global changes. NoValidation => 1, # (optional) no value type validation. ContinueOnModified => 0, # (optional) Do not skip already modified settings. # 1 or 0, default 0 Verbose => 0, # (optional) 1 or 0, default 0 );
This software is part of the OTRS project (https://otrs.org/).
This software comes with ABSOLUTELY NO WARRANTY. For details, see the enclosed file COPYING for license information (GPL). If you did not receive this file, see https://www.gnu.org/licenses/gpl-3.0.txt.