From 39d32d1b49e7bb16d62345f2edcc787f17d044f8 Mon Sep 17 00:00:00 2001 From: Simon Quigley Date: Wed, 1 Jul 2020 17:20:50 -0500 Subject: [PATCH] Add favicon and make it look slightly less clunky. --- assets/favicon.png | Bin 0 -> 12428 bytes metrics | 9 +++++++++ templates/index.html | 4 ++++ templates/jenkins.html | 6 +++++- 4 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 assets/favicon.png diff --git a/assets/favicon.png b/assets/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..1a8885a51c570dc79a83b27e7a3da74f547b0436 GIT binary patch literal 12428 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 literal 0 HcmV?d00001 diff --git a/metrics b/metrics index 8ee838b..27ab4fa 100755 --- a/metrics +++ b/metrics @@ -21,6 +21,7 @@ import sqlite3 from jinja2 import Template from modules.jenkins import JenkinsModule from os import path +from shutil import copytree, rmtree ENABLED_MODULES = [JenkinsModule] @@ -143,3 +144,11 @@ if __name__ == "__main__": # Render the summary page summary() + + # Copy the assets + # FIXME: clunky and racey + try: + copytree("assets", "output/assets") + except FileExistsError: + rmtree("output/assets") + copytree("assets", "output/assets") diff --git a/templates/index.html b/templates/index.html index 2cdeca8..db4f22a 100644 --- a/templates/index.html +++ b/templates/index.html @@ -7,6 +7,10 @@ + + + + Summary for Lubuntu Project Metrics
diff --git a/templates/jenkins.html b/templates/jenkins.html index c39d9a8..c9fdd3b 100644 --- a/templates/jenkins.html +++ b/templates/jenkins.html @@ -10,12 +10,16 @@ + + + + Jenkins data for the past {{ days }} day{{ "s" if days > 1 }}
-

Jenkins data for the past {{ days }} day(s)

+

Jenkins data for the past {{ days }} day{{ "s" if days > 1 }}

Average number of failing jobs: {{ average.failing }}

Average number of non-passing jobs: {{ average.nonpassing }}