1 There is a new log filter to generate HTML output. For example, |
1 There is a new log filter to generate HTML output. For example, |
2 |
2 |
3 sbs --filters=html -f logdir |
3 sbs --filters=html -f name |
4 |
4 |
5 will produce an output file "logdir/index.html" and other supporting files |
5 will produce an output file "name_html/index.html" and other supporting files |
6 in the directory "logdir". This can be used alongside the Bz2 filter to |
6 in the directory "name_html". This can be used alongside the Bz2 filter to |
7 generate both a human readable summary and a compressed log for further |
7 generate both a human readable summary and a compressed log for further |
8 detailed machine analysis if required: for example, |
8 detailed machine analysis if required: for example, |
9 |
9 |
10 sbs --filters=html,bz2log -f name |
10 sbs --filters=html,bz2log -f name |
11 |
11 |
12 will produce a folder "name" and a file "name.bz2". |
12 will produce a folder "name_html" and a file "name.bz2". |
13 |
13 |
14 |
14 |
15 If a build is done in several parts, for example, |
15 If a build is done in several parts, for example, |
16 |
16 |
17 sbs -s sys1.xml --filters=html,bz2log -f build/part1 |
17 sbs -s sys1.xml --filters=html,bz2log -f build/part1 |
19 sbs -s sys3.xml --filters=html,bz2log -f build/part3 |
19 sbs -s sys3.xml --filters=html,bz2log -f build/part3 |
20 |
20 |
21 Then there is a new script "SBS_HOME/bin/sbs_index.py" which can produce a |
21 Then there is a new script "SBS_HOME/bin/sbs_index.py" which can produce a |
22 single index linking to all the individual parts: for example, |
22 single index linking to all the individual parts: for example, |
23 |
23 |
24 sbs_index.py build/part1 build/part2 build/part3 build/index.html |
24 sbs_index.py build/part{1,2,3}_html build/index.html |
25 |
25 |
26 the first parameters are the directories to search for summaries and the |
26 the first parameters are the directories to search for summaries and the |
27 last parameter is the name of the overall index file. Directories are |
27 last parameter is the name of the overall index file. Directories are |
28 searched recursively, so the above example is the same as, |
28 searched recursively, so the above example is the same as, |
29 |
29 |
30 sbs_index.py build build/index.html |
30 sbs_index.py build build/index.html |
31 |
31 |
32 |
32 |
33 Text in the Raptor logs is classified as Error, Warning or Remark using the |
33 Text in the Raptor logs is classified as Error, Critical, Warning or Remark |
34 list of regular expressions in the file SBS_HOME/lib/config/logfile_regex.csv |
34 using the list of regular expressions in the file, |
|
35 |
|
36 SBS_HOME/lib/config/logfile_regex.csv |
|
37 |
35 but this can be overriden by placing a file of the same name in the kit in |
38 but this can be overriden by placing a file of the same name in the kit in |
36 its EPOCROOT/epoc32/sbs_config folder. |
39 its EPOCROOT/epoc32/sbs_config folder. |
37 |
40 |
38 |
41 |
39 The filter also checks that all the files which were listed in "what" output |
42 The filter also checks that all the files which were listed in "what" output |
40 actually exist at the end of the build. Any files which don't exist are |
43 actually exist at the end of the build. Any files which don't exist are |
41 recorded as "Missing files". |
44 recorded as "Missing files". |
|
45 |
|
46 |
|
47 Sometimes when a target cannot be built you will see errors like this in the |
|
48 HTML report, |
|
49 " |
|
50 /opt/nokia/wk99/epoc32/build/something |
|
51 |
|
52 required the following files which could not be found, |
|
53 |
|
54 /opt/nokia/wk99/epoc32/include/foo |
|
55 /opt/nokia/wk99/epoc32/include/bar |
|
56 " |
|
57 |
|
58 which means that a dependency was created on "foo" and "bar" but the build |
|
59 did not contain any information anywhere on how to build those files. This |
|
60 is often caused by someone just forgetting to add files to the asset. |
|
61 |