diff options
Diffstat (limited to 'releng/org.eclipse.emf.parsley.releng/packaging-p2composite.ant')
-rw-r--r-- | releng/org.eclipse.emf.parsley.releng/packaging-p2composite.ant | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/releng/org.eclipse.emf.parsley.releng/packaging-p2composite.ant b/releng/org.eclipse.emf.parsley.releng/packaging-p2composite.ant new file mode 100644 index 000000000..d8f012ecd --- /dev/null +++ b/releng/org.eclipse.emf.parsley.releng/packaging-p2composite.ant @@ -0,0 +1,104 @@ +<?xml version="1.0"?> +<project name="project"> + + <target name="getMajorMinorVersion"> + <script language="javascript"> + <![CDATA[ + + // getting the value + buildnumber = project.getProperty("unqualifiedVersion"); + index = buildnumber.lastIndexOf("."); + counter = buildnumber.substring(0, index); + project.setProperty("majorMinorVersion",counter); + + ]]> + </script> + </target> + + <target name="test_getMajorMinor" depends="getMajorMinorVersion"> + <echo message="majorMinorVersion: ${majorMinorVersion}"/> + </target> + + <!-- + site.label The name/title/label of the created composite site + unqualifiedVersion The version without any qualifier replacement + buildQualifier The build qualifier + --> + <target name="compute.child.repository.data" depends="getMajorMinorVersion"> + <property name="full.version" value="${unqualifiedVersion}.${buildQualifier}" /> + + <property name="software.download.area" location="${user.home}/p2.repositories" /> + <property name="updates.dir" value="updates" /> + + <property name="site.composite.name" value="${site.label} ${majorMinorVersion}" /> + <property name="main.site.composite.name" value="${site.label} All Versions" /> + + <property name="main.composite.repository.directory" location="${software.download.area}/${updates.dir}" /> + + <property name="composite.repository.directory" value="${main.composite.repository.directory}/${majorMinorVersion}" /> + <property name="child.repository" value="${full.version}" /> + <property name="child.repository.directory" value="${composite.repository.directory}/${child.repository}/" /> + </target> + + <target name="p2.composite.add" depends="compute.child.repository.data"> + <property name="source.repository" location="${project.build.directory}/repository"/> + + <echo message=" " /> + + <echo message="Source repository path: ${source.repository}" /> + + <echo message="Copying to ${child.repository.directory}..." /> + + <mkdir dir="${child.repository.directory}"/> + <copy todir="${child.repository.directory}" overwrite="true"> + <fileset dir="${source.repository}" /> + </copy> + + <add.composite.repository.internal + composite.repository.location="${composite.repository.directory}" + composite.repository.name="${site.composite.name}" + composite.repository.child="${child.repository}" + /> + + <add.composite.repository.internal + composite.repository.location="${main.composite.repository.directory}" + composite.repository.name="${main.site.composite.name}" + composite.repository.child="${majorMinorVersion}" + /> + + </target> + + <!-- = = = = = = = = = = = = = = = = = + macrodef: add.composite.repository.internal + = = = = = = = = = = = = = = = = = --> + <macrodef name="add.composite.repository.internal"> + <attribute name="composite.repository.location" /> + <attribute name="composite.repository.name" /> + <attribute name="composite.repository.child" /> + <sequential> + + <echo message=" " /> + <echo message="Composite repository : @{composite.repository.location}" /> + <echo message="Composite name : @{composite.repository.name}" /> + <echo message="Adding child repository : @{composite.repository.child}" /> + + <p2.composite.repository> + <repository + compressed="false" + location="@{composite.repository.location}" + name="@{composite.repository.name}" /> + <add> + <repository location="@{composite.repository.child}" /> + </add> + </p2.composite.repository> + + <echo file="@{composite.repository.location}/p2.index">version=1 +metadata.repository.factory.order=compositeContent.xml,\! +artifact.repository.factory.order=compositeArtifacts.xml,\! +</echo> + + </sequential> + </macrodef> + + +</project> |