summaryrefslogtreecommitdiffstats
path: root/sanitycheck.cgi
diff options
context:
space:
mode:
authorlpsolit%gmail.com <>2007-03-17 02:27:44 +0100
committerlpsolit%gmail.com <>2007-03-17 02:27:44 +0100
commitf8fd2befb9b33967beb35d8e86a57f0de9b326e5 (patch)
tree4867cea3c1539e822abab4c4ea66f001e6516513 /sanitycheck.cgi
parent832b52161f35aaa7ddf03168b540c5867f33dfe8 (diff)
downloadbugzilla-f8fd2befb9b33967beb35d8e86a57f0de9b326e5.tar.gz
bugzilla-f8fd2befb9b33967beb35d8e86a57f0de9b326e5.tar.xz
Bug 45207: Automated sanity check that can send an e-mail if there are problems - Patch by Frédéric Buclin <LpSolit@gmail.com> r=mkanat a=LpSolit
Diffstat (limited to 'sanitycheck.cgi')
-rwxr-xr-xsanitycheck.cgi35
1 files changed, 26 insertions, 9 deletions
diff --git a/sanitycheck.cgi b/sanitycheck.cgi
index 873432fb9..8be69dec6 100755
--- a/sanitycheck.cgi
+++ b/sanitycheck.cgi
@@ -45,8 +45,19 @@ sub get_string {
sub Status {
my ($san_tag, $vars, $alert) = @_;
- my $start_tag = $alert ? '<p class="alert">' : '<p>';
- print $start_tag . get_string($san_tag, $vars) . "</p>\n";
+ my $cgi = Bugzilla->cgi;
+ return if (!$alert && Bugzilla->usage_mode == USAGE_MODE_CMDLINE && !$cgi->param('verbose'));
+
+ if (Bugzilla->usage_mode == USAGE_MODE_CMDLINE) {
+ my $output = $cgi->param('output') || '';
+ my $linebreak = $alert ? "\nALERT: " : "\n";
+ $cgi->param('error_found', 1) if $alert;
+ $cgi->param('output', $output . $linebreak . get_string($san_tag, $vars));
+ }
+ else {
+ my $start_tag = $alert ? '<p class="alert">' : '<p>';
+ print $start_tag . get_string($san_tag, $vars) . "</p>\n";
+ }
}
###########################################################################
@@ -60,7 +71,7 @@ my $dbh = Bugzilla->dbh;
my $template = Bugzilla->template;
my $vars = {};
-print $cgi->header();
+print $cgi->header() unless Bugzilla->usage_mode == USAGE_MODE_CMDLINE;
# Make sure the user is authorized to access sanitycheck.cgi.
# As this script can now alter the group_control_map table, we no longer
@@ -71,8 +82,10 @@ $user->in_group("editcomponents")
action => "run",
object => "sanity_check"});
-$template->process('admin/sanitycheck/list.html.tmpl', $vars)
- || ThrowTemplateError($template->error());
+unless (Bugzilla->usage_mode == USAGE_MODE_CMDLINE) {
+ $template->process('admin/sanitycheck/list.html.tmpl', $vars)
+ || ThrowTemplateError($template->error());
+}
###########################################################################
# Users with 'editkeywords' privs only can only check keywords.
@@ -234,8 +247,10 @@ if ($cgi->param('rescanallBugMail')) {
Status('send_bugmail_end') if scalar(@$list);
- $template->process('global/footer.html.tmpl', $vars)
- || ThrowTemplateError($template->error());
+ unless (Bugzilla->usage_mode == USAGE_MODE_CMDLINE) {
+ $template->process('global/footer.html.tmpl', $vars)
+ || ThrowTemplateError($template->error());
+ }
exit;
}
@@ -937,5 +952,7 @@ if (scalar(@$badbugs > 0)) {
Status('checks_completed');
-$template->process('global/footer.html.tmpl', $vars)
- || ThrowTemplateError($template->error());
+unless (Bugzilla->usage_mode == USAGE_MODE_CMDLINE) {
+ $template->process('global/footer.html.tmpl', $vars)
+ || ThrowTemplateError($template->error());
+}