From 57f05709b0b7072b4d9fb1a355d87dff7c7e3665 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 19 Nov 2014 11:26:12 -0500
Subject: [PATCH] Merged #222 "Add a blink comparator and pixel difference to image diffs"

---
 build.xml |  116 +++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 74 insertions(+), 42 deletions(-)

diff --git a/build.xml b/build.xml
index c405d06..ef76b20 100644
--- a/build.xml
+++ b/build.xml
@@ -8,7 +8,7 @@
 		documentation @ http://gitblit.github.io/moxie
 		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 	-->
-	<property name="moxie.version" value="0.9.2" />
+	<property name="moxie.version" value="0.9.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" />
@@ -41,9 +41,10 @@
 		<mx:init verbose="no" mxroot="${moxie.dir}" />
 				
 		<!-- Set Ant project properties -->
-		<property name="distribution.zipfile" value="gitblit-${project.version}.zip" />
-		<property name="distribution.tgzfile" value="gitblit-${project.version}.tar.gz" />
-		<property name="distribution.warfile" value="gitblit-${project.version}.war" />
+		<property name="release.name" value="gitblit-${project.version}"/>
+		<property name="distribution.zipfile" value="${release.name}.zip" />
+		<property name="distribution.tgzfile" value="${release.name}.tar.gz" />
+		<property name="distribution.warfile" value="${release.name}.war" />
 		<property name="fedclient.zipfile" value="fedclient-${project.version}.zip" />
 		<property name="manager.zipfile" value="manager-${project.version}.zip" />
 		<property name="authority.zipfile" value="authority-${project.version}.zip" />
@@ -81,10 +82,9 @@
 			<fileset dir="${project.distrib.dir}/data" />
 		</copy>
 		
-		<!-- copy gitblit.properties to the source directory.
-		     this file is only used for parsing setting descriptions. -->
-		<copy tofile="${project.src.dir}/reference.properties" overwrite="true"
-			file="${project.distrib.dir}/data/gitblit.properties" />
+		<!-- copy defaults.properties to the source directory -->
+		<copy tofile="${project.src.dir}/defaults.properties" overwrite="true"
+			file="${project.distrib.dir}/data/defaults.properties" />
 
 		<!-- copy clientapps.json to the source directory.
 		     this file is only used if a local file is not provided. -->
@@ -101,8 +101,8 @@
 	-->
 	<target name="compile" depends="setup" description="compiles Gitblit from source">
 		
-		<!-- Generate the Keys class from the properties file -->
-		<mx:keys propertiesfile="${project.distrib.dir}/data/gitblit.properties"
+		<!-- Generate the Keys class from the defaults.properties file -->
+		<mx:keys propertiesfile="${project.distrib.dir}/data/defaults.properties"
 			 	outputclass="com.gitblit.Keys"
 			 	todir="${project.src.dir}" />
 
@@ -170,14 +170,17 @@
 		
 		<echo>Building Gitblit GO ${project.version}</echo>
 
-		<local name="go.dir" />
-		<property name="go.dir" value="${project.outputDirectory}/go" />	
+		<local name="go.dir"/>
+		<property name="go.dir" value="${project.outputDirectory}/go"/>
 		<delete dir="${go.dir}" />
+		
+		<local name="go.release.dir" />
+		<property name="go.release.dir" value="${go.dir}/${release.name}" />	
 
 		<local name="webinf" />
 		<property name="webinf" value="${project.compileOutputDirectory}/WEB-INF" />
 
-		<prepareDataDirectory toDir="${go.dir}/data" />
+		<prepareDataDirectory toDir="${go.release.dir}/data" />
 		
 		<!-- Copy the web.xml from the prototype web.xml -->
 		<copy todir="${webinf}" overwrite="true">
@@ -188,42 +191,43 @@
 		</copy>
 		
 		<!-- Build jar -->
-		<mx:jar destfile="${go.dir}/gitblit.jar" includeresources="true">
+		<mx:jar destfile="${go.release.dir}/gitblit.jar" includeresources="true">
 			<mainclass name="com.gitblit.GitBlitServer" />
 			<launcher paths="ext" />
 		</mx:jar>
 
 		<!-- Generate the docs for the GO build -->
-		<generateDocs toDir="${go.dir}/docs" />
-		
+		<generateDocs toDir="${go.release.dir}/docs" />
+
 		<!-- Create GO Windows Zip deployment -->
 		<mx:zip basedir="${go.dir}">
 			<!-- LICENSE and NOTICE -->
-			<fileset dir="${basedir}" >
+			<zipfileset dir="${basedir}" prefix="${release.name}">
 				<include name="LICENSE" />
 				<include name="NOTICE" />
-			</fileset>
+			</zipfileset>
 			<!-- Windows distrib files -->
-			<zipfileset dir="${project.distrib.dir}/win" />
+			<zipfileset dir="${project.distrib.dir}/win" prefix="${release.name}"/>
 			<!-- Gitblit Authority data -->
-			<zipfileset dir="${project.distrib.dir}/data/certs" prefix="data/certs" />
+			<zipfileset dir="${project.distrib.dir}/data/certs" prefix="${release.name}/data/certs" />
+
 			<!-- include all dependencies -->
-			<dependencies prefix="ext" />
+			<dependencies prefix="${release.name}/ext" />
 		</mx:zip>
 
 		<!-- Create GO Linux/OSX tar.gz deployment -->
 		<mx:tar basedir="${go.dir}" longfile="gnu" compression="gzip">
 			<!-- LICENSE and NOTICE -->
-			<fileset dir="${basedir}" >
+			<zipfileset dir="${basedir}" prefix="${release.name}">
 				<include name="LICENSE" />
 				<include name="NOTICE" />
-			</fileset>
+			</zipfileset>
 			<!-- Linux/OSX distrib files -->
-			<tarfileset dir="${project.distrib.dir}/linux" filemode="755" />
+			<tarfileset dir="${project.distrib.dir}/linux" filemode="755" prefix="${release.name}"/>
 			<!-- Gitblit Authority data -->
-			<zipfileset dir="${project.distrib.dir}/data/certs" prefix="data/certs" />
+			<zipfileset dir="${project.distrib.dir}/data/certs" prefix="${release.name}/data/certs" />
 			<!-- include all dependencies -->
-			<dependencies prefix="ext" />
+			<dependencies prefix="${release.name}/ext" />
 		</mx:tar>		
 
 	</target>
@@ -251,13 +255,10 @@
 		<!-- Prepare the data directory -->
 		<prepareDataDirectory toDir="${webinf}/data" />
 
-		<!-- Copy the web.xml from the prototype web.xml -->
-		<copy todir="${webinf}" overwrite="true">
-			<fileset file="${project.src.dir}/WEB-INF/web.xml" />
-			<filterset>
-				<filter token="gb.version" value="${project.version}" />
-			</filterset>
-		</copy>
+		<!-- Build the WAR web.xml from the prototype 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:jar destfile="${webinf}/lib/gitblit.jar" includeresources="false" />
@@ -293,7 +294,7 @@
 			 classes, exclude any classes in classpath jars -->
 		<mx:genjar tag="" includeresources="false" excludeClasspathJars="true"
 			destfile="${project.targetDirectory}/fedclient.jar"
-			excludes="**/.class,**/*.java, **/Thumbs.db, **/*.mkd, com/gitblit/wicket/**">
+			excludes="**/.class, **/*.java, **/Thumbs.db, **/*.mkd, **/*.md, **/*.css, com/gitblit/wicket/**">
 			<mainclass name="com.gitblit.FederationClient" />
 			<class name="com.gitblit.Keys" />
 			<launcher paths="ext" />
@@ -333,7 +334,8 @@
 		<!-- generate jar by traversing the class hierarchy of the specified
 			 classes, exclude any classes in classpath jars -->
 		<mx:genjar tag="" includeResources="false" excludeClasspathJars="true"
-			destfile="${project.targetDirectory}/manager.jar">
+			destfile="${project.targetDirectory}/manager.jar"
+			excludes="**/.class, **/*.java, **/Thumbs.db, **/*.mkd, **/*.md, **/*.css, com/gitblit/wicket/**">
 			<resource file="${project.src.dir}/com/gitblit/client/splash.png" />
 			<resource file="${project.resources.dir}/gitblt-favicon.png" />
 			<resource file="${project.resources.dir}/gitweb-favicon.png" />
@@ -409,9 +411,10 @@
 
 		<!-- Build API Library jar -->
 		<mx:genjar tag="" includeResources="false" excludeClasspathJars="true"
-			destfile="${project.targetDirectory}/gbapi-${project.version}.jar">
+			destfile="${project.targetDirectory}/gbapi-${project.version}.jar"
+			excludes="**/.class, **/*.java, **/Thumbs.db, **/*.mkd, **/*.md, **/*.css, com/gitblit/wicket/**">
+			<mainclass name="com.gitblit.client.GitblitClient" />
 			<class name="com.gitblit.Keys" />
-			<class name="com.gitblit.client.GitblitClient" />
 			<class name="com.gitblit.models.FederationModel" />
 			<class name="com.gitblit.models.FederationProposal" />
 			<class name="com.gitblit.models.FederationSet" />			
@@ -560,6 +563,8 @@
 					<divider />
 					<link name="Gitblit GO (Docker)" src="https://registry.hub.docker.com/u/jmoger/gitblit/" />
 					<divider />
+					<link name="Plugins Registry" src="http://plugins.gitblit.com" />
+					<divider />
 					<link name="Gitblit Manager" src="${gc.url}manager-${project.releaseVersion}.zip" />
 					<link name="Federation Client" src="${gc.url}fedclient-${project.releaseVersion}.zip" />
 					<divider />
@@ -574,7 +579,7 @@
 				<menu name="links">
 					<link name="dev.gitblit.com (self-hosted)" src="https://dev.gitblit.com" />
 					<divider />
-					<link name="Plugin Registry" src="http://plugins.gitblit.com" />
+					<link name="Plugins Registry" src="http://plugins.gitblit.com" />
 					<divider />
 					<link name="Github" src="${project.scmUrl}" />
 					<link name="Issues" src="${project.issuesUrl}" />
@@ -582,6 +587,10 @@
 					<link name="Google+" src="${project.socialNetworkUrl}" />
 					<link name="Twitter" src="https://twitter.com/gitblit" />
 					<link name="Ohloh" src="http://www.ohloh.net/p/gitblit" />
+                    <divider />
+					<link name="Gitblit Tickets screencast" src="https://vimeo.com/86164723" />
+					<link name="Gitblit SSH and Plugin Management asciicast" src="https://asciinema.org/a/9342" />
+                    <link name="GitMinutes #29: James Moger on Gitblit" src="http://episodes.gitminutes.com/2014/05/gitminutes-29-james-moger-on-gitblit.html" />
 					<divider />
 					<link name="+JamesMoger" src="https://plus.google.com/+JamesMoger" />
 					<link name="@JamesMoger" src="https://twitter.com/JamesMoger" />
@@ -591,7 +600,7 @@
 			
 			<replace token="%GCURL%" value="${gc.url}" />
 			
-			<properties token="%PROPERTIES%" file="${project.distrib.dir}/data/gitblit.properties" />
+			<properties token="%PROPERTIES%" file="${project.distrib.dir}/data/defaults.properties" />
 			
 			<regex searchPattern="\b(issue)(\s*[#]?|-){0,1}(\d+)\b" replacePattern="&lt;a href='http://code.google.com/p/gitblit/issues/detail?id=$3'&gt;issue $3&lt;/a&gt;" />
 			<regex searchPattern="\b(pr|pull request)(\s*[#]?|-){0,1}(\d+)\b" replacePattern="&lt;a href='https://github.com/gitblit/gitblit/pull/$3'&gt;pull request #$3&lt;/a&gt;" />
@@ -778,16 +787,38 @@
 			</filterset>
 		</copy>
 		<chmod file="${recipe}" perm="ugo+rx" />
+	</target>
 
+ 
+	<!--
+		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
+		Prepare for the next point release development cycle.
+		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
+	-->
+	<target name="nextPointReleaseCycle" depends="prepare" description="prepare for the next point release development cycle">
 		<!-- next cycle -->
 		<mx:version stage="snapshot" incrementNumber="incremental" dryrun="${dryrun}" />
 		<mx:commit showtitle="no">
-		    <message>Reset build identifiers for next development cycle</message>
+		    <message>Reset build identifiers for next point release cycle</message>
 		</mx:commit>		
 	</target>
 
 		
 	<!--
+		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
+		Prepare for the next minor release development cycle.
+		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
+	-->
+	<target name="nextMinorReleaseCycle" depends="prepare" description="prepare for the next minor release development cycle">
+		<!-- next cycle -->
+		<mx:version stage="snapshot" incrementNumber="minor" dryrun="${dryrun}" />
+		<mx:commit showtitle="no">
+		    <message>Reset build identifiers for next minor release cycle</message>
+		</mx:commit>		
+	</target>
+
+	
+  <!--
 		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 		Build Gitblit Docs
 		~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -860,7 +891,7 @@
 					<menu name="links">
 						<link name="dev.gitblit.com (self-hosted)" src="https://dev.gitblit.com" />
 						<divider />
-						<link name="Plugin Registry" src="http://plugins.gitblit.com" />
+						<link name="Plugins Registry" src="http://plugins.gitblit.com" />
 						<divider />
 						<link name="Github" src="${project.scmUrl}" />
 						<link name="Issues" src="${project.issuesUrl}" />
@@ -870,7 +901,7 @@
 					</menu>
 				</structure>
 				
-				<properties token="%PROPERTIES%" file="${project.distrib.dir}/data/gitblit.properties" />
+				<properties token="%PROPERTIES%" file="${project.distrib.dir}/data/defaults.properties" />
 				
 				<regex searchPattern="\b(issue)(\s*[#]?|-){0,1}(\d+)\b" replacePattern="&lt;a href='http://code.google.com/p/gitblit/issues/detail?id=$3'&gt;issue $3&lt;/a&gt;" />
 				<regex searchPattern="\b(pr|pull request)(\s*[#]?|-){0,1}(\d+)\b" replacePattern="&lt;a href='https://github.com/gitblit/gitblit/pull/$3'&gt;pull request #$3&lt;/a&gt;" />
@@ -910,6 +941,7 @@
 				<fileset dir="${project.distrib.dir}/data">
 					<include name="users.conf" />
 					<include name="projects.conf" />
+					<include name="defaults.properties" />
 					<include name="gitblit.properties" />					
 				</fileset>
 			</copy>

--
Gitblit v1.9.1