[Qa-jenkins-scm] [Git][qa/jenkins.debian.net][master] 4 commits: reproducible: _html_packages: use the new Status class instead of get_status_icon()

Mattia Rizzolo gitlab at salsa.debian.org
Tue Jun 19 07:56:57 BST 2018


Mattia Rizzolo pushed to branch master at Debian QA / jenkins.debian.net


Commits:
3d923465 by Mattia Rizzolo at 2018-06-19T08:56:22+02:00
reproducible: _html_packages: use the new Status class instead of get_status_icon()

Signed-off-by: Mattia Rizzolo <mattia at debian.org>

- - - - -
6f71ed16 by Mattia Rizzolo at 2018-06-19T08:56:27+02:00
reproducible: _html_notes: use the new Status class instead of get_status_icon()

Signed-off-by: Mattia Rizzolo <mattia at debian.org>

- - - - -
751d4d7b by Mattia Rizzolo at 2018-06-19T08:56:29+02:00
rblib: remove the now unused get_status_icon() helper function

Signed-off-by: Mattia Rizzolo <mattia at debian.org>

- - - - -
a349fad1 by Mattia Rizzolo at 2018-06-19T08:56:31+02:00
reproducible: _common.sh: drop support for 'not_for_us' and 'not for us' status names

Signed-off-by: Mattia Rizzolo <mattia at debian.org>

- - - - -


4 changed files:

- bin/rblib/__init__.py
- bin/reproducible_common.sh
- bin/reproducible_html_notes.py
- bin/reproducible_html_packages.py


Changes:

=====================================
bin/rblib/__init__.py
=====================================
--- a/bin/rblib/__init__.py
+++ b/bin/rblib/__init__.py
@@ -53,27 +53,6 @@ def query_db(query, *args, **kwargs):
         return None
 
 
-def get_status_icon(status):
-    table = {'reproducible': 'weather-clear.png',
-             'FTBFS': 'weather-storm.png',
-             'FTBR': 'weather-showers-scattered.png',
-             'E404': 'weather-severe-alert.png',
-             'depwait': 'weather-snow.png',
-             'NFU': 'weather-few-clouds-night.png',
-             'untested': 'weather-clear-night.png',
-             'blacklisted': 'error.png'}
-    spokenstatus = status
-    if status == 'unreproducible':
-            status = 'FTBR'
-    elif status in ('not for us', 'not_for_us'):
-            status = 'NFU'
-    try:
-        return (status, table[status], spokenstatus)
-    except KeyError:
-        log.exception('Status %s not recognized', status)
-        raise
-
-
 def get_trailing_bug_icon(bug, bugs, package=None):
     html = ''
     if not package:


=====================================
bin/reproducible_common.sh
=====================================
--- a/bin/reproducible_common.sh
+++ b/bin/reproducible_common.sh
@@ -149,7 +149,7 @@ set_icon() {
 					;;
 		E404)			ICON=weather-severe-alert.png
 					;;
-		NFU|not_for_us|"not for us")	ICON=weather-few-clouds-night.png
+		NFU)		ICON=weather-few-clouds-night.png
 					STATE_TARGET_NAME="NFU"
 					;;
 		blacklisted)		ICON=error.png


=====================================
bin/reproducible_html_notes.py
=====================================
--- a/bin/reproducible_html_notes.py
+++ b/bin/reproducible_html_notes.py
@@ -20,13 +20,13 @@ import pystache
 from string import Template
 from collections import OrderedDict
 from math import sqrt
-from rblib.models import Package
-from rblib.bugs import Bugs
 from reproducible_html_packages import gen_packages_html
 from reproducible_html_indexes import build_page
 from sqlalchemy import select, and_, bindparam
 
-from rblib import query_db, get_status_icon, db_table, get_trailing_bug_icon
+from rblib import query_db, db_table, get_trailing_bug_icon
+from rblib.models import Package, Status
+from rblib.bugs import Bugs
 from rblib.confparse import log
 from rblib.html import tab, create_main_navigation, write_html_page
 from rblib.const import (
@@ -321,7 +321,8 @@ def gen_html_issue(issue, suite):
             if not pkgs:
                 continue
             affected += tab*4 + '<p>\n'
-            affected += tab*5 + '<img src="/static/' + get_status_icon(status)[1] + '"'
+            icon = Status.get(status).value.icon
+            affected += tab*5 + '<img src="/static/{}"'.format(icon)
             affected += ' alt="' + status + ' icon" />\n'
             affected += tab*5 + str(len(pkgs)) + ' ' + status + ' packages in ' + suite + '/' + arch +':\n'
             affected += tab*5 + '<code>\n'


=====================================
bin/reproducible_html_packages.py
=====================================
--- a/bin/reproducible_html_packages.py
+++ b/bin/reproducible_html_packages.py
@@ -16,9 +16,9 @@ import pystache
 import apt_pkg
 apt_pkg.init_system()
 
-from rblib import query_db, get_status_icon
+from rblib import query_db
 from rblib.confparse import log, args
-from rblib.models import Package
+from rblib.models import Package, Status
 from rblib.utils import strip_epoch, convert_into_hms_string
 from rblib.html import gen_status_link_icon, write_html_page
 from rblib.const import (
@@ -236,7 +236,7 @@ def gen_suitearch_section(package, current_suite, current_arch):
                     final_status, final_version, status, version)
 
             build_date = package.builds[s][a].build_date
-            status, icon, spokenstatus = get_status_icon(status)
+            status = Status.get(status)
 
             if not (build_date and status != 'blacklisted'):
                 build_date = ''
@@ -249,21 +249,22 @@ def gen_suitearch_section(package, current_suite, current_arch):
             suitearch_details_html = ''
             if (s == current_suite and a == current_arch):
                 suitearch_details_html, default_view = gen_suitearch_details(
-                    package.name, version, s, a, status, spokenstatus, build_date)
+                    package.name, version, s, a,
+                    status.value.name, status.value.spokenstatus, build_date)
 
             dbd_links = get_dbd_links(package.name, strip_epoch(version), s, a)
             dbd_page_uri = dbd_links.get('dbd_page_uri', '')
             suites.append({
                 'package': package.name,
-                'status': status,
+                'status': status.value.name,
                 'version': version,
                 'build_date': build_date,
-                'icon': icon,
-                'spokenstatus': spokenstatus,
+                'icon': status.value.icon,
+                'spokenstatus': status.value.spokenstatus,
                 'li_classes': ' '.join(li_classes),
                 'arch': a,
                 'suite': s,
-                'untested': status == 'untested',
+                'untested': status == Status.UNTESTED,
                 'current_suitearch': s == current_suite and a == current_arch,
                 'package_uri': package_uri,
                 'suitearch_details_html': suitearch_details_html,
@@ -307,9 +308,10 @@ def gen_history_page(package, arch=None):
             record['node1'] = shorten_if_debiannet(record['node1'])
             record['node2'] = shorten_if_debiannet(record['node2'])
             # add icon to result
-            status, icon, spokenstatus = get_status_icon(record['result'])
-            result_html = spokenstatus + ' <img src="/static/{icon}" alt="{spokenstatus}" title="{spokenstatus}"/>'
-            record['result'] = result_html.format(icon=icon, spokenstatus=spokenstatus)
+            status = Status.get(record['result'])
+            result_html = '{spokenstatus}<img src="/static/{icon}" alt="{spokenstatus}" title="{spokenstatus}"/>'
+            record['result'] = result_html.format(
+                icon=status.value.icon, spokenstatus=status.value.spokenstatus)
             # human formatting of build duration
             record['build duration'] = convert_into_hms_string(
                 int(record['build duration']))



View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/compare/99cdf49a6450d5c274959d9bdaa3851809b1e2b1...a349fad1b677d0a44e9033e64d49b683b1fa6e75

-- 
View it on GitLab: https://salsa.debian.org/qa/jenkins.debian.net/compare/99cdf49a6450d5c274959d9bdaa3851809b1e2b1...a349fad1b677d0a44e9033e64d49b683b1fa6e75
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/qa-jenkins-scm/attachments/20180619/d26a498a/attachment-0001.html>


More information about the Qa-jenkins-scm mailing list