jvanzyl     2002/07/09 07:21:19

  Modified:    src/plugins/dist plugin.jelly
  Log:
  o dist:deploy is now working. It creates the distributions then tgz's them
    all up and pushes them into the repository structure.
  
  Revision  Changes    Path
  1.3       +95 -25    jakarta-turbine-maven/src/plugins/dist/plugin.jelly
  
  Index: plugin.jelly
  ===================================================================
  RCS file: /home/cvs/jakarta-turbine-maven/src/plugins/dist/plugin.jelly,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- plugin.jelly      8 Jul 2002 22:17:30 -0000       1.2
  +++ plugin.jelly      9 Jul 2002 14:21:19 -0000       1.3
  @@ -6,13 +6,22 @@
     <!-- D I S T R I B U T I O N S                                          -->
     <!-- ================================================================== -->
   
  +  <property name="maven.dist.assembly.dir" 
value="${maven.build.dir}/${maven.final.name}"/>
  +  <property name="maven.dist.dir" value="${maven.build.dir}/distributions"/>
  +
     <goal
       name="dist:build"
       prereqs="java:jar,javadoc:generate"
       description="Build a distribution">
  -
  -    <property name="distDir" value="${maven.build.dir}/${maven.final.name}"/>
  -    <mkdir dir="${distDir}"/>
  +    
  +    <!--
  +    
  +    This is the directory where everything is copied to so that it can
  +    be archived.
  +    
  +    -->
  +    
  +    <mkdir dir="${maven.dist.assembly.dir}"/>
   
       <!-- B I N A R Y  D I S T R I B U T I O N -->
   
  @@ -23,9 +32,9 @@
       </echo>
   
       <!-- Copy the project descriptor -->
  -    <copy todir="${distDir}" file="project.xml"/>
  +    <copy todir="${maven.dist.assembly.dir}" file="project.xml"/>
   
  -    <copy todir="${distDir}">
  +    <copy todir="${maven.dist.assembly.dir}">
         <fileset dir=".">
           <include name="README.txt"/>
           <include name="LICENSE"/>
  @@ -33,36 +42,38 @@
       </copy>
   
       <!-- Copy Jars -->
  -    <copy todir="${distDir}">
  +    <copy todir="${maven.dist.assembly.dir}">
         <fileset dir="${maven.build.dir}">
           <include name="**/*.jar"/>
         </fileset>
       </copy>
   
       <!-- Copy documentation -->
  -    <copy todir="${distDir}/docs">
  +    <copy todir="${maven.dist.assembly.dir}/docs">
         <fileset dir="${maven.docs.dest}">
           <include name="**"/>
         </fileset>
       </copy>
   
  +    <mkdir dir="${maven.dist.dir}"/>
  +
       <!-- Create a tar.gz file -->
  -    <tar longfile="gnu" tarfile="${maven.build.dir}/${maven.final.name}.tar">
  -      <tarfileset dir="${maven.build.dir}">
  +    <tar longfile="gnu" tarfile="${maven.dist.dir}/${maven.final.name}.tar">
  +      <tarfileset dir="${maven.dist.assembly.dir}">
           <include name="${maven.final.name}/**"/>
         </tarfileset>
       </tar>
   
       <gzip 
  -      zipfile="${maven.build.dir}/${maven.final.name}.tar.gz"
  -      src="${maven.build.dir}/${maven.final.name}.tar"
  +      zipfile="${maven.dist.dir}/${maven.final.name}.tar.gz"
  +      src="${maven.dist.dir}/${maven.final.name}.tar"
       />
       
  -    <delete file="${maven.build.dir}/${maven.final.name}.tar"/>
  +    <delete file="${maven.dist.dir}/${maven.final.name}.tar"/>
   
       <!-- Create a zip file -->
  -    <zip zipfile="${maven.build.dir}/${maven.final.name}.zip">
  -      <zipfileset dir="${maven.build.dir}">
  +    <zip zipfile="${maven.dist.dir}/${maven.final.name}.zip">
  +      <zipfileset dir="${maven.dist.assembly.dir}">
           <include name="${maven.final.name}/**"/>
         </zipfileset>
       </zip>
  @@ -76,15 +87,15 @@
       </echo>
   
       <delete>
  -      <fileset dir="${distDir}">
  +      <fileset dir="${maven.dist.assembly.dir}">
           <include name="**/*.jar"/>
         </fileset>
       </delete>
   
  -    <copy todir="${distDir}" file="build.xml"/>
  +    <copy todir="${maven.dist.assembly.dir}" file="build.xml"/>
   
       <!-- Copy Source -->
  -    <copy todir="${distDir}/src">
  +    <copy todir="${maven.dist.assembly.dir}/src">
         <fileset dir="${maven.src.dir}">
           <include name="**/*.java"/>
           <include name="**/*.xml"/>
  @@ -93,26 +104,85 @@
       </copy>
   
       <!-- Create a tar.gz file -->
  -    <tar longfile="gnu" tarfile="${maven.build.dir}/${maven.final.name}-src.tar">
  -      <tarfileset dir="${maven.build.dir}">
  +    <tar longfile="gnu" tarfile="${maven.dist.dir}/${maven.final.name}-src.tar">
  +      <tarfileset dir="${maven.dist.assembly.dir}">
           <include name="${maven.final.name}/**"/>
         </tarfileset>
       </tar>
   
       <gzip 
  -      zipfile="${maven.build.dir}/${maven.final.name}-src.tar.gz" 
  -      src="${maven.build.dir}/${maven.final.name}-src.tar"
  +      zipfile="${maven.dist.dir}/${maven.final.name}-src.tar.gz" 
  +      src="${maven.dist.dir}/${maven.final.name}-src.tar"
       />
       
  -    <delete file="${maven.build.dir}/${maven.final.name}-src.tar"/>
  +    <delete file="${maven.dist.dir}/${maven.final.name}-src.tar"/>
   
       <!-- Create a zip file -->
  -    <zip zipfile="${maven.build.dir}/${maven.final.name}-src.zip">
  -      <zipfileset dir="${maven.build.dir}">
  +    <zip zipfile="${maven.dist.dir}/${maven.final.name}-src.zip">
  +      <zipfileset dir="${maven.dist.assembly.dir}">
           <include name="${maven.final.name}/**"/>
         </zipfileset>
       </zip>
   
     </goal>
  -  
  +
  +  <!-- ================================================================== -->
  +  <!-- D E P L O Y  D I S T R I B U T I O N                               -->
  +  <!-- ================================================================== -->
  +
  +  <goal
  +    name="dist:deploy">
  +
  +    <j:set var="tmp" value="${maven.username}"/>
  +
  +    <j:if test="${tmp.equals('USERNAME_NOT_SET')}">
  +      
  +      <fail message="">
  ++------------------------------------------------------------------
  +| ERROR!
  +|
  +| You must specify a maven username in order to deploy the site!
  +| You can either set this property in your ~/build.properties
  +| or specify one on the command line:
  +|
  +| maven -Dmaven.username=${user.name} deploy-site
  ++------------------------------------------------------------------
  +      </fail>
  +
  +    </j:if>
  +
  +    <!--
  +    
  +    Generate the site documentation if it has not already been generated.
  +    We need some markers or timestamps for this so we don't repeat work
  +    if it's not necessary.
  +    
  +    -->
  +
  +    <attainGoal name="dist:build"/>
  +
  +    <echo>
  +      siteAddress = ${pom.siteAddress}
  +    </echo>
  +
  +    <property 
  +      name="maven.remote.dist.dir" 
  +      value="/www/jakarta.apache.org/turbine/jars2/${pom.id}/distributions"
  +    />
  +
  +    <tar tarfile="distributions.tar" basedir="${maven.dist.dir}"/>
  +    <gzip zipfile="distributions.tar.gz" src="distributions.tar"/>
  +    <delete file="distributions.tar"/>
  +
  +    <exec dir="." executable="${maven.scp.executable}">
  +      <arg value="distributions.tar.gz"/>
  +      <arg value="${maven.username}@${pom.siteAddress}:${maven.remote.dist.dir}"/>
  +    </exec>
  +
  +    <exec dir="." executable="${maven.ssh.executable}">
  +      <arg line="${pom.siteAddress} -l ${maven.username} 'mkdir -p 
${maven.remote.dist.dir};cd ${maven.remote.dist.dir};gunzip distributions.tar.gz;tar 
xUvf distributions.tar;chmod -R g+u *;rm distributions.tar'"/>
  +    </exec>
  +
  +  </goal>
  +
   </project>
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to