2 <!DOCTYPE xsl:stylesheet [
3 <!ENTITY nbsp
" ">
5 <xsl:stylesheet xmlns:
xsl=
"http://www.w3.org/1999/XSL/Transform" version=
"1.0">
6 <xsl:output method=
"html"/>
8 <xsl:template match=
"/">
9 <xsl:variable name=
"buildresults" select=
"//msbuild" />
11 <xsl:when test=
"count($buildresults) > 0">
12 <xsl:apply-templates select=
"$buildresults" />
15 <h2>Log does not contain any XML output from MSBuild.
</h2>
17 Please make sure that MSBuild is executed using the XmlLogger
18 (use the argument:
<b style=
"white-space:nowrap">/logger:Kobush.Build.Logging.XmlLogger,Kobush.Build.dll
</b>).
24 <xsl:template match=
"msbuild">
25 <table class=
"section-table" cellpadding=
"2" cellspacing=
"0" border=
"0" width=
"98%">
27 <td class=
"sectionheader">
28 Build started
<xsl:value-of select=
"@startTime"/>
33 <xsl:apply-templates/>
37 <td class=
"sectionheader">
39 <xsl:when test=
"@success = 'false'">
50 <xsl:variable name=
"errors" select=
"//error" />
51 <xsl:variable name=
"warnings" select=
"//warning" />
52 <xsl:if test=
"count($errors)+count($warnings) > 0">
53 <xsl:apply-templates select=
"$errors"/>
54 <xsl:apply-templates select=
"$warnings"/>
56 <div style=
"color:orangered">
57 <xsl:value-of select=
"count($errors)"/> Error(s)
59 <div style=
"color:gold">
60 <xsl:value-of select=
"count($warnings)"/> Warning(s)
64 Time elapsed
<xsl:value-of select=
"@elapsedTime"/>
70 <xsl:template match=
"project">
71 <div style=
"color:dodgerblue;margin:4 0">
72 Project
"<xsl:value-of select="@file
"/>"
73 <xsl:choose></xsl:choose>
75 <xsl:when test=
"@name">
76 (
<xsl:value-of select=
"@name"/> target(s)):
83 <xsl:apply-templates/>
84 <xsl:if test=
"@success = 'false'">
85 <div style=
"color:dodgerblue;margin:2 0">
86 Done building project
"<xsl:call-template name="projectName
">
87 <xsl:with-param name="string
">
88 <xsl:value-of select="@file
" />
90 </xsl:call-template>" -- FAILED.
95 <xsl:template name=
"projectName">
96 <xsl:param name=
"string" />
98 <xsl:when test=
"contains($string, '\')">
99 <xsl:call-template name=
"projectName">
100 <xsl:with-param name=
"string">
101 <xsl:value-of select=
"substring-after($string, '\')" />
106 <xsl:value-of select=
"$string" />
111 <xsl:template match=
"target">
112 <div style=
"color:dodgerblue;margin:2 0">
113 Target
"<xsl:value-of select="@name
"/>":
116 <div style=
"margin-left:10px;padding-left:10;border-left: 1px solid silver">
117 <xsl:apply-templates />
120 <xsl:if test=
"@success = 'false' and count(*//target/@success[.='false']) = 0">
121 <div style=
"color:dodgerblue;margin:2 0">
122 Done building target
"<xsl:value-of select="@name
"/>" -- FAILED.
127 <xsl:template match=
"task">
128 <div style=
"color:dodgerblue;margin:2 0">
129 Task
"<xsl:value-of select="@name
"/>":
132 <div style=
"margin-left:10px;padding-left:10;border-left: 1px solid silver">
133 <xsl:apply-templates />
136 <div style=
"color:dodgerblue;margin:2 0">
137 Done executing task
"<xsl:value-of select="@name
"/>"
138 <xsl:if test=
"@success = 'false'">-- FAILED
</xsl:if>.
142 <xsl:template match=
"message">
145 <xsl:when test=
"@level = 'low'">
146 <div style=
"color:silver">
147 <xsl:value-of select=
"text()"/>
150 <xsl:when test=
"@level = 'normal'">
151 <div style=
"color:darkgray">
152 <xsl:value-of select=
"text()"/>
156 <div style=
"color:dimgray">
157 <xsl:value-of select=
"text()"/>
163 <xsl:template match=
"error">
164 <div style=
"color:orangered">
165 <xsl:if test=
"@file != ''" >
166 <xsl:value-of select=
"@file"/> (
<xsl:value-of select=
"@line"/>,
<xsl:value-of select=
"@column"/>):
168 error
<xsl:value-of select=
"@code"/>:
<xsl:value-of select=
"text()" />
172 <xsl:template match=
"warning">
173 <div style=
"color:gold">
174 <xsl:if test=
"@file != ''" >
175 <xsl:value-of select=
"@file"/> (
<xsl:value-of select=
"@line"/>,
<xsl:value-of select=
"@column"/>):
177 warning
<xsl:value-of select=
"@code"/>:
<xsl:value-of select=
"text()" />