From b758be1d37cb49ced8cb17fca3d5a4cb2dd2e03e Mon Sep 17 00:00:00 2001 From: David Lawrence Date: Mon, 6 Jul 2015 19:21:04 +0000 Subject: Bug 1172968: Move the scripts we want to keep from contrib/* and place them in scripts/ directory. Remove contrib from repo --- contrib/reorg-tools/syncmsandversions.pl | 122 ------------------------------- 1 file changed, 122 deletions(-) delete mode 100755 contrib/reorg-tools/syncmsandversions.pl (limited to 'contrib/reorg-tools/syncmsandversions.pl') diff --git a/contrib/reorg-tools/syncmsandversions.pl b/contrib/reorg-tools/syncmsandversions.pl deleted file mode 100755 index 20e88252e..000000000 --- a/contrib/reorg-tools/syncmsandversions.pl +++ /dev/null @@ -1,122 +0,0 @@ -#!/usr/bin/perl -w -# -*- Mode: perl; indent-tabs-mode: nil -*- -# -# The contents of this file are subject to the Mozilla Public -# License Version 1.1 (the "License"); you may not use this file -# except in compliance with the License. You may obtain a copy of -# the License at http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS -# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or -# implied. See the License for the specific language governing -# rights and limitations under the License. -# -# The Original Code is the Bugzilla Bug Tracking System. -# -# The Initial Developer of the Original Code is Netscape Communications -# Corporation. Portions created by Netscape are -# Copyright (C) 1998 Netscape Communications Corporation. All -# Rights Reserved. -# -# Contributor(s): Gervase Markham - -# See also https://bugzilla.mozilla.org/show_bug.cgi?id=119569 - -use strict; - -use lib qw(. lib); - -use Bugzilla; -use Bugzilla::Constants; - -sub usage() { - print < - -E.g.: syncmsandversions.pl FoodReplicator SeaMonkey -will copy any versions and milstones in the product "FoodReplicator" -which do not exist in product "SeaMonkey" into it. This script is normally -used prior to moving components from srcproduct to tgtproduct. -USAGE - - exit(1); -} - -############################################################################# -# MAIN CODE -############################################################################# - -# This is a pure command line script. -Bugzilla->usage_mode(USAGE_MODE_CMDLINE); - -if (scalar @ARGV < 2) { - usage(); - exit(); -} - -my ($srcproduct, $tgtproduct) = @ARGV; - -my $dbh = Bugzilla->dbh; - -# Find product IDs -my $srcprodid = $dbh->selectrow_array("SELECT id FROM products WHERE name = ?", - undef, $srcproduct); -if (!$srcprodid) { - print "Can't find product ID for '$srcproduct'.\n"; - exit(1); -} - -my $tgtprodid = $dbh->selectrow_array("SELECT id FROM products WHERE name = ?", - undef, $tgtproduct); -if (!$tgtprodid) { - print "Can't find product ID for '$tgtproduct'.\n"; - exit(1); -} - -$dbh->bz_start_transaction(); - -$dbh->do(" - INSERT INTO milestones(value, sortkey, isactive, product_id) - SELECT m1.value, m1.sortkey, m1.isactive, ? - FROM milestones m1 - LEFT JOIN milestones m2 ON m1.value = m2.value - AND m2.product_id = ? - WHERE m1.product_id = ? - AND m2.value IS NULL - ", - undef, - $tgtprodid, $tgtprodid, $srcprodid); - -$dbh->do(" - INSERT INTO versions(value, isactive, product_id) - SELECT v1.value, v1.isactive, ? - FROM versions v1 - LEFT JOIN versions v2 ON v1.value = v2.value - AND v2.product_id = ? - WHERE v1.product_id = ? - AND v2.value IS NULL - ", - undef, - $tgtprodid, $tgtprodid, $srcprodid); - -$dbh->do(" - INSERT INTO group_control_map (group_id, product_id, entry, membercontrol, - othercontrol, canedit, editcomponents, - editbugs, canconfirm) - SELECT g1.group_id, ?, g1.entry, g1.membercontrol, g1.othercontrol, - g1.canedit, g1.editcomponents, g1.editbugs, g1.canconfirm - FROM group_control_map g1 - LEFT JOIN group_control_map g2 ON g1.product_id = ? - AND g2.product_id = ? - AND g1.group_id = g2.group_id - WHERE g1.product_id = ? - AND g2.group_id IS NULL - ", - undef, - $tgtprodid, $srcprodid, $tgtprodid, $srcprodid); - -$dbh->bz_commit_transaction(); - -# It's complex to determine which items now need to be flushed from memcached. -# As this is expected to be a rare event, we just flush the entire cache. -Bugzilla->memcached->clear_all(); -- cgit v1.2.3-24-g4f1b