blob: b30be413451ed2724bbe3cecdfc6fb5bb36f4a3c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Ant-contrib Tasks: Relentless</title>
</head>
<body>
<h1>Relentless</h1>
<p>The <relentless> task will execute all of the
nested tasks, regardless of whether one or more of the
nested tasks fails. When <relentless> has completed
executing the nested tasks, it will either
<ul>
<li>fail, if any one or more of the nested tasks failed; or
<li>succeed, if all of the nested tasks succeeded.
</ul>
An appropriate message will be written to the log.
</p>
<P>
Tasks are executed in the order that they appear within the
<relentless> task. It is up to the user to ensure that
relentless execution of the
nested tasks is safe.
</p>
<p><em>
This task only works for ant version greater than or equal
to ant 1.6.0.
</em>
</p>
<h2>Parameters</h2>
<table border="1" cellpadding="2" cellspacing="0">
<tr>
<th>Attribute</th>
<th>Description</th>
<th>Required</th>
</tr>
<tr>
<td valign="top">description</td>
<td valign="top">A string that will be included in the log output. This
can be useful for helping to identify sections of large Ant builds.</td>
<td align="center" valign="top">No</td>
</tr>
<tr>
<td valign="top">terse</td>
<td valign="top">Setting this to <code>true</code> will eliminate some of the progress
output generated by <relentless>. This can reduce clutter in some
cases. The default value is <code>false</code>.</td>
<td align="center" valign="top">No</td>
</tr>
</table>
<h2>Nested elements</h2>
<h3>task list</h3>
<p>
The only nested element supported by <relentless> is a list of tasks
to be executed. At least one task must be specified.
</p>
<P>
It is important to note that <relentless> only proceeds relentlessly
from one task to the next - it does <b>not</b> apply recursively to any tasks
that might be invoked by these
nested tasks. If a nested task invokes some other list of tasks (perhaps
by <antcall> for example), and one of those other tasks fails, then the
nested task will stop at that point.
</p>
<h3>Example</h3>
<p>
A relentless task to print out the first five canonical variable names:
<blockquote>
<pre><relentless description="The first five canonical variable names.">
<echo>foo</echo>
<echo>bar</echo>
<echo>baz</echo>
<echo>bat</echo>
<echo>blah</echo>
</relentless></pre>
</blockquote>
which should produce output looking more or less like
<blockquote>
<pre>[relentless] Relentlessly executing: The first five canonical variable names.
[relentless] Executing: task 1
[echo] foo
[relentless] Executing: task 2
[echo] bar
[relentless] Executing: task 3
[echo] baz
[relentless] Executing: task 4
[echo] bat
[relentless] Executing: task 5
[echo] blah
[relentless] All tasks completed successfully.</pre>
</blockquote>
</p>
If you change the first line to set the <code>terse</code> parameter,
<pre> <relentless terse="true" description="The first five canonical variable names."/></pre>the
output will look more like this:
<blockquote>
<pre>[relentless] Relentlessly executing: The first five canonical variable names.
[echo] foo
[echo] bar
[echo] baz
[echo] bat
[echo] blah
[relentless] All tasks completed successfully.</pre>
</blockquote>
</p>
<p>
If we change the third task to deliberately fail
<blockquote>
<pre><relentless terse="true" description="The first five canonical variable names.">
<echo>foo</echo>
<echo>bar</echo>
<fail>baz</fail>
<echo>bat</echo>
<echo>blah</echo>
</relentless></pre>
</blockquote>
then the output should look something like this.
<blockquote>
<pre>[relentless] Relentlessly executing: The first five canonical variable names.
[echo] foo
[echo] bar
[relentless] Task task 3 failed: baz
[echo] bat
[echo] blah
BUILD FAILED
/home/richter/firmware/sensor/build.xml:1177: Relentless execution: 1 of 5 tasks failed.</pre>
</blockquote>
</p>
<hr>
<p align="center">Copyright © 2005 Ant-Contrib Project. All
rights Reserved.</p>
</body>
</html>
|