summaryrefslogtreecommitdiffstats
path: root/template/en/default
diff options
context:
space:
mode:
authorIsrael Madueme <purelogiq@gmail.com>2018-09-10 18:34:56 +0200
committerGitHub <noreply@github.com>2018-09-10 18:34:56 +0200
commita91453b19c462929b3ab77927b0d0a6807558b92 (patch)
tree3eb41154780fbff36ec809eb42f382c2639c76ed /template/en/default
parent2e6e3e13587ee526ba94faabd5551e67508518f5 (diff)
downloadbugzilla-a91453b19c462929b3ab77927b0d0a6807558b92.tar.gz
bugzilla-a91453b19c462929b3ab77927b0d0a6807558b92.tar.xz
Bug 1479466 - Add Security Bugs Report
Adds the security bugs report with open count and median age open of sec-critical and sec-high bugs.
Diffstat (limited to 'template/en/default')
-rw-r--r--template/en/default/admin/params/reports.html.tmpl20
-rw-r--r--template/en/default/reports/email/security-risk.html.tmpl95
2 files changed, 115 insertions, 0 deletions
diff --git a/template/en/default/admin/params/reports.html.tmpl b/template/en/default/admin/params/reports.html.tmpl
new file mode 100644
index 000000000..79b6af35d
--- /dev/null
+++ b/template/en/default/admin/params/reports.html.tmpl
@@ -0,0 +1,20 @@
+[%# 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/.
+ #
+ # This Source Code Form is "Incompatible With Secondary Licenses", as
+ # defined by the Mozilla Public License, v. 2.0.
+ #%]
+[%
+ title = "Reports"
+ desc = "Configure reporting parameters"
+%]
+
+[% param_descs = {
+ report_secbugs_active => "Enable or disable the security $terms.bugs report feature."
+ report_secbugs_emails =>
+ "Comma delimited list of the email addresses that the security $terms.bugs report will be sent to.",
+ report_secbugs_products =>
+ "JSON array of the products the security $terms.bugs report will report on. e.g [\"Prod1\", \"Prod2\"]",
+ }
+%]
diff --git a/template/en/default/reports/email/security-risk.html.tmpl b/template/en/default/reports/email/security-risk.html.tmpl
new file mode 100644
index 000000000..0fca42e05
--- /dev/null
+++ b/template/en/default/reports/email/security-risk.html.tmpl
@@ -0,0 +1,95 @@
+[%# 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/.
+ #
+ # This Source Code Form is "Incompatible With Secondary Licenses", as
+ # defined by the Mozilla Public License, v. 2.0.
+ #%]
+
+[% PROCESS global/variables.none.tmpl %]
+
+<!doctype html>
+<html>
+<head>
+ <title>Security [% terms.Bugs %] Report for the week of [% report_week FILTER html %]</title>
+ <base href="[% urlbase FILTER txt %]">
+</head>
+<body>
+<p>Security [% terms.Bugs %] Report for the week of [% report_week FILTER html %]</p>
+<p>To narrow down open [% terms.bugs %] click on the link and at the bottom of the search results use the 'Edit Search' functionality to filter by component and so on.
+This will filter only the open [% terms.bugs %] counted in the report (as long as you do not modify the '[% terms.Bugs %] numbered' section of the search).
+</p>
+
+<h3>[% terms.Bugs %] By Severity</h3>
+<table style="border: 1px solid grey">
+ <tr>
+ <th style="border: 1px solid grey"></th>
+ [% FOREACH keyword IN sec_keywords %]
+ <th style="border: 1px solid grey; text-align: center" colspan="2"><b>[% keyword FILTER html %]</b></th>
+ [% END %]
+ </tr>
+ <tr>
+ <td style="border: 1px solid grey"></td>
+ [% FOREACH keyword IN sec_keywords %]
+ <td style="border: 1px solid grey; text-align: right">Open Count</td>
+ <td style="border: 1px solid grey; text-align: right">Median Days Open</td>
+ [% END %]
+ </tr>
+ [% FOREACH result IN results.reverse %]
+ <tr>
+ <td style="border: 1px solid grey">[% result.date.ymd('-') FILTER html %]</td>
+ [% FOREACH keyword IN sec_keywords %]
+ <td style="border: 1px solid grey; text-align: right">
+ [% IF result.bugs_by_sec_keyword.$keyword.open.size %]
+ <a href="[% build_bugs_link(result.bugs_by_sec_keyword.$keyword.open) FILTER html %]">
+ [% result.bugs_by_sec_keyword.$keyword.open.size FILTER html %]
+ </a>
+ [% ELSE %]
+ [% result.bugs_by_sec_keyword.$keyword.open.size FILTER html %]
+ [% END %]
+ </td>
+ <td style="border: 1px solid grey; text-align: right">
+ [% result.bugs_by_sec_keyword.$keyword.median_age_open FILTER format("%.2f") FILTER html %]
+ </td>
+ [% END %]
+ </tr>
+ [% END %]
+</table>
+
+<h3>Sec-Critical + Sec-High [% terms.Bugs %] by Product</h3>
+<table style="border: 1px solid grey">
+ <tr>
+ <th style="border: 1px solid grey"></th>
+ [% FOREACH product IN products %]
+ <th style="border: 1px solid grey; text-align: center" colspan="2"><b>[% product FILTER html %]</b></th>
+ [% END %]
+ </tr>
+ <tr>
+ <td style="border: 1px solid grey"></td>
+ [% FOREACH product IN products %]
+ <td style="border: 1px solid grey; text-align: right">Open Count</td>
+ <td style="border: 1px solid grey; text-align: right">Median Days Open</td>
+ [% END %]
+ </tr>
+ [% FOREACH result IN results.reverse %]
+ <tr>
+ <td style="border: 1px solid grey">[% result.date.ymd('-') FILTER html %]</td>
+ [% FOREACH product IN products %]
+ <td style="border: 1px solid grey; text-align: right">
+ [% IF result.bugs_by_product.$product.open.size %]
+ <a href="[% build_bugs_link(result.bugs_by_product.$product.open, product) FILTER html %]">
+ [% result.bugs_by_product.$product.open.size FILTER html %]
+ </a>
+ [% ELSE %]
+ [% result.bugs_by_product.$product.open.size FILTER html %]
+ [% END %]
+ </td>
+ <td style="border: 1px solid grey; text-align: right">
+ [% result.bugs_by_product.$product.median_age_open FILTER format("%.2f") FILTER html %]
+ </td>
+ [% END %]
+ </tr>
+ [% END %]
+</table>
+</body>
+</html>