--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/common/tools/uh2diamonds.pl Wed May 26 17:48:56 2010 +0100
@@ -0,0 +1,90 @@
+# Copyright (c) 2009 Symbian Foundation Ltd
+# This component and the accompanying materials are made available
+# under the terms of the License "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Symbian Foundation Ltd - initial contribution.
+#
+# Contributors:
+#
+# Description:
+# Translates uh report (index.html) to a Diamonds file
+
+use strict;
+
+use Getopt::Long;
+
+my $input = "\\output\\logs\\html\\index.html";
+my $output = "\\output\\logs\\diamonds_uh.xml";
+my $help = 0;
+GetOptions((
+ 'in=s' => \$input,
+ 'out=s' => \$output,
+ 'help!' => \$help
+));
+
+if ($help)
+{
+ print "Translates uh report (index.html) to a Diamonds file\n";
+ print "Usage: perl uh2diamonds.pl [--in=UHINDEX] [--out=XMLFILE]\n";
+ print "\n";
+ print "UHINDEX is optional, its default is \\output\\logs\\html\\index.html\n";
+ print "XMLFILE is optional, its default is \\output\\logs\\diamonds_uh.xml\n";
+ exit(0);
+}
+
+my $critical = 0;
+my $major = 0;
+my $minor = 0;
+my $unknown = 0;
+my $missing = 0;
+
+open(INDEX, $input) or die "Can't open $input for reading";
+while (<INDEX>)
+{
+ my $line = $_;
+ if ($line =~ m,<tr><td><a href='.*'>\w+</a></td><td>(\d+)</td><td>(\d+)</td><td>(\d+)</td><td>(\d+)</td></tr>,)
+ {
+ $critical += $1;
+ $major += $2;
+ $minor += $3;
+ $unknown += $4;
+ }
+ elsif($line =~ m,<tr><td><a href='.+'>.+</a></td><td>(\d+)</td><td>(\d+)</td><td>(\d+)</td><td>(\d+)</td><td>(\d+)</td></tr>,)
+ {
+ $critical += $1;
+ $major += $2;
+ $minor += $3;
+ $unknown += $4;
+ $missing += $5;
+ }
+}
+close(INDEX);
+
+my $xml_content = <<_EOX;
+
+<?xml version=\"1.0\" encoding=\"utf-8\"?>
+<diamonds-build>
+ <schema>14</schema>
+ <faults>
+ <total severity=\"Raptor Build Critical\">$critical</total>
+ <total severity=\"Raptor Build Major\">$major</total>
+ <total severity=\"Raptor Build Minor\">$minor</total>
+ <total severity=\"Raptor Build Unknown\">$unknown</total>
+ <total severity=\"Missing Artifacts\">$missing</total>
+ </faults>
+</diamonds-build>
+_EOX
+
+if (open(XML, ">$output"))
+{
+ print XML $xml_content;
+ close(XML);
+ print "Wrote Diamonds file: $output\n";
+}
+else
+{
+ warn "Could not write to file: $output\n";
+}
\ No newline at end of file