Initial commit for TF-A CI scripts

Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
diff --git a/script/gen_test_report.css b/script/gen_test_report.css
new file mode 100644
index 0000000..e7d6df3
--- /dev/null
+++ b/script/gen_test_report.css
@@ -0,0 +1,132 @@
+/*
+ * Copyright (c) 2019, Arm Limited. All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+/* Result colors */
+.success {
+  background-color: #b4fd98;
+}
+.failure {
+  background-color: #ffb8b8;
+}
+.unstable {
+  background-color: #ffe133;
+}
+
+/* TF report */
+#tf-report-main {
+  margin-bottom: 10px;
+  margin-top: 10px;
+}
+#tf-report-main table {
+  border: 1px dotted #aaa;
+  border-collapse: collapse;
+  font: 10px monospace;
+}
+#tf-report-main td, #tf-report-main th {
+  border: 1px solid #c8c8c8;
+  padding: 5px 10px;
+  font: 10px monospace;
+  vertical-align: middle;
+}
+#tf-report-main th {
+  background-color: #e0f7ff;
+  font-weight: bold;
+}
+#tf-report-main .buildlink {
+  display: inline-block;
+  height: 16px;
+  margin-left: 10px;
+  vertical-align: middle;
+  /* Console icon 16x16 */
+  background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACJUlEQVR42qVTO4saYRS9n/EtCoKvQgZBFCyUyDba2BgRJF2a7QQDYmOhhSJCViw0oI2NU7gsFrEQZKsUEVKIGMXB/AQ3jJjOahVf6yNzvzAQAm4WcuEyMPPdc8853xkC/1mk1WppdTrdW71eLyeEwPl8vngYv2Efj0eYzWY/o9HoV9Ltdr+EQqEwDj9XIrAIslwuIZ/Pvye9Xo+32WxMo9EAr9f7T5DD4QCLxQLi8Tik02mW9Pt93mAwMN84DqxWK3wfj2H5+PgskFarhVQqBdlsliWDwYA3Go3Mh5sbeHd9DaFIBD4WCsA/PFwEcDqdEIvFoFqtsmQ4HFKAu1YL3oTD8Pn+HrjhkBp1SYbdbodisQi1Wo0lo9GIN5lMjNvtBolEAsKNgD8QgNdXV4DGfrq9hfV6TQFRP5oXDAahUqlAvV5nyXg8pgAOhwOUSiUoFApQq9X0iQDb7ZYO7vd72Gw2sNvtICLILJfLIBjPEo7jeIvFwng8HlCpVLTlcjlIpVIQc/H09EQHEQDZIIOC4FOz2WTJZDLhzWYz4/P5QKPR0O3IRCaTUYDT6US3IxMcXq1WEBAkZjIZEEL4GwAlICpejwiCLNAT1I7bxWH0wO/3QzKZhHa7TT344XK5bNPpFMQ0imkTY4seoAyxkSFK7HQ6dZLL5UqJRCLzSig8/Gcj/b/fiS2kcVkqlaJEiK9kPp/bhO2Kl/6ByEwAXwtSZ+SlQ5fqF5qGN9ApekVGAAAAAElFTkSuQmCC') no-repeat left top;
+  width: 16px;
+}
+#tf-report-main .emptycell {
+  background-color: #eee;
+}
+#tf-report-main .failure {
+  vertical-align: middle;
+}
+#tf-report-main .success {
+  vertical-align: middle;
+}
+#tf-report-main .unstable {
+  vertical-align: middle;
+}
+#tf-report-main .result {
+  display: inline-block;
+  min-width: 50px;
+}
+#tf-report-main .dim {
+  opacity: 0.2;
+}
+#tf-report-main input[type="checkbox"] {
+  margin-left: 10px;
+  vertical-align: middle;
+}
+
+/* Label container */
+.tf-label-container {
+  margin-bottom: 10px;
+  margin-top: 10px;
+  position: relative;
+}
+.tf-label-container .tf-label-label {
+  background-color: white;
+  left: 10px;
+  position: absolute;
+  top: -0.65em;
+}
+.tf-label-container pre {
+  white-space: pre;
+}
+.tf-label-container .tf-label-content,
+.tf-label-container pre {
+  border: 1px dotted #ffb8b8;
+  padding: 1em;
+}
+
+/* Rebuild table */
+#tf-rebuild-button, #tf-rebuild-all-button {
+  background-color: #4b758b; /* Same color as Jenkis buttons */
+  border: 1px solid #aaa;
+  color: #eee;
+  display: block;
+  font-weight: bold;
+  margin-bottom: 10px;
+  padding: 5px 15px;
+  width: 250px;
+}
+#tf-rebuild-button[disabled] {
+  background-color: #ccc;
+  color: #ddd;
+}
+#tf-rebuild-table {
+  margin-bottom: 20px;
+  margin-top: 20px;
+}
+#tf-rebuild-table .desc-col {
+  padding-right: 10px;
+  vertical-align: middle;
+}
+#tf-rebuild-table .button-col {
+  border-left: 1px solid #c8c8c8;
+  padding-left: 10px;
+  vertical-align: middle;
+}
+#tf-rebuild-table .select-row {
+  font-size: 0.8em;
+  padding-bottom: 15px;
+  padding-top: 10px;
+  text-align: center;
+}
+#tf-rebuild-table .select-all {
+  border: 1px solid #ccc;
+  border-radius: 3px;
+  cursor: pointer;
+  display: inline-block;
+  padding: 2px 3px 0px 3px;
+}