Java Mailing List Archive

http://www.ant-tasks.com/

Apache Ant Archive

» Ant Users List
» Ant Developers List
WG: Convert CVS tag to release number

WG: Convert CVS tag to release number

2003-03-12       - By HANDSCHMANN Robert

I thought it is a common task to tag a release in CVS exactly the same as
the supposed release number.

How do you tag your releases?

Now I use an ANT target (build_release) where the user must enter both the
CVS tag AND the release number.
I want to automate this little inconvenience.
Here is the target:


   <!--
======================================================================        
Checks out the sources of a given cvs tag and
        builds a release in a separate directory.

======================================================================      -->
   <target name="build_release" if="cvs.tag">
       <!-- Query user for CVS tag and release number -->
       <input message="Enter CVS tag (e.g. ${ant.project.name}_1_2)"
addproperty="release.cvs.tag"/>
       <input message="Enter Release number (e.g. 1.2)"
addproperty="release.number"/>

       <fail unless="release.cvs.tag">No CVS tag entered. Build
aborted.</fail>
       <fail unless="release.number">No release number entered. Build
aborted.</fail>

       <property name="release.directory"
value="../${cvs.module}/${release.cvs.tag}"/>
       <property name="release.target" value="all"/>
       <echo message="Checking out ${release.cvs.tag} of module
${cvs.module} into ${release.directory} and building target
${release.target}."/>

       <mkdir dir="${release.directory}"/>

       <!-- Checkout the module -->
       <cvs cvsRoot="${cvsroot}"
            package="${cvs.module}"
            dest="${release.directory}"
            tag="${release.cvs.tag}"
            failonerror="yes"/>

       <property name="base.directory"
value="${release.directory}/${cvs.module}"/>

       <!-- Copy the build.properties.template file over to the
            build.properties file and replace the version specific tokens
-->
       <copy todir="${base.directory}" overwrite="yes" >
           <fileset dir="${base.directory}" >
               <include name="build.properties.template"/>
           </fileset>
           <filterset>
               <filter token="current.release"  value="${release.number}"/>
               <filter token="cvs.tag"
value="${release.cvs.tag}"/>
           </filterset>
           <mapper type="glob" from="*.template" to="*"/>
       </copy>

       <!-- now build the release -->
       <ant dir="${base.directory}" target="all" inheritAll="false"/>
   </target>



- Robert




-----Urspr?ngliche Nachricht-----
Von: HANDSCHMANN Robert [mailto:HANDSCHMANN@(protected)]
Gesendet am: Freitag, 07. M?rz 2003 12:13
An: 'user@(protected)'
Betreff: Convert CVS tag to release number

Hi!
Is there a task that converts a CVS tag (e.g. ABC_1_1) into a release number
e.g. 1.1?
Thanks,
Robert

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@(protected)
For additional commands, e-mail: user-help@(protected)


©2008 ant-tasks.com - Jax Systems, LLC, U.S.A.