haikuwebkit/Websites/bugs.webkit.org/migrate.pl

100 lines
2.8 KiB
Perl
Raw Permalink Normal View History

#!/usr/bin/perl
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
Upgrade bugs.webkit.org to Bugzilla 4.2 <http://webkit.org/b/55882> Upgrade to Bugzilla 4.2.1. Conflicts: .htaccess Bugzilla.pm Bugzilla/Auth.pm Bugzilla/Auth/Login/CGI.pm Bugzilla/Auth/Persist/Cookie.pm Bugzilla/Bug.pm Bugzilla/BugMail.pm Bugzilla/CGI.pm Bugzilla/Config/Attachment.pm Bugzilla/Config/Common.pm Bugzilla/Config/General.pm Bugzilla/Constants.pm Bugzilla/DB/Mysql.pm Bugzilla/DB/Oracle.pm Bugzilla/DB/Schema.pm Bugzilla/DB/Schema/Oracle.pm Bugzilla/Error.pm Bugzilla/Flag.pm Bugzilla/FlagType.pm Bugzilla/Hook.pm Bugzilla/Install/DB.pm Bugzilla/Install/Filesystem.pm Bugzilla/Install/Localconfig.pm Bugzilla/Install/Requirements.pm Bugzilla/Install/Util.pm Bugzilla/Mailer.pm Bugzilla/Product.pm Bugzilla/Search.pm Bugzilla/Search/Quicksearch.pm Bugzilla/Search/Saved.pm Bugzilla/Series.pm Bugzilla/Template.pm Bugzilla/Template/Plugin/Hook.pm Bugzilla/Token.pm Bugzilla/User.pm Bugzilla/Util.pm Bugzilla/WebService.pm Bugzilla/WebService/Bug.pm Bugzilla/WebService/Bugzilla.pm Bugzilla/WebService/Constants.pm Bugzilla/WebService/Product.pm Bugzilla/WebService/User.pm attachment.cgi buglist.cgi checksetup.pl colchange.cgi collectstats.pl contrib/bugzilla_ldapsync.rb contrib/bzdbcopy.pl contrib/gnats2bz.pl contrib/recode.pl contrib/sendbugmail.pl contrib/yp_nomail.sh docs/en/xml/Bugzilla-Guide.xml docs/en/xml/about.xml docs/en/xml/installation.xml docs/en/xml/security.xml docs/en/xml/troubleshooting.xml editflagtypes.cgi editparams.cgi editproducts.cgi editvalues.cgi editwhines.cgi email_in.pl enter_bug.cgi extensions/BmpConvert/Config.pm extensions/OldBugMove/template/en/default/admin/params/oldbugmove.html.tmpl extensions/Voting/template/en/default/hook/bug/process/header-title.html.tmpl extensions/Voting/template/en/default/hook/search/search-report-select-rep_fields.html.tmpl extensions/example/code/webservice-error_codes.pl extensions/example/version.pl images/favicon.ico importxml.pl index.cgi install-module.pl js/field.js js/util.js long_list.cgi mod_perl.pl post_bug.cgi process_bug.cgi quips.cgi sanitycheck.cgi show_bug.cgi showattachment.cgi sidebar.cgi skins/contrib/Dusk/global.css skins/contrib/Dusk/index.css skins/standard/global.css skins/standard/show_bug.css t/008filter.t template/en/custom/attachment/review.html.tmpl template/en/default/account/prefs/saved-searches.html.tmpl template/en/default/admin/classifications/delete.html.tmpl template/en/default/admin/classifications/edit-common.html.tmpl template/en/default/admin/classifications/footer.html.tmpl template/en/default/admin/components/create.html.tmpl template/en/default/admin/components/edit.html.tmpl template/en/default/admin/params/attachment.html.tmpl template/en/default/admin/sanitycheck/messages.html.tmpl template/en/default/admin/users/confirm-delete.html.tmpl template/en/default/admin/workflow/edit.html.tmpl template/en/default/attachment/created.html.tmpl template/en/default/attachment/diff-header.html.tmpl template/en/default/attachment/edit.html.tmpl template/en/default/attachment/list.html.tmpl template/en/default/attachment/updated.html.tmpl template/en/default/bug/comments.html.tmpl template/en/default/bug/create/create-guided.html.tmpl template/en/default/bug/create/create.html.tmpl template/en/default/bug/create/created.html.tmpl template/en/default/bug/edit.html.tmpl template/en/default/bug/field.html.tmpl template/en/default/bug/process/header.html.tmpl template/en/default/bug/show.html.tmpl template/en/default/bug/show.xml.tmpl template/en/default/config.rdf.tmpl template/en/default/email/whine.txt.tmpl template/en/default/filterexceptions.pl template/en/default/flag/list.html.tmpl template/en/default/global/common-links.html.tmpl template/en/default/global/confirm-action.html.tmpl template/en/default/global/field-descs.none.tmpl template/en/default/global/footer.html.tmpl template/en/default/global/header.html.tmpl template/en/default/global/user-error.html.tmpl template/en/default/global/userselect.html.tmpl template/en/default/list/edit-multiple.html.tmpl template/en/default/list/list.html.tmpl template/en/default/pages/fields.html.tmpl template/en/default/pages/release-notes.html.tmpl template/en/default/search/boolean-charts.html.tmpl template/en/default/search/form.html.tmpl template/en/default/search/search-report-graph.html.tmpl template/en/default/search/search-report-table.html.tmpl template/en/default/setup/strings.txt.pl token.cgi userprefs.cgi xml.cgi xmlrpc.cgi Canonical link: https://commits.webkit.org/155623@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-10-16 16:00:58 +00:00
#
# This Source Code Form is "Incompatible With Secondary Licenses", as
# defined by the Mozilla Public License, v. 2.0.
Upgrade bugs.webkit.org to Bugzilla 4.2 <http://webkit.org/b/55882> Upgrade to Bugzilla 4.2.1. Conflicts: .htaccess Bugzilla.pm Bugzilla/Auth.pm Bugzilla/Auth/Login/CGI.pm Bugzilla/Auth/Persist/Cookie.pm Bugzilla/Bug.pm Bugzilla/BugMail.pm Bugzilla/CGI.pm Bugzilla/Config/Attachment.pm Bugzilla/Config/Common.pm Bugzilla/Config/General.pm Bugzilla/Constants.pm Bugzilla/DB/Mysql.pm Bugzilla/DB/Oracle.pm Bugzilla/DB/Schema.pm Bugzilla/DB/Schema/Oracle.pm Bugzilla/Error.pm Bugzilla/Flag.pm Bugzilla/FlagType.pm Bugzilla/Hook.pm Bugzilla/Install/DB.pm Bugzilla/Install/Filesystem.pm Bugzilla/Install/Localconfig.pm Bugzilla/Install/Requirements.pm Bugzilla/Install/Util.pm Bugzilla/Mailer.pm Bugzilla/Product.pm Bugzilla/Search.pm Bugzilla/Search/Quicksearch.pm Bugzilla/Search/Saved.pm Bugzilla/Series.pm Bugzilla/Template.pm Bugzilla/Template/Plugin/Hook.pm Bugzilla/Token.pm Bugzilla/User.pm Bugzilla/Util.pm Bugzilla/WebService.pm Bugzilla/WebService/Bug.pm Bugzilla/WebService/Bugzilla.pm Bugzilla/WebService/Constants.pm Bugzilla/WebService/Product.pm Bugzilla/WebService/User.pm attachment.cgi buglist.cgi checksetup.pl colchange.cgi collectstats.pl contrib/bugzilla_ldapsync.rb contrib/bzdbcopy.pl contrib/gnats2bz.pl contrib/recode.pl contrib/sendbugmail.pl contrib/yp_nomail.sh docs/en/xml/Bugzilla-Guide.xml docs/en/xml/about.xml docs/en/xml/installation.xml docs/en/xml/security.xml docs/en/xml/troubleshooting.xml editflagtypes.cgi editparams.cgi editproducts.cgi editvalues.cgi editwhines.cgi email_in.pl enter_bug.cgi extensions/BmpConvert/Config.pm extensions/OldBugMove/template/en/default/admin/params/oldbugmove.html.tmpl extensions/Voting/template/en/default/hook/bug/process/header-title.html.tmpl extensions/Voting/template/en/default/hook/search/search-report-select-rep_fields.html.tmpl extensions/example/code/webservice-error_codes.pl extensions/example/version.pl images/favicon.ico importxml.pl index.cgi install-module.pl js/field.js js/util.js long_list.cgi mod_perl.pl post_bug.cgi process_bug.cgi quips.cgi sanitycheck.cgi show_bug.cgi showattachment.cgi sidebar.cgi skins/contrib/Dusk/global.css skins/contrib/Dusk/index.css skins/standard/global.css skins/standard/show_bug.css t/008filter.t template/en/custom/attachment/review.html.tmpl template/en/default/account/prefs/saved-searches.html.tmpl template/en/default/admin/classifications/delete.html.tmpl template/en/default/admin/classifications/edit-common.html.tmpl template/en/default/admin/classifications/footer.html.tmpl template/en/default/admin/components/create.html.tmpl template/en/default/admin/components/edit.html.tmpl template/en/default/admin/params/attachment.html.tmpl template/en/default/admin/sanitycheck/messages.html.tmpl template/en/default/admin/users/confirm-delete.html.tmpl template/en/default/admin/workflow/edit.html.tmpl template/en/default/attachment/created.html.tmpl template/en/default/attachment/diff-header.html.tmpl template/en/default/attachment/edit.html.tmpl template/en/default/attachment/list.html.tmpl template/en/default/attachment/updated.html.tmpl template/en/default/bug/comments.html.tmpl template/en/default/bug/create/create-guided.html.tmpl template/en/default/bug/create/create.html.tmpl template/en/default/bug/create/created.html.tmpl template/en/default/bug/edit.html.tmpl template/en/default/bug/field.html.tmpl template/en/default/bug/process/header.html.tmpl template/en/default/bug/show.html.tmpl template/en/default/bug/show.xml.tmpl template/en/default/config.rdf.tmpl template/en/default/email/whine.txt.tmpl template/en/default/filterexceptions.pl template/en/default/flag/list.html.tmpl template/en/default/global/common-links.html.tmpl template/en/default/global/confirm-action.html.tmpl template/en/default/global/field-descs.none.tmpl template/en/default/global/footer.html.tmpl template/en/default/global/header.html.tmpl template/en/default/global/user-error.html.tmpl template/en/default/global/userselect.html.tmpl template/en/default/list/edit-multiple.html.tmpl template/en/default/list/list.html.tmpl template/en/default/pages/fields.html.tmpl template/en/default/pages/release-notes.html.tmpl template/en/default/search/boolean-charts.html.tmpl template/en/default/search/form.html.tmpl template/en/default/search/search-report-graph.html.tmpl template/en/default/search/search-report-table.html.tmpl template/en/default/setup/strings.txt.pl token.cgi userprefs.cgi xml.cgi xmlrpc.cgi Canonical link: https://commits.webkit.org/155623@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-10-16 16:00:58 +00:00
use 5.10.1;
Upgrade bugs.webkit.org to Bugzilla 4.2 <http://webkit.org/b/55882> Upgrade to Bugzilla 4.2.1. Conflicts: .htaccess Bugzilla.pm Bugzilla/Auth.pm Bugzilla/Auth/Login/CGI.pm Bugzilla/Auth/Persist/Cookie.pm Bugzilla/Bug.pm Bugzilla/BugMail.pm Bugzilla/CGI.pm Bugzilla/Config/Attachment.pm Bugzilla/Config/Common.pm Bugzilla/Config/General.pm Bugzilla/Constants.pm Bugzilla/DB/Mysql.pm Bugzilla/DB/Oracle.pm Bugzilla/DB/Schema.pm Bugzilla/DB/Schema/Oracle.pm Bugzilla/Error.pm Bugzilla/Flag.pm Bugzilla/FlagType.pm Bugzilla/Hook.pm Bugzilla/Install/DB.pm Bugzilla/Install/Filesystem.pm Bugzilla/Install/Localconfig.pm Bugzilla/Install/Requirements.pm Bugzilla/Install/Util.pm Bugzilla/Mailer.pm Bugzilla/Product.pm Bugzilla/Search.pm Bugzilla/Search/Quicksearch.pm Bugzilla/Search/Saved.pm Bugzilla/Series.pm Bugzilla/Template.pm Bugzilla/Template/Plugin/Hook.pm Bugzilla/Token.pm Bugzilla/User.pm Bugzilla/Util.pm Bugzilla/WebService.pm Bugzilla/WebService/Bug.pm Bugzilla/WebService/Bugzilla.pm Bugzilla/WebService/Constants.pm Bugzilla/WebService/Product.pm Bugzilla/WebService/User.pm attachment.cgi buglist.cgi checksetup.pl colchange.cgi collectstats.pl contrib/bugzilla_ldapsync.rb contrib/bzdbcopy.pl contrib/gnats2bz.pl contrib/recode.pl contrib/sendbugmail.pl contrib/yp_nomail.sh docs/en/xml/Bugzilla-Guide.xml docs/en/xml/about.xml docs/en/xml/installation.xml docs/en/xml/security.xml docs/en/xml/troubleshooting.xml editflagtypes.cgi editparams.cgi editproducts.cgi editvalues.cgi editwhines.cgi email_in.pl enter_bug.cgi extensions/BmpConvert/Config.pm extensions/OldBugMove/template/en/default/admin/params/oldbugmove.html.tmpl extensions/Voting/template/en/default/hook/bug/process/header-title.html.tmpl extensions/Voting/template/en/default/hook/search/search-report-select-rep_fields.html.tmpl extensions/example/code/webservice-error_codes.pl extensions/example/version.pl images/favicon.ico importxml.pl index.cgi install-module.pl js/field.js js/util.js long_list.cgi mod_perl.pl post_bug.cgi process_bug.cgi quips.cgi sanitycheck.cgi show_bug.cgi showattachment.cgi sidebar.cgi skins/contrib/Dusk/global.css skins/contrib/Dusk/index.css skins/standard/global.css skins/standard/show_bug.css t/008filter.t template/en/custom/attachment/review.html.tmpl template/en/default/account/prefs/saved-searches.html.tmpl template/en/default/admin/classifications/delete.html.tmpl template/en/default/admin/classifications/edit-common.html.tmpl template/en/default/admin/classifications/footer.html.tmpl template/en/default/admin/components/create.html.tmpl template/en/default/admin/components/edit.html.tmpl template/en/default/admin/params/attachment.html.tmpl template/en/default/admin/sanitycheck/messages.html.tmpl template/en/default/admin/users/confirm-delete.html.tmpl template/en/default/admin/workflow/edit.html.tmpl template/en/default/attachment/created.html.tmpl template/en/default/attachment/diff-header.html.tmpl template/en/default/attachment/edit.html.tmpl template/en/default/attachment/list.html.tmpl template/en/default/attachment/updated.html.tmpl template/en/default/bug/comments.html.tmpl template/en/default/bug/create/create-guided.html.tmpl template/en/default/bug/create/create.html.tmpl template/en/default/bug/create/created.html.tmpl template/en/default/bug/edit.html.tmpl template/en/default/bug/field.html.tmpl template/en/default/bug/process/header.html.tmpl template/en/default/bug/show.html.tmpl template/en/default/bug/show.xml.tmpl template/en/default/config.rdf.tmpl template/en/default/email/whine.txt.tmpl template/en/default/filterexceptions.pl template/en/default/flag/list.html.tmpl template/en/default/global/common-links.html.tmpl template/en/default/global/confirm-action.html.tmpl template/en/default/global/field-descs.none.tmpl template/en/default/global/footer.html.tmpl template/en/default/global/header.html.tmpl template/en/default/global/user-error.html.tmpl template/en/default/global/userselect.html.tmpl template/en/default/list/edit-multiple.html.tmpl template/en/default/list/list.html.tmpl template/en/default/pages/fields.html.tmpl template/en/default/pages/release-notes.html.tmpl template/en/default/search/boolean-charts.html.tmpl template/en/default/search/form.html.tmpl template/en/default/search/search-report-graph.html.tmpl template/en/default/search/search-report-table.html.tmpl template/en/default/setup/strings.txt.pl token.cgi userprefs.cgi xml.cgi xmlrpc.cgi Canonical link: https://commits.webkit.org/155623@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-10-16 16:00:58 +00:00
use strict;
use warnings;
Upgrade bugs.webkit.org to Bugzilla 4.2 <http://webkit.org/b/55882> Upgrade to Bugzilla 4.2.1. Conflicts: .htaccess Bugzilla.pm Bugzilla/Auth.pm Bugzilla/Auth/Login/CGI.pm Bugzilla/Auth/Persist/Cookie.pm Bugzilla/Bug.pm Bugzilla/BugMail.pm Bugzilla/CGI.pm Bugzilla/Config/Attachment.pm Bugzilla/Config/Common.pm Bugzilla/Config/General.pm Bugzilla/Constants.pm Bugzilla/DB/Mysql.pm Bugzilla/DB/Oracle.pm Bugzilla/DB/Schema.pm Bugzilla/DB/Schema/Oracle.pm Bugzilla/Error.pm Bugzilla/Flag.pm Bugzilla/FlagType.pm Bugzilla/Hook.pm Bugzilla/Install/DB.pm Bugzilla/Install/Filesystem.pm Bugzilla/Install/Localconfig.pm Bugzilla/Install/Requirements.pm Bugzilla/Install/Util.pm Bugzilla/Mailer.pm Bugzilla/Product.pm Bugzilla/Search.pm Bugzilla/Search/Quicksearch.pm Bugzilla/Search/Saved.pm Bugzilla/Series.pm Bugzilla/Template.pm Bugzilla/Template/Plugin/Hook.pm Bugzilla/Token.pm Bugzilla/User.pm Bugzilla/Util.pm Bugzilla/WebService.pm Bugzilla/WebService/Bug.pm Bugzilla/WebService/Bugzilla.pm Bugzilla/WebService/Constants.pm Bugzilla/WebService/Product.pm Bugzilla/WebService/User.pm attachment.cgi buglist.cgi checksetup.pl colchange.cgi collectstats.pl contrib/bugzilla_ldapsync.rb contrib/bzdbcopy.pl contrib/gnats2bz.pl contrib/recode.pl contrib/sendbugmail.pl contrib/yp_nomail.sh docs/en/xml/Bugzilla-Guide.xml docs/en/xml/about.xml docs/en/xml/installation.xml docs/en/xml/security.xml docs/en/xml/troubleshooting.xml editflagtypes.cgi editparams.cgi editproducts.cgi editvalues.cgi editwhines.cgi email_in.pl enter_bug.cgi extensions/BmpConvert/Config.pm extensions/OldBugMove/template/en/default/admin/params/oldbugmove.html.tmpl extensions/Voting/template/en/default/hook/bug/process/header-title.html.tmpl extensions/Voting/template/en/default/hook/search/search-report-select-rep_fields.html.tmpl extensions/example/code/webservice-error_codes.pl extensions/example/version.pl images/favicon.ico importxml.pl index.cgi install-module.pl js/field.js js/util.js long_list.cgi mod_perl.pl post_bug.cgi process_bug.cgi quips.cgi sanitycheck.cgi show_bug.cgi showattachment.cgi sidebar.cgi skins/contrib/Dusk/global.css skins/contrib/Dusk/index.css skins/standard/global.css skins/standard/show_bug.css t/008filter.t template/en/custom/attachment/review.html.tmpl template/en/default/account/prefs/saved-searches.html.tmpl template/en/default/admin/classifications/delete.html.tmpl template/en/default/admin/classifications/edit-common.html.tmpl template/en/default/admin/classifications/footer.html.tmpl template/en/default/admin/components/create.html.tmpl template/en/default/admin/components/edit.html.tmpl template/en/default/admin/params/attachment.html.tmpl template/en/default/admin/sanitycheck/messages.html.tmpl template/en/default/admin/users/confirm-delete.html.tmpl template/en/default/admin/workflow/edit.html.tmpl template/en/default/attachment/created.html.tmpl template/en/default/attachment/diff-header.html.tmpl template/en/default/attachment/edit.html.tmpl template/en/default/attachment/list.html.tmpl template/en/default/attachment/updated.html.tmpl template/en/default/bug/comments.html.tmpl template/en/default/bug/create/create-guided.html.tmpl template/en/default/bug/create/create.html.tmpl template/en/default/bug/create/created.html.tmpl template/en/default/bug/edit.html.tmpl template/en/default/bug/field.html.tmpl template/en/default/bug/process/header.html.tmpl template/en/default/bug/show.html.tmpl template/en/default/bug/show.xml.tmpl template/en/default/config.rdf.tmpl template/en/default/email/whine.txt.tmpl template/en/default/filterexceptions.pl template/en/default/flag/list.html.tmpl template/en/default/global/common-links.html.tmpl template/en/default/global/confirm-action.html.tmpl template/en/default/global/field-descs.none.tmpl template/en/default/global/footer.html.tmpl template/en/default/global/header.html.tmpl template/en/default/global/user-error.html.tmpl template/en/default/global/userselect.html.tmpl template/en/default/list/edit-multiple.html.tmpl template/en/default/list/list.html.tmpl template/en/default/pages/fields.html.tmpl template/en/default/pages/release-notes.html.tmpl template/en/default/search/boolean-charts.html.tmpl template/en/default/search/form.html.tmpl template/en/default/search/search-report-graph.html.tmpl template/en/default/search/search-report-table.html.tmpl template/en/default/setup/strings.txt.pl token.cgi userprefs.cgi xml.cgi xmlrpc.cgi Canonical link: https://commits.webkit.org/155623@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-10-16 16:00:58 +00:00
use File::Basename;
BEGIN { chdir dirname($0); }
use lib qw(. lib);
use Bugzilla;
use Bugzilla::Migrate;
use Getopt::Long;
use Pod::Usage;
my %switch;
GetOptions(\%switch, 'help|h|?', 'from=s', 'verbose|v+', 'dry-run');
# Print the help message if that switch was selected or if --from
# wasn't specified.
if (!$switch{'from'} or $switch{'help'}) {
pod2usage({-exitval => 1});
}
my $migrator = Bugzilla::Migrate->load($switch{'from'});
$migrator->verbose($switch{'verbose'});
$migrator->dry_run($switch{'dry-run'});
$migrator->check_requirements();
$migrator->do_migration();
# Even if there's an error, we want to be sure that the serial values
# get reset properly.
END {
if ($migrator and $migrator->dry_run) {
my $dbh = Bugzilla->dbh;
if ($dbh->bz_in_transaction) {
$dbh->bz_rollback_transaction();
}
$migrator->reset_serial_values();
}
}
__END__
=head1 NAME
migrate.pl - A script to migrate from other bug-trackers to Bugzilla.
=head1 SYNOPSIS
./migrate.pl --from=<tracker> [--verbose] [--dry-run]
Migrates from another bug-tracker to Bugzilla. If you want
to upgrade Bugzilla, use checksetup.pl instead.
Always test this on a backup copy of your database before
running it on your live Bugzilla.
=head1 OPTIONS
=over
=item B<--from=tracker>
Specifies what bug-tracker you're migrating from. To see what values
are valid, see the contents of the F<Bugzilla/Migrate/> directory.
=item B<--dry-run>
Don't modify the Bugzilla database at all, just test the import.
Note that this could cause significant slowdown and other strange effects
on a live Bugzilla, so only use it on a test instance.
=item B<--verbose>
If specified, this script will output extra debugging information
to STDERR. Specify multiple times (up to three) for more information.
=back
=head1 DESCRIPTION
This script copies data from another bug-tracker into Bugzilla. It migrates
users, products, and bugs from the other bug-tracker into this Bugzilla,
without removing any of the data currently in this Bugzilla.
Note that you will need enough space in your temporary directory to hold
the size of all attachments in your current bug-tracker.
You may also need to increase the number of file handles a process is allowed
to hold open (as the migrator will create a file handle for each attachment
in your database). On Linux and simliar systems, you can do this as root
by typing C<ulimit -n 65535> before running your script.