James Moger
2013-06-03 9e919f500360949c6ddb9deb2b7abb0dfaa1a3a1
build.xml
@@ -4,14 +4,17 @@
   <!--
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      Retrieve Moxie Toolkit
      documentation @ http://gitblit.github.io/moxie
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   -->
   <property name="moxie.version" value="0.7.1" />
   <property name="moxie.url" value="http://gitblit.github.com/moxie/maven" />
   <property name="moxie.version" value="0.7.4" />
   <property name="moxie.url" value="http://gitblit.github.io/moxie/maven" />
   <property name="moxie.jar" value="moxie-toolkit-${moxie.version}.jar" />
   <property name="moxie.dir" value="${user.home}/.moxie" />
   
   <!-- Download Moxie from it's Maven repository to user.home -->
   <mkdir dir="${moxie.dir}" />
   <get src="${moxie.url}/org/moxie/moxie-toolkit/${moxie.version}/${moxie.jar}"
      dest="${moxie.dir}" skipexisting="true" verbose="true" />
   
@@ -33,8 +36,9 @@
   <target name="prepare">
   
      <!-- Setup Ant build from build.moxie and resolve dependencies.
           if it exists, build.properties is automatically loaded -->
      <mx:init verbose="no" />
           If it exists, build.properties is automatically loaded.
           Explicitly set mxroot allowing CI servers to override the default. -->
      <mx:init verbose="no" mxroot="${moxie.dir}" />
            
      <!-- Set Ant project properties -->
      <property name="distribution.zipfile" value="gitblit-${project.version}.zip" />
@@ -93,10 +97,15 @@
         <fileset dir="${project.distrib.dir}/data" />
      </copy>
      
      <!-- copy gitblit.properties to the WEB-INF directory.
      <!-- copy gitblit.properties to the source directory.
           this file is only used for parsing setting descriptions. -->
      <copy tofile="${project.src.dir}/WEB-INF/reference.properties" overwrite="true"
      <copy tofile="${project.src.dir}/reference.properties" overwrite="true"
         file="${project.distrib.dir}/data/gitblit.properties" />
      <!-- copy clientapps.json to the source directory.
           this file is only used if a local file is not provided. -->
      <copy tofile="${project.src.dir}/clientapps.json" overwrite="true"
         file="${project.distrib.dir}/data/clientapps.json" />
      
      <!-- 
         upgrade existing workspace to data directory
@@ -135,8 +144,8 @@
             outputclass="com.gitblit.Keys"
             todir="${project.src.dir}" />
      <!-- Compile project incrementally -->
      <mx:javac scope="compile" clean="false" />
      <!-- Compile project -->
      <mx:javac scope="compile" clean="true" />
      
   </target>
@@ -263,7 +272,33 @@
      <prepareDataDirectory toDir="${webinf}/data" />
      <!-- Build the WAR web.xml from the prototype web.xml -->
      <mx:webxml sourcefile="${project.src.dir}/WEB-INF/web.xml" destfile="${webinf}/web.xml" />
      <mx:webxml sourcefile="${project.src.dir}/WEB-INF/web.xml" destfile="${webinf}/web.xml">
         <replace token="@gb.version@" value="${project.version}" />
      </mx:webxml>
      <!-- Gitblit jar -->
      <mx:genjar destfile="${webinf}/lib/gitblit.jar" includeresources="false" excludeclasspathjars="true">
         <!-- Specify all web.xml servlets and filters -->
         <class name="com.gitblit.GitBlit" />
         <class name="com.gitblit.DownloadZipFilter" />
         <class name="com.gitblit.DownloadZipServlet" />
         <class name="com.gitblit.EnforceAuthenticationFilter" />
         <class name="com.gitblit.FederationServlet" />
         <class name="com.gitblit.GitFilter" />
         <class name="com.gitblit.git.GitServlet" />
         <class name="com.gitblit.PagesFilter" />
         <class name="com.gitblit.PagesServlet" />
         <class name="com.gitblit.RobotsTxtServlet" />
         <class name="com.gitblit.RpcFilter" />
         <class name="com.gitblit.RpcServlet" />
         <class name="com.gitblit.SyndicationFilter" />
         <class name="com.gitblit.SyndicationServlet" />
         <class name="com.gitblit.SparkleShareInviteServlet" />
         <class name="com.gitblit.wicket.GitBlitWebApp" />
         <!-- Manually include alternative User Services -->
         <class name="com.gitblit.LdapUserService" />
         <class name="com.gitblit.RedmineUserService" />
      </mx:genjar>
      <!-- Build the WAR file -->
      <mx:zip basedir="${war.dir}" destfile="${project.targetDirectory}/${distribution.warfile}" compress="true" >
@@ -273,20 +308,11 @@
            <exclude name="*.mkd" />
         </fileset>
         <!-- WEB-INF directory -->
         <zipfileset fullpath="WEB-INF/reference.properties"
            file="${project.distrib.dir}/data/gitblit.properties" />
         <zipfileset prefix="WEB-INF" dir="${basedir}" >
            <include name="LICENSE" />
            <include name="NOTICE" />
         </zipfileset>
         <zipfileset prefix="WEB-INF" file="${project.compileOutputDirectory}/WEB-INF/weblogic.xml" />
         <!-- Classes and classpath resources -->
         <zipfileset prefix="WEB-INF/classes" dir="${project.compileOutputDirectory}">
            <include name="**/*.class" />
            <include name="**/*.properties" />
            <include name="**/*.mkd" />
            <exclude name="WEB-INF" />
         </zipfileset>
         <!-- include "war" tagged dependencies -->
         <dependencies prefix="WEB-INF/lib" tag="war" />
      </mx:zip>
@@ -303,7 +329,7 @@
   
      <!-- generate jar by traversing the class hierarchy of the specified
          classes, exclude any classes in classpath jars -->
      <mx:genjar tag="" excludeClasspathJars="true"
      <mx:genjar tag="" includeresources="false" excludeClasspathJars="true"
         destfile="${project.targetDirectory}/fedclient.jar">
         <mainclass name="com.gitblit.FederationClient" />
         <launcher paths="ext" />
@@ -359,11 +385,13 @@
      <!-- Build the Express web.xml from the prototype web.xml and gitblit.properties -->
      <!-- THIS FILE IS NOT OVERRIDDEN ONCE IT IS BUILT!!! -->
      <mx:webxml sourcefile="${project.src.dir}/WEB-INF/web.xml" destfile="${webinf}/web.xml"
      propertiesFile="${project.distrib.dir}/data/gitblit.properties"
      skip="server.*" />
         propertiesFile="${project.distrib.dir}/data/gitblit.properties"
         skip="server.*">
         <replace token="@gb.version@" value="${project.version}" />
      </mx:webxml>
      <!-- Gitblit classes -->
      <mx:genjar destfile="${webinf}/lib/gitblit.jar" excludeclasspathjars="true">
      <mx:genjar destfile="${webinf}/lib/gitblit.jar" includeresources="false" excludeclasspathjars="true">
         <!-- Specify all web.xml servlets and filters -->
         <class name="com.gitblit.GitBlit" />
         <class name="com.gitblit.DownloadZipFilter" />
@@ -371,7 +399,7 @@
         <class name="com.gitblit.EnforceAuthenticationFilter" />
         <class name="com.gitblit.FederationServlet" />
         <class name="com.gitblit.GitFilter" />
         <class name="com.gitblit.GitServlet" />
         <class name="com.gitblit.git.GitServlet" />
         <class name="com.gitblit.PagesFilter" />
         <class name="com.gitblit.PagesServlet" />
         <class name="com.gitblit.RobotsTxtServlet" />
@@ -379,7 +407,11 @@
         <class name="com.gitblit.RpcServlet" />
         <class name="com.gitblit.SyndicationFilter" />
         <class name="com.gitblit.SyndicationServlet" />
         <class name="com.gitblit.SparkleShareInviteServlet" />
         <class name="com.gitblit.wicket.GitBlitWebApp" />
         <!-- Manually include alternative User Services -->
         <class name="com.gitblit.LdapUserService" />
         <class name="com.gitblit.RedmineUserService" />
      </mx:genjar>
      <!-- Build Express Zip file -->
@@ -395,9 +427,6 @@
            <exclude name="thumbs.db" />
            <exclude name="*.mkd" />
         </zipfileset>
         <!-- reference.properties -->
         <zipfileset fullpath="deployments/ROOT.war/WEB-INF/reference.properties"
            file="${project.distrib.dir}/data/gitblit.properties" />
         <!-- include "war" tagged dependencies -->
         <dependencies prefix="deployments/ROOT.war/WEB-INF/lib" tag="war" />
      </mx:zip>
@@ -415,7 +444,7 @@
      <!-- generate jar by traversing the class hierarchy of the specified
          classes, exclude any classes in classpath jars -->
      <mx:genjar tag="" excludeClasspathJars="true"
      <mx:genjar tag="" includeResources="false" excludeClasspathJars="true"
         destfile="${project.targetDirectory}/manager.jar">
         <resource file="${project.src.dir}/com/gitblit/client/splash.png" />
         <resource file="${project.resources.dir}/gitblt-favicon.png" />
@@ -553,7 +582,7 @@
      <delete dir="${javadoc.dir}" />
      <!-- Build API Library jar -->
      <mx:genjar tag="" excludeClasspathJars="true"
      <mx:genjar tag="" includeResources="false" excludeClasspathJars="true"
         destfile="${project.targetDirectory}/gbapi-${project.version}.jar">
         <class name="com.gitblit.Keys" />
         <class name="com.gitblit.client.GitblitClient" />
@@ -936,7 +965,7 @@
            <fileset dir="${project.distrib.dir}/data">
               <include name="users.conf" />
               <include name="projects.conf" />
               <include name="gitblit.properties" />
               <include name="gitblit.properties" />
            </fileset>
         </copy>
         <mkdir dir="@{toDir}/groovy" />
@@ -983,7 +1012,8 @@
   <target name="installMaven" depends="compile" description="Install Gitblit JAR as Maven module">
      <local name="project.jar" />
      <property name="project.jar" value="${project.outputDirectory}/gitblit.jar" />
      <mx:jar destfile="${project.jar}" includeresources="true" />
      <property name="resourceFolderPrefix" value="" />
      <mx:jar destfile="${project.jar}" includeresources="true" resourceFolderPrefix="${resourceFolderPrefix}" />
      <exec executable="mvn">
         <arg value="install:install-file" />