diff options
Diffstat (limited to 'extensions/BMO/bin/bug_1141452.pl')
-rwxr-xr-x | extensions/BMO/bin/bug_1141452.pl | 110 |
1 files changed, 59 insertions, 51 deletions
diff --git a/extensions/BMO/bin/bug_1141452.pl b/extensions/BMO/bin/bug_1141452.pl index 155c4704c..56b63db91 100755 --- a/extensions/BMO/bin/bug_1141452.pl +++ b/extensions/BMO/bin/bug_1141452.pl @@ -13,8 +13,8 @@ use 5.10.1; use lib qw(. lib local/lib/perl5); BEGIN { - use Bugzilla; - Bugzilla->extensions; + use Bugzilla; + Bugzilla->extensions; } use Bugzilla::Constants qw( USAGE_MODE_CMDLINE ); @@ -24,14 +24,17 @@ use Bugzilla::User; Bugzilla->usage_mode(USAGE_MODE_CMDLINE); my $dbh = Bugzilla->dbh; -my $blocking_b2g = Bugzilla::Extension::TrackingFlags::Flag->check({ name => 'cf_blocking_b2g' }); -my $tracking_b2g = Bugzilla::Extension::TrackingFlags::Flag->check({ name => 'cf_tracking_b2g' }); +my $blocking_b2g = Bugzilla::Extension::TrackingFlags::Flag->check( + {name => 'cf_blocking_b2g'}); +my $tracking_b2g = Bugzilla::Extension::TrackingFlags::Flag->check( + {name => 'cf_tracking_b2g'}); die "tracking-b2g does not have a 'backlog' value\n" - unless grep { $_->value eq 'backlog' } @{ $tracking_b2g->values }; + unless grep { $_->value eq 'backlog' } @{$tracking_b2g->values}; print "Searching for bugs..\n"; -my $flags = $dbh->selectall_arrayref(<<EOF, { Slice => {} }, $blocking_b2g->flag_id, $tracking_b2g->flag_id); +my $flags = $dbh->selectall_arrayref( + <<EOF, {Slice => {}}, $blocking_b2g->flag_id, $tracking_b2g->flag_id); SELECT bugs.bug_id, blocking_b2g.id id, @@ -50,54 +53,59 @@ printf "About to fix %s bugs\n", scalar(@$flags); print "Press <Ctrl-C> to stop or <Enter> to continue...\n"; getc(); -my $nobody = Bugzilla::User->check({ name => Bugzilla->params->{'nobody_user'} }); -my $when = $dbh->selectrow_array('SELECT LOCALTIMESTAMP(0)'); +my $nobody = Bugzilla::User->check({name => Bugzilla->params->{'nobody_user'}}); +my $when = $dbh->selectrow_array('SELECT LOCALTIMESTAMP(0)'); $dbh->bz_start_transaction(); foreach my $flag (@$flags) { - if (!$flag->{value}) { - print $flag->{bug_id}, ": changing blocking_b2g:backlog -> tracking_b2g:backlog\n"; - # no tracking_b2g value, change blocking_b2g:backlog -> tracking_b2g:backlog - $dbh->do( - "UPDATE tracking_flags_bugs SET tracking_flag_id = ? WHERE id = ?", - undef, - $tracking_b2g->flag_id, $flag->{id}, - ); - $dbh->do( - "UPDATE bugs SET delta_ts = ?, lastdiffed = ? WHERE bug_id = ?", - undef, - $when, $when, $flag->{bug_id}, - ); - $dbh->do( - "INSERT INTO bugs_activity(bug_id, who, bug_when, fieldid, removed, added) VALUES (?, ?, ?, ?, ?, ?)", - undef, - $flag->{bug_id}, $nobody->id, $when, $blocking_b2g->id, 'backlog', '---', - ); - $dbh->do( - "INSERT INTO bugs_activity(bug_id, who, bug_when, fieldid, removed, added) VALUES (?, ?, ?, ?, ?, ?)", - undef, - $flag->{bug_id}, $nobody->id, $when, $tracking_b2g->id, '---', 'backlog', - ); - } - elsif ($flag->{value}) { - print $flag->{bug_id}, ": deleting blocking_b2g:backlog\n"; - # tracking_b2g already has a value, just delete blocking_b2g:backlog - $dbh->do( - "DELETE FROM tracking_flags_bugs WHERE id = ?", - undef, - $flag->{id}, - ); - $dbh->do( - "UPDATE bugs SET delta_ts = ?, lastdiffed = ? WHERE bug_id = ?", - undef, - $when, $when, $flag->{bug_id}, - ); - $dbh->do( - "INSERT INTO bugs_activity(bug_id, who, bug_when, fieldid, removed, added) VALUES (?, ?, ?, ?, ?, ?)", - undef, - $flag->{bug_id}, $nobody->id, $when, $blocking_b2g->id, 'backlog', '---', - ); - } + if (!$flag->{value}) { + print $flag->{bug_id}, + ": changing blocking_b2g:backlog -> tracking_b2g:backlog\n"; + + # no tracking_b2g value, change blocking_b2g:backlog -> tracking_b2g:backlog + $dbh->do("UPDATE tracking_flags_bugs SET tracking_flag_id = ? WHERE id = ?", + undef, $tracking_b2g->flag_id, $flag->{id},); + $dbh->do("UPDATE bugs SET delta_ts = ?, lastdiffed = ? WHERE bug_id = ?", + undef, $when, $when, $flag->{bug_id},); + $dbh->do( + "INSERT INTO bugs_activity(bug_id, who, bug_when, fieldid, removed, added) VALUES (?, ?, ?, ?, ?, ?)", + undef, + $flag->{bug_id}, + $nobody->id, + $when, + $blocking_b2g->id, + 'backlog', + '---', + ); + $dbh->do( + "INSERT INTO bugs_activity(bug_id, who, bug_when, fieldid, removed, added) VALUES (?, ?, ?, ?, ?, ?)", + undef, + $flag->{bug_id}, + $nobody->id, + $when, + $tracking_b2g->id, + '---', + 'backlog', + ); + } + elsif ($flag->{value}) { + print $flag->{bug_id}, ": deleting blocking_b2g:backlog\n"; + + # tracking_b2g already has a value, just delete blocking_b2g:backlog + $dbh->do("DELETE FROM tracking_flags_bugs WHERE id = ?", undef, $flag->{id},); + $dbh->do("UPDATE bugs SET delta_ts = ?, lastdiffed = ? WHERE bug_id = ?", + undef, $when, $when, $flag->{bug_id},); + $dbh->do( + "INSERT INTO bugs_activity(bug_id, who, bug_when, fieldid, removed, added) VALUES (?, ?, ?, ?, ?, ?)", + undef, + $flag->{bug_id}, + $nobody->id, + $when, + $blocking_b2g->id, + 'backlog', + '---', + ); + } } $dbh->bz_commit_transaction(); |