PAL: Refactor the processing of spec and download
[csit.git] / resources / tools / presentation / specifications / trending / environment.yaml
1 ################################################################################
2 ###                          E N V I R O N M E N T                           ###
3 ################################################################################
4
5 - type: "environment"
6
7   spec-files:
8     - "specifications/trending/data_sets.yaml"
9     - "specifications/trending/layouts.yaml"
10     - "specifications/trending/elements.yaml"
11
12   paths:
13     # Top level directories:
14     ## Working directory
15     DIR[WORKING]: "_tmp"
16     ## Build directories
17     DIR[BUILD,HTML]: "_build"
18     ## Static .rst files
19     DIR[RST]: "../../../docs/cpta"
20
21     # Static html content
22     DIR[STATIC]: "{DIR[BUILD,HTML]}/_static"
23     DIR[STATIC,VPP]: "{DIR[STATIC]}/vpp"
24     DIR[STATIC,ARCH]: "{DIR[STATIC]}/archive"
25
26     # Working directories
27     ## Input data files (.zip, .xml)
28     DIR[WORKING,DATA]: "{DIR[WORKING]}/data"
29     ## Static source files from git
30     DIR[WORKING,SRC]: "{DIR[WORKING]}/src"
31     DIR[WORKING,SRC,STATIC]: "{DIR[WORKING,SRC]}/_static"
32
33     # .css patch file
34     DIR[CSS_PATCH_FILE]: "{DIR[STATIC]}/theme_overrides.css"
35     DIR[CSS_PATCH_FILE2]: "{DIR[WORKING,SRC,STATIC]}/theme_overrides.css"
36
37   urls:
38     URL[JENKINS,CSIT]: "https://jenkins.fd.io/view/csit/job"
39
40   make-dirs:
41   # List the directories which are created while preparing the environment.
42   # All directories MUST be defined in "paths" section.
43   - "DIR[WORKING,DATA]"
44   - "DIR[WORKING,SRC,STATIC]"
45   - "DIR[BUILD,HTML]"
46   - "DIR[STATIC,VPP]"
47   - "DIR[STATIC,ARCH]"
48   build-dirs:
49   # List the directories where the results (build) is stored.
50   # All directories MUST be defined in "paths" section.
51   - "DIR[BUILD,HTML]"
52
53   testbeds:
54     "10.30.51.45": "LF-2n-SKX-21"
55     "10.30.51.53": "LF-2n-SKX-22"
56     "10.30.51.55": "LF-2n-SKX-23"
57     "10.30.51.57": "LF-2n-SKX-24"
58     "10.32.8.19": "LF-2n-CLX-27"
59     "10.32.8.21": "LF-2n-CLX-28"
60     "10.32.8.23": "LF-2n-CLX-29"
61     "10.30.51.16": "LF-3n-HSW-01"
62     "10.30.51.20": "LF-3n-HSW-02"
63     "10.30.51.24": "LF-3n-HSW-03"
64     "10.30.51.48": "LF-3n-SKX-31"
65     "10.30.51.60": "LF-3n-SKX-32"
66     "10.30.51.49": "LF-3n-TSH-33"
67     "10.30.51.49": "LF-2n-TX2-34"
68     "10.32.8.25": "LF-2n-ZN2-210"
69     "10.32.8.10": "LF-DNV"
70
71   # Data sources are used in this order:
72   data-sources:
73     # JSON from S3
74     - type: "json"
75       url: "https://logs.nginx.service.consul/vex-yul-rot-jenkins-1"
76       path: "{job}/{build}/{filename}"
77       file-name: "output.json.gz"
78       file-format: ".gz"
79       enabled: False
80     # XML
81     - type: "xml"
82       url: "https://logs.nginx.service.consul/vex-yul-rot-jenkins-1"
83       path: "{job}/{build}/archives/{filename}"
84       file-name: "output_info.xml.gz"
85       file-format: ".gz"
86       enabled: True
87     - type: "xml"
88       url: "https://logs.nginx.service.consul/vex-yul-rot-jenkins-1"
89       path: "{job}/{build}/{filename}"
90       file-name: "output_info.xml.gz"
91       file-format: ".gz"
92       enabled: True
93     - type: "xml"
94       url: "https://logs.fd.io/production/vex-yul-rot-jenkins-1"
95       path: "{job}/{build}/archives/{filename}"
96       file-name: "output_info.xml.gz"
97       file-format: ".gz"
98       enabled: True
99     - type: "xml"
100       url: "https://logs.fd.io/production/vex-yul-rot-jenkins-1"
101       path: "{job}/{build}/{filename}"
102       file-name: "output_info.xml.gz"
103       file-format: ".gz"
104       enabled: True
105     - type: "xml"
106       url: "https://logs.nginx.service.consul/vex-yul-rot-jenkins-1"
107       path: "{job}/{build}/archives/{filename}"
108       file-name: "output.xml.gz"
109       file-format: ".gz"
110       enabled: True
111     - type: "xml"
112       url: "https://logs.nginx.service.consul/vex-yul-rot-jenkins-1"
113       path: "{job}/{build}/{filename}"
114       file-name: "output.xml.gz"
115       file-format: ".gz"
116       enabled: True
117     - type: "xml"
118       url: "https://logs.fd.io/production/vex-yul-rot-jenkins-1"
119       path: "{job}/{build}/archives/{filename}"
120       file-name: "output.xml.gz"
121       file-format: ".gz"
122       enabled: True
123     - type: "xml"
124       url: "https://logs.fd.io/production/vex-yul-rot-jenkins-1"
125       path: "{job}/{build}/{filename}"
126       file-name: "output.xml.gz"
127       file-format: ".gz"
128       enabled: True
129
130   archive-inputs: False
131
132   reverse-input: True  # Needed for trending, not important for the report
133
134   # Number of days from now to the past. Only files generated in this
135   # time period are used.
136   # Only for trending
137   time-period: 180
138
139   mapping-file: ""
140
141   ignore-list: ""
142
143   alerting:
144
145     alerts:
146
147 # As Jenkins slave is not configured to send emails, this is now only as
148 # a working example:
149 #
150 #      # Send the list of failed tests vie email.
151 #      # Pre-requisites:
152 #      # - SMTP server is installed on the Jenkins slave
153 #      # - SMTP server is configured to send emails. Default configuration is
154 #      #   sufficient.
155 #      email-failed-tests:
156 #        # Title is used in logs and also as the email subject.
157 #        title: "Trending: Failed Tests"
158 #        # Type of alert.
159 #        type: "failed-tests"
160 #        # How to send the alert. The used way must be specified in the
161 #        # configuration part.
162 #        way: "email"
163 #        # Data to be included in the alert.
164 #        # Here is used the list of tables generated by the function
165 #        # "table_failed_tests_html".
166 #        include:
167 #        - "failed-tests-3n-hsw"
168 #        - "failed-tests-3n-skx"
169 #        - "failed-tests-2n-skx"
170 #        # This url is used in the tables instead of the original one. The aim
171 #        # is to make the links usable also from the email.
172 #        url: "https://docs.fd.io/csit/master/trending/trending"
173
174       # Jenkins job sends the email with failed tests.
175       # Pre-requisites:
176       # - Jenkins job is configured to send emails in "Post-build Actions" -->
177       #   "Editable Email Notification".
178       jenkins-send-failed-tests:
179         title: "Trending: Failed Tests"
180         type: "failed-tests"
181         way: "jenkins"
182         include:
183           - "last-failed-tests-vpp-2n-skx-mrr"
184           - "last-failed-tests-vpp-3n-skx-mrr"
185           - "last-failed-tests-vpp-2n-clx-mrr"
186           - "last-failed-tests-vpp-2n-zn2-mrr"
187           - "last-failed-tests-vpp-3n-hsw-mrr"
188           - "last-failed-tests-vpp-3n-tsh-mrr"
189           - "last-failed-tests-vpp-2n-tx2-mrr"
190           - "last-failed-tests-vpp-2n-dnv-mrr"
191           - "last-failed-tests-vpp-3n-dnv-mrr"
192           - "last-failed-tests-dpdk-2n-skx-mrr"
193           - "last-failed-tests-dpdk-3n-skx-mrr"
194           - "last-failed-tests-dpdk-2n-clx-mrr"
195           - "last-failed-tests-dpdk-3n-hsw-mrr"
196           - "last-failed-tests-dpdk-3n-tsh-mrr"
197           - "last-failed-tests-dpdk-2n-tx2-mrr"
198           - "last-failed-tests-vpp-2n-skx-ndrpdr"
199           - "last-failed-tests-vpp-3n-skx-ndrpdr"
200           - "last-failed-tests-vpp-2n-clx-ndrpdr"
201           - "last-failed-tests-vpp-3n-hsw-ndrpdr"
202         urls:
203           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master-2n-skx"
204           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master-3n-skx"
205           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master-2n-clx"
206           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master-2n-zn2"
207           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master"
208           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master-3n-tsh"
209           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master-2n-tx2"
210           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master-2n-dnv"
211           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-mrr-daily-master-3n-dnv"
212           - "https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-mrr-weekly-master-2n-skx"
213           - "https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-mrr-weekly-master-3n-skx"
214           - "https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-mrr-weekly-master-2n-clx"
215           - "https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-mrr-weekly-master"
216           - "https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-mrr-weekly-master-3n-tsh"
217           - "https://jenkins.fd.io/view/csit/job/csit-dpdk-perf-mrr-weekly-master-2n-tx2"
218           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-ndrpdr-weekly-master-2n-skx"
219           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-ndrpdr-weekly-master-3n-skx"
220           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-ndrpdr-weekly-master-2n-clx"
221           - "https://jenkins.fd.io/view/csit/job/csit-vpp-perf-ndrpdr-weekly-master-3n-hsw"
222         url-details: "https://docs.fd.io/csit/master/trending/introduction/failures.html"
223
224     configurations:
225       # Configuration of the email notifications.
226       email:
227         # SMTP server
228         server: "localhost"
229         # List of recipients.
230         address-to:
231         - "csit-report@lists.fd.io"
232         # Sender
233         address-from: "testuser@testserver.com"
234
235       # Configuration of notifications sent by Jenkins.
236       jenkins:
237         # The directory in the workspace where the generated data is stored and
238         # then read by Jenkins job.
239         output-dir: "_build/_static/vpp"
240         # The name of the output files. ASCII text and HTML formats are
241         # generated.
242         output-file: "trending-failed-tests"
243         # If defined, all output files are zipped into this file.
244         zip-output: "failed-tests.tar.gz"
245
246 ################################################################################
247 ###                               S T A T I C                                ###
248 ################################################################################
249
250 - type: "static"
251   src-path: "{DIR[RST]}"
252   dst-path: "{DIR[WORKING,SRC]}"
253
254 ################################################################################
255 ###                               O U T P U T                                ###
256 ################################################################################
257
258 - type: "output"
259   arch-file-format:  # moved from input, TODO: change it in the code
260     - ".gz"
261     - ".zip"
262   output: "trending"
263   format:
264     html:
265     - full