| Line 2... |
Line 2... |
| 2 |
|
2 |
|
| 3 |
<macrodef name="ant-release">
|
3 |
<macrodef name="ant-release">
|
| 4 |
|
4 |
|
| 5 |
<attribute name="package" default="${ant.project.name}"/>
|
5 |
<attribute name="package" default="${ant.project.name}"/>
|
| 6 |
<attribute name="release-target" default="-do-release"/>
|
6 |
<attribute name="release-target" default="-do-release"/>
|
| - |
|
7 |
<attribute name="version" default=""/>
|
| 7 |
|
8 |
|
| 8 |
<sequential>
|
9 |
<sequential>
|
| 9 |
|
10 |
|
| 10 |
<basename property="ant.buildfile.filename" file="${ant.file}"/>
|
11 |
<basename property="ant.buildfile.filename" file="${ant.file}"/>
|
| 11 |
<dirname property="ant.buildfile.path" file="${ant.file}"/>
|
12 |
<dirname property="ant.buildfile.path" file="${ant.file}"/>
|
| Line 14... |
Line 15... |
| 14 |
<propertyregex property = "ant.buildfile.lpath"
|
15 |
<propertyregex property = "ant.buildfile.lpath"
|
| 15 |
input = "${ant.buildfile.path}"
|
16 |
input = "${ant.buildfile.path}"
|
| 16 |
regexp = "[A-Za-z]\:\\(.*)"
|
17 |
regexp = "[A-Za-z]\:\\(.*)"
|
| 17 |
select = "\1"/>
|
18 |
select = "\1"/>
|
| 18 |
|
19 |
|
| - |
|
20 |
<if><equals arg1="@{version}" arg2=""/>
|
| - |
|
21 |
<then>
|
| 19 |
<antshield packageName="${ant.project.name}"/>
|
22 |
<antshield packageName="${ant.project.name}"/>
|
| - |
|
23 |
</then>
|
| - |
|
24 |
<else>
|
| - |
|
25 |
<property name="jants.build.version" value="@{version}"/>
|
| - |
|
26 |
<property name="antshield.release" value="@{version}"/>
|
| - |
|
27 |
</else>
|
| 20 |
|
28 |
</if>
|
| 21 |
<!-- These properties CAN be set by the Jants cclabel task, but I don't trust it any more. -->
|
29 |
<!-- These properties CAN be set by the Jants cclabel task, but I don't trust it any more. -->
|
| 22 |
<!-- I plan to phase out the old cclabel stuff and make it into scripts. -->
|
30 |
<!-- I plan to phase out the old cclabel stuff and make it into scripts. -->
|
| 23 |
<property name="jants.build.label" value="@{package}_${antshield.release}"/>
|
31 |
<property name="jants.build.label" value="@{package}_${antshield.release}"/>
|
| 24 |
<property name="jants.build.view.name" value="${user.name}_jats_build_${jants.build.label}"/>
|
32 |
<property name="jants.build.view.name" value="${user.name}_jats_build_${jants.build.label}"/>
|
| 25 |
<property name="jants.build.view.path" value="O:\${jants.build.view.name}\${ant.buildfile.lpath}"/>
|
33 |
<property name="jants.build.view.path" value="O:\${jants.build.view.name}\${ant.buildfile.lpath}"/>
|
| Line 36... |
Line 44... |
| 36 |
version = "${antshield.release}"
|
44 |
version = "${antshield.release}"
|
| 37 |
findCheckouts = "true"
|
45 |
findCheckouts = "true"
|
| 38 |
mkview = "true"/>
|
46 |
mkview = "true"/>
|
| 39 |
|
47 |
|
| 40 |
<!-- Update the deskpkg file with the version to be released. -->
|
48 |
<!-- Update the deskpkg file with the version to be released. -->
|
| 41 |
<echo message="${antshield.release}" file=".undo"/>
|
49 |
<echo message="@{package}_${antshield.release}" file=".undo"/>
|
| 42 |
|
50 |
|
| 43 |
<ant antfile = "${ant.buildfile.filename}"
|
51 |
<ant antfile = "${ant.buildfile.filename}"
|
| 44 |
dir = "${jants.build.view.path}"
|
52 |
dir = "${jants.build.view.path}"
|
| 45 |
inheritAll = "false"
|
53 |
inheritAll = "false"
|
| 46 |
inheritRefs = "false"
|
54 |
inheritRefs = "false"
|
| 47 |
target = "@{release-target}">
|
55 |
target = "@{release-target}">
|
| 48 |
<property name="jants.build.version" value="${antshield.release}"/>
|
56 |
<property name="jants.build.version" value="${antshield.release}"/>
|
| 49 |
<property name="jants.build.label" value="${jants.build.label}"/>
|
57 |
<property name="jants.build.label" value="${jants.build.label}"/>
|
| 50 |
<property name="jants.build.view.name" value="${jants.build.view.name}"/>
|
58 |
<property name="jants.build.view.name" value="${jants.build.view.name}"/>
|
| 51 |
<property name="jants.build.view.path" value="${jants.build.view.path}"/>
|
59 |
<property name="jants.build.view.path" value="${jants.build.view.path}"/>
|
| - |
|
60 |
<property name="jants.project.name" value="${ant.project.name}"/>
|
| 52 |
</ant>
|
61 |
</ant>
|
| 53 |
|
62 |
|
| 54 |
|
63 |
|
| 55 |
<cclocklabel labelname="${jants.build.label}"/>
|
64 |
<cclocklabel labelname="${jants.build.label}"/>
|
| 56 |
|
65 |
|
| Line 74... |
Line 83... |
| 74 |
<available property="undo.available" file=".undo"/>
|
83 |
<available property="undo.available" file=".undo"/>
|
| 75 |
<fail unless="undo.available" message="Release cannot be undone."/>
|
84 |
<fail unless="undo.available" message="Release cannot be undone."/>
|
| 76 |
<loadfile srcFile=".undo" property="undo.version"/>
|
85 |
<loadfile srcFile=".undo" property="undo.version"/>
|
| 77 |
<echo message="Undoing release ${undo.version}"/>
|
86 |
<echo message="Undoing release ${undo.version}"/>
|
| 78 |
|
87 |
|
| 79 |
<ccrmlabel labelname="@{package}_${undo.version}"/>
|
88 |
<ccrmlabel labelname="${undo.version}"/>
|
| 80 |
<ccrmview viewname="${user.name}_jats_build_@{package}_${undo.version}"/>
|
89 |
<ccrmview viewname="${user.name}_jats_build_${undo.version}"/>
|
| 81 |
|
90 |
|
| 82 |
</sequential>
|
91 |
</sequential>
|
| 83 |
|
92 |
|
| 84 |
</macrodef>
|
93 |
</macrodef>
|
| 85 |
|
94 |
|