3 <taskdef resource=
"net/sf/antcontrib/antlib.xml" />
5 <target name=
"simple-bundles" depends=
"generate-poms,deploy-pom">
8 <target name=
"generate-poms">
10 <loadfile property=
"distributionManagement"
11 srcFile=
"distributionManagement.xml"/>
13 <property name=
"targetDir" location=
"target" />
14 <mkdir dir=
"${targetDir}" />
16 <copy todir=
"${targetDir}/bundles">
17 <fileset dir=
"${bundlesBase}" includes=
"**" excludes=
"*.xml,.*,target/**" />
20 <pathconvert property=
"dirs" pathsep=
",">
22 <dirset dir=
"${targetDir}/bundles" includes=
"*" />
30 <contains string=
"${projectVersion}" substring=
"-SNAPSHOT" />
32 <property name=
"qualifier" value=
"SNAPSHOT" />
36 <format property=
"qualifier" pattern=
"yyyyMMdd" />
42 <property name=
"aggregatorPomFile" value=
"${targetDir}/bundles/pom.xml" />
43 <echo file=
"${aggregatorPomFile}">
46 <modelVersion>4.0.0</modelVersion>
47 <groupId>${projectGroupId}
</groupId>
48 <artifactId>aggregator
</artifactId>
49 <version>${projectVersion}
</version>
50 <packaging>pom
</packaging>
53 <for list=
"${dirs}" param=
"dir">
56 <echo file=
"${aggregatorPomFile}" append=
"true">
57 <![CDATA[
<module>@{dir}
</module>]]
></echo>
60 <echo file=
"${aggregatorPomFile}" append=
"true">
62 <module>bundles
</module>
64 ${distributionManagement}
69 <for list=
"${dirs}" param=
"dir">
72 <echo>Generate POM for @{dir}
</echo>
74 <var name=
"bundleDir" value=
"${targetDir}/bundles/@{dir}" />
75 <mkdir dir=
"${bundleDir}/target" />
78 <replace file=
"${bundleDir}/META-INF/MANIFEST.MF" token=
"qualifier" value=
"${qualifier}" />
80 <copy file=
"${bundleDir}/META-INF/MANIFEST.MF" tofile=
"${bundleDir}/target/bundle.properties" />
81 <replace file=
"${bundleDir}/target/bundle.properties" token=
" " value=
"" />
82 <replace file=
"${bundleDir}/target/bundle.properties" token=
":" value=
"=" />
83 <replace file=
"${bundleDir}/target/bundle.properties" token=
".SNAPSHOT" value=
"-SNAPSHOT" />
84 <var file=
"${bundleDir}/target/bundle.properties" />
86 <copy file=
"pom-template.xml" toFile=
"${bundleDir}/pom.xml">
88 <filtersfile file=
"${bundleDir}/target/bundle.properties" />
89 <filter token=
"distributionManagement" value=
"${distributionManagement}"/>
97 <target name=
"deploy-pom">
99 <property name=
"targetDir" location=
"target" />
101 <pathconvert property=
"dirs" pathsep=
",">
103 <dirset dir=
"${targetDir}/bundles" includes=
"*" />
110 <mkdir dir=
"${targetDir}/bundles/bundles" />
111 <property name=
"deployPomFile" value=
"${targetDir}/bundles/bundles/pom.xml" />
113 <echo file=
"${deployPomFile}">
116 <modelVersion>4.0.0</modelVersion>
117 <groupId>${projectGroupId}
</groupId>
118 <artifactId>bundles
</artifactId>
119 <version>${projectVersion}
</version>
120 <packaging>pom
</packaging>
124 <for list=
"${dirs}" param=
"dir">
127 <echo>Add @{dir} to deploy POM
</echo>
128 <mkdir dir=
"${targetDir}" />
130 <var name=
"bundleDir" value=
"${targetDir}/bundles/@{dir}" />
131 <var file=
"${bundleDir}/target/bundle.properties" />
133 <echo file=
"${deployPomFile}" append=
"true">
136 <groupId>${projectGroupId}
</groupId>
137 <artifactId>${Bundle-SymbolicName}
</artifactId>
138 <version>${Bundle-Version}
</version>
144 <echo file=
"${deployPomFile}" append=
"true">
147 ${distributionManagement}