From 3daba4304dba818d54eb9b74d8d35df5aab8fee5 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 22 Nov 2013 10:36:05 -0500 Subject: [PATCH] Add pull request linking in changelog to generated documentation --- build.xml | 402 ++++++++++++++++++++++++++++++++------------------------- 1 files changed, 227 insertions(+), 175 deletions(-) diff --git a/build.xml b/build.xml index 309becf..3e42cb9 100644 --- a/build.xml +++ b/build.xml @@ -8,14 +8,14 @@ documentation @ http://gitblit.github.io/moxie ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> - <property name="moxie.version" value="0.7.2" /> + <property name="moxie.version" value="0.9.0" /> <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}" + <get src="${moxie.url}/com/gitblit/moxie/moxie-toolkit/${moxie.version}/${moxie.jar}" dest="${moxie.dir}" skipexisting="true" verbose="true" /> <!-- Register Moxie tasks --> @@ -36,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" /> @@ -48,7 +49,8 @@ <property name="authority.zipfile" value="authority-${project.version}.zip" /> <property name="gbapi.zipfile" value="gbapi-${project.version}.zip" /> <property name="express.zipfile" value="express-${project.version}.zip" /> - + <property name="maven.directory" value="${basedir}/../gitblit-maven" /> + <!-- Download links --> <property name="gc.url" value="http://code.google.com/p/gitblit/downloads/detail?name=" /> </target> @@ -60,22 +62,6 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> <target name="clean" depends="prepare" description="Cleanup all build artifacts and directories"> - <!-- cleanup legacy build structure --> - <!-- this can be eliminated after 1.3.0 release --> - <delete> - <fileset dir="${basedir}"> - <include name="*.zip" /> - <include name="*.war" /> - <include name="*.jar" /> - </fileset> - </delete> - <delete dir="${basedir}/deploy" failonerror="false" /> - <delete dir="${basedir}/express" failonerror="false" /> - <delete dir="${basedir}/jar" failonerror="false" /> - <delete dir="${basedir}/javadoc" failonerror="false" /> - <delete dir="${basedir}/site" failonerror="false" /> - <delete dir="${basedir}/temp" failonerror="false" /> - <delete dir="${basedir}/war" failonerror="false" /> <!-- Clean build and target directories --> <mx:clean /> @@ -100,29 +86,12 @@ 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" /> - - <!-- - upgrade existing workspace to data directory - this code can be eliminated after 1.3.0 release - --> - <move todir="${basedir}/data" overwrite="true" failonerror="false"> - <fileset dir="${basedir}"> - <include name="users.conf" /> - <include name="projects.conf" /> - <include name="gitblit.properties" /> - <include name="serverKeyStore.jks" /> - <include name="serverTrustStore.jks" /> - </fileset> - </move> - <move todir="${basedir}/data/certs" overwrite="true" failonerror="false"> - <fileset dir="${basedir}/certs" /> - </move> - <move todir="${basedir}/data/git" overwrite="true" failonerror="false"> - <fileset dir="${basedir}/git" /> - </move> - <move todir="${basedir}/data/proposals" overwrite="true" failonerror="false"> - <fileset dir="${basedir}/proposals" /> - </move> + + <!-- 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" /> + </target> @@ -138,8 +107,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> @@ -179,6 +148,13 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> <target name="run" depends="compile" description="Run Gitblit GO"> + <!-- copy static files --> + <copy todir="${basedir}/build/classes" overwrite="false"> + <fileset dir="${project.resources.dir}"> + <exclude name="thumbs.db" /> + <exclude name="*.mkd" /> + </fileset> + </copy> <!-- run the mainclass in a separate JVM --> <mx:run fork="true" /> @@ -266,18 +242,22 @@ <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.Keys" /> <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.GitServlet" /> + <class name="com.gitblit.git.GitServlet" /> + <class name="com.gitblit.LogoServlet" /> <class name="com.gitblit.PagesFilter" /> <class name="com.gitblit.PagesServlet" /> <class name="com.gitblit.RobotsTxtServlet" /> @@ -285,7 +265,15 @@ <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.GitblitWicketFilter" /> <class name="com.gitblit.wicket.GitBlitWebApp" /> + <!-- Manually include alternative User Services --> + <class name="com.gitblit.LdapUserService" /> + <class name="com.gitblit.RedmineUserService" /> + <class name="com.gitblit.SalesforceUserService" /> + <class name="com.gitblit.WindowsUserService" /> + <class name="com.gitblit.PAMUserService" /> </mx:genjar> <!-- Build the WAR file --> @@ -320,6 +308,7 @@ <mx:genjar tag="" includeresources="false" excludeClasspathJars="true" destfile="${project.targetDirectory}/fedclient.jar"> <mainclass name="com.gitblit.FederationClient" /> + <class name="com.gitblit.Keys" /> <launcher paths="ext" /> <resource file="${project.compileOutputDirectory}/log4j.properties" /> </mx:genjar> @@ -373,19 +362,23 @@ <!-- 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" includeresources="false" excludeclasspathjars="true"> <!-- Specify all web.xml servlets and filters --> <class name="com.gitblit.GitBlit" /> + <class name="com.gitblit.Keys" /> <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.GitServlet" /> + <class name="com.gitblit.git.GitServlet" /> + <class name="com.gitblit.LogoServlet" /> <class name="com.gitblit.PagesFilter" /> <class name="com.gitblit.PagesServlet" /> <class name="com.gitblit.RobotsTxtServlet" /> @@ -393,7 +386,15 @@ <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.GitblitWicketFilter" /> <class name="com.gitblit.wicket.GitBlitWebApp" /> + <!-- Manually include alternative User Services --> + <class name="com.gitblit.LdapUserService" /> + <class name="com.gitblit.RedmineUserService" /> + <class name="com.gitblit.SalesforceUserService" /> + <class name="com.gitblit.WindowsUserService" /> + <class name="com.gitblit.PAMUserService" /> </mx:genjar> <!-- Build Express Zip file --> @@ -450,6 +451,7 @@ <resource file="${project.resources.dir}/commit_merge_16x16.png" /> <resource file="${project.resources.dir}/commit_divide_16x16.png" /> <resource file="${project.resources.dir}/star_16x16.png" /> + <resource file="${project.resources.dir}/mirror_16x16.png" /> <resource file="${project.resources.dir}/blank.png" /> <resource file="${project.src.dir}/log4j.properties" /> <resource> @@ -460,6 +462,11 @@ </resource> <mainclass name="com.gitblit.client.GitblitManagerLauncher" /> + <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" /> <manifest> <attribute name="SplashScreen-Image" value="splash.png" /> </manifest> @@ -481,75 +488,7 @@ <!-- Cleanup --> <delete file="${project.targetDirectory}/manager.jar" /> </target> - - - <!-- - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Build the stand-alone, Gitblit Authority - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - --> - <target name="buildAuthority" depends="compile" description="Builds the stand-alone Gitblit Authority"> - <echo>Building Gitblit Authority ${project.version}</echo> - <!-- generate jar by traversing the class hierarchy of the specified - classes, exclude any classes in "authority" classpath jars --> - <mx:genjar tag="authority" excludeClasspathJars="true" - destfile="${project.targetDirectory}/authority.jar"> - <resource file="${project.src.dir}/com/gitblit/client/splash.png" /> - <resource file="${project.resources.dir}/gitblt-favicon.png" /> - <resource file="${project.resources.dir}/user_16x16.png" /> - <resource file="${project.resources.dir}/users_16x16.png" /> - <resource file="${project.resources.dir}/rosette_16x16.png" /> - <resource file="${project.resources.dir}/rosette_32x32.png" /> - <resource file="${project.resources.dir}/vcard_16x16.png" /> - <resource file="${project.resources.dir}/settings_16x16.png" /> - <resource file="${project.resources.dir}/settings_32x32.png" /> - <resource file="${project.resources.dir}/search-icon.png" /> - <resource file="${project.resources.dir}/mail_16x16.png" /> - <resource file="${project.resources.dir}/script_16x16.png" /> - <resource file="${project.resources.dir}/blank.png" /> - <resource file="${project.resources.dir}/bullet_green.png" /> - <resource file="${project.resources.dir}/bullet_orange.png" /> - <resource file="${project.resources.dir}/bullet_red.png" /> - <resource file="${project.resources.dir}/bullet_white.png" /> - <resource file="${project.resources.dir}/bullet_delete.png" /> - <resource file="${project.resources.dir}/bullet_key.png" /> - <resource file="${project.src.dir}/log4j.properties" /> - <resource> - <!-- inlcude all translations --> - <fileset dir="${project.src.dir}/com/gitblit/wicket"> - <include name="*.properties" /> - </fileset> - </resource> - - <mainclass name="com.gitblit.authority.Launcher" /> - <manifest> - <attribute name="SplashScreen-Image" value="splash.png" /> - </manifest> - </mx:genjar> - - <!-- Build Authority Zip file --> - <mx:zip destfile="${project.targetDirectory}/${authority.zipfile}"> - <fileset dir="${basedir}"> - <include name="LICENSE" /> - <include name="NOTICE" /> - </fileset> - <fileset dir="${project.targetDirectory}"> - <include name="authority.jar" /> - </fileset> - <zipfileset dir="${project.distrib.dir}/data" prefix="data"> - <include name="users.conf" /> - <include name="gitblit.properties" /> - </zipfileset> - <!-- Gitblit Authority data --> - <zipfileset dir="${project.distrib.dir}/data/certs" prefix="data/certs" /> - <!-- include "authority" tagged dependencies --> - <dependencies prefix="ext" tag="authority" /> - </mx:zip> - - <!-- Cleanup --> - <delete file="${project.targetDirectory}/authority.jar" /> - </target> <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -620,9 +559,6 @@ <delete> <fileset dir="${project.targetDirectory}"> <include name="javadoc/**" /> - <include name="gbapi-${project.version}.jar" /> - <include name="gbapi-${project.version}-sources.jar" /> - <include name="gbapi-${project.version}-javadoc.jar" /> </fileset> </delete> </target> @@ -648,8 +584,33 @@ <page name="features" src="features.mkd" /> <page name="screenshots" src="screenshots.mkd" /> </menu> - <menu name="documentation"> - <page name="setup" src="setup.mkd" /> + <menu name="documentation" pager="true" pagerPlacement="bottom" pagerLayout="justified"> + <menu name="Gitblit GO" pager="true" pagerPlacement="bottom" pagerLayout="justified"> + <page name="setup GO" src="setup_go.mkd" /> + <page name="upgrade GO" src="upgrade_go.mkd" /> + </menu> + <divider /> + <menu name="Gitblit WAR" pager="true" pagerPlacement="bottom" pagerLayout="justified"> + <page name="setup WAR" src="setup_war.mkd" /> + <page name="upgrade WAR" src="upgrade_war.mkd" /> + </menu> + <divider /> + <menu name="Gitblit Express" pager="true" pagerPlacement="bottom" pagerLayout="justified"> + <page name="setup Express" src="setup_express.mkd" /> + <page name="upgrade Express" src="upgrade_express.mkd" /> + </menu> + <divider /> + <page name="administration" src="administration.mkd" /> + <page name="authentication" src="setup_authentication.mkd" /> + <page name="push hooks" src="setup_hooks.mkd" /> + <page name="lucene indexing" src="setup_lucene.mkd" /> + <page name="reverse proxies" src="setup_proxy.mkd" /> + <page name="client app menus" src="setup_clientmenus.mkd" /> + <divider /> + <page name="Gitblit as a viewer" src="setup_viewer.mkd" /> + <divider /> + <page name="git client setup" src="setup_client.mkd" /> + <divider /> <page name="federation" src="federation.mkd" /> <divider /> <page name="settings" src="properties.mkd" /> @@ -683,7 +644,8 @@ </menu> <menu name="links"> - <link name="Demo" src="https://demo-gitblit.rhcloud.com" /> + <link name="Gitblit Demo (RELEASE)" src="https://demo-gitblit.rhcloud.com" /> + <link name="Gitblit Next (SNAPSHOT)" src="https://next-gitblit.rhcloud.com" /> <divider /> <link name="Github" src="${project.scmUrl}" /> <link name="Issues" src="${project.issuesUrl}" /> @@ -699,6 +661,7 @@ <properties token="%PROPERTIES%" file="${project.distrib.dir}/data/gitblit.properties" /> <regex searchPattern="\b(issue)(\s*[#]?|-){0,1}(\d+)\b" replacePattern="<a href='http://code.google.com/p/gitblit/issues/detail?id=$3'>issue $3</a>" /> + <regex searchPattern="\b(pr|pull request)(\s*[#]?|-){0,1}(\d+)\b" replacePattern="<a href='https://github.com/gitblit/gitblit/pull/$3'>pull request #$3</a>" /> <!-- Set the logo from the mx:doc resources --> <logo file="${project.resources.dir}/gitblt_25_white.png" /> @@ -742,13 +705,26 @@ </target> + <!-- + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Package and deploy RELEASE artifacts to the Maven repository + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + --> + <target name="buildMavenArtifacts" depends="buildApiLibrary"> + <mx:package /> + <mx:deploy basedir="${maven.directory}" allowsnapshots="false" /> + <mx:deploy basedir="${maven.directory}" allowsnapshots="false" + name="Gitblit API" description="Gitblit JSON/RSS API client library" + tags="api" artifactid="gbapi" /> + </target> + <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Build all binaries and site ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> - <target name="buildAll" depends="buildAuthority,buildGO,buildWAR,buildExpress,buildFederationClient,buildManager,buildApiLibrary,buildSite" /> + <target name="buildAll" depends="buildGO,buildWAR,buildExpress,buildFederationClient,buildManager,buildApiLibrary,buildSite" /> <!-- @@ -756,7 +732,7 @@ Update the gh-pages branch with the current site ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> - <target name="updateGhPages" depends="buildSite"> + <target name="updateGhPages"> <!-- Build gh-pages branch --> <mx:ghpages repositorydir="${basedir}" obliterate="true" /> </target> @@ -767,51 +743,72 @@ Publish binaries to Google Code ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> - <target name="publishBinaries" depends="clean,buildGO,buildWAR,buildExpress,buildFederationClient,buildManager,buildApiLibrary" description="Publish the Gitblit binaries to Google Code"> + <target name="publishBinaries" depends="prepare" description="Publish the Gitblit binaries to Google Code"> <echo>Uploading Gitblit ${project.version} binaries</echo> <!-- Upload Gitblit GO Windows ZIP file --> <mx:gcupload - sourceFile="${distribution.zipfile}" - targetFile="gitblit-${project.version}.zip" - description="Gitblit GO v${project.version} (standalone, integrated Gitblit server for Windows)" /> + username="${googlecode.user}" + password="${googlecode.password}" + projectname="gitblit" + filename="${project.targetDirectory}/${distribution.zipfile}" + targetFilename="gitblit-${project.version}.zip" + summary="Gitblit GO v${project.version} (standalone, integrated Gitblit server for Windows)" /> <!-- Upload Gitblit GO Linux/Unix tar.gz file --> <mx:gcupload - sourceFile="${distribution.tgzfile}" - targetFile="gitblit-${project.version}.tar.gz" - description="Gitblit GO v${project.version} (standalone, integrated Gitblit server for Linux/Unix)" /> + username="${googlecode.user}" + password="${googlecode.password}" + projectname="gitblit" + filename="${project.targetDirectory}/${distribution.tgzfile}" + targetFilename="gitblit-${project.version}.tar.gz" + summary="Gitblit GO v${project.version} (standalone, integrated Gitblit server for Linux/Unix)" /> <!-- Upload Gitblit WAR file --> - <mx:gcupload - sourceFile="${distribution.warfile}" - targetFile="gitblit-${project.version}.war" - description="Gitblit WAR v${project.version} (standard WAR webapp for servlet containers)" /> + <mx:gcupload + username="${googlecode.user}" + password="${googlecode.password}" + projectname="gitblit" + filename="${project.targetDirectory}/${distribution.warfile}" + targetFilename="gitblit-${project.version}.war" + summary="Gitblit WAR v${project.version} (standard WAR webapp for servlet containers)" /> <!-- Upload Gitblit FedClient --> - <mx:gcupload - sourceFile="${fedclient.zipfile}" - targetFile="fedclient-${project.version}.zip" - description="Gitblit Federation Client v${project.version} (command-line tool to clone data from federated Gitblit instances)" /> + <mx:gcupload + username="${googlecode.user}" + password="${googlecode.password}" + projectname="gitblit" + filename="${project.targetDirectory}/${fedclient.zipfile}" + targetFilename="fedclient-${project.version}.zip" + summary="Gitblit Federation Client v${project.version} (command-line tool to clone data from federated Gitblit instances)" /> <!-- Upload Gitblit Manager --> <mx:gcupload - sourceFile="${manager.zipfile}" - targetFile="manager-${project.version}.zip" - description="Gitblit Manager v${project.version} (Swing tool to remotely administer a Gitblit server)" /> + username="${googlecode.user}" + password="${googlecode.password}" + projectname="gitblit" + filename="${project.targetDirectory}/${manager.zipfile}" + targetFilename="manager-${project.version}.zip" + summary="Gitblit Manager v${project.version} (Swing tool to remotely administer a Gitblit server)" /> <!-- Upload Gitblit API Library --> <mx:gcupload - sourceFile="${gbapi.zipfile}" - targetFile="gbapi-${project.version}.zip" - description="Gitblit API Library v${project.version} (JSON RPC library to integrate with your software)" /> + username="${googlecode.user}" + password="${googlecode.password}" + projectname="gitblit" + filename="${project.targetDirectory}/${gbapi.zipfile}" + targetFilename="gbapi-${project.version}.zip" + summary="Gitblit API Library v${project.version} (JSON RPC library to integrate with your software)" /> <!-- Upload Gitblit Express for RedHat OpenShift --> - <mx:gcupload - sourceFile="${express.zipfile}" - targetFile="express-${project.version}.zip" - description="Gitblit Express v${project.version} (run Gitblit on RedHat's OpenShift cloud)" /> + <mx:gcupload + username="${googlecode.user}" + password="${googlecode.password}" + projectname="gitblit" + filename="${project.targetDirectory}/${express.zipfile}" + targetFilename="express-${project.version}.zip" + summary="Gitblit Express v${project.version} (run Gitblit on RedHat's OpenShift cloud)" /> </target> @@ -819,54 +816,73 @@ <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Publish site to site hosting service - You must add ext/commons-net-1.4.0.jar to your ANT classpath. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> - <target name="publishSite" depends="clean,buildSite,updateGhPages" description="Publish the Gitblit site to a webserver (requires ext/commons-net-1.4.0.jar)" > + <target name="publishSite" depends="clean,buildSite,updateGhPages" description="Publish the Gitblit site to a host" > <echo>Uploading Gitblit ${project.version} website</echo> - <ftp server="${ftp.server}" + <mx:ftp server="${ftp.server}" userid="${ftp.user}" password="${ftp.password}" remotedir="${ftp.dir}" passive="true" verbose="yes"> <fileset dir="${project.siteTargetDirectory}" /> - </ftp> + </mx:ftp> </target> <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Compile from source, publish binaries, and build & deploy site - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - --> - <target name="publishAll" depends="publishBinaries,publishSite" /> - - - <!-- - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Tag a new version and prepare for the next development cycle. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> - <target name="tagRelease" depends="prepare"> + <target name="tagRelease" depends="prepare" description="tag a new version and prepare for the next development cycle"> <!-- release --> <property name="dryrun" value="false" /> <mx:version stage="release" dryrun="${dryrun}" /> + <property name="project.tag" value="v${project.version}" /> <!-- commit build.moxie & releases.moxie (automatic) --> <mx:commit showtitle="no"> <message>Prepare ${project.version} release</message> - <tag name="v${project.version}"> + <tag name="${project.tag}"> <message>${project.name} ${project.version} release</message> </tag> </mx:commit> + + <!-- create the release process script --> + <mx:if> + <os family="windows" /> + <then> + <!-- Windows PowerShell script --> + <!-- set-executionpolicy remotesigned --> + <property name="recipe" value="release_${project.version}.ps1" /> + </then> + <else> + <!-- Bash script --> + <property name="recipe" value="release_${project.version}.sh" /> + </else> + </mx:if> + <delete file="${recipe}" failonerror="false" quiet="true" verbose="false" /> + <!-- Work-around for lack of proper ant property substitution in copy --> + <property name="dollar" value="$"/> + <copy file="release.template" tofile="${recipe}"> + <filterset begintoken="${dollar}{" endtoken="}"> + <filter token="project.version" value="${project.version}" /> + <filter token="project.commitId" value="${project.commitId}" /> + <filter token="project.tag" value="${project.tag}" /> + <filter token="project.directory" value="${basedir}" /> + <filter token="maven.directory" value="${maven.directory}" /> + </filterset> + </copy> + <chmod file="${recipe}" perm="ugo+rx" /> <!-- next cycle --> <mx:version stage="snapshot" incrementNumber="incremental" dryrun="${dryrun}" /> <mx:commit showtitle="no"> <message>Reset build identifiers for next development cycle</message> - </mx:commit> + </mx:commit> </target> @@ -885,11 +901,36 @@ <page name="features" src="features.mkd" /> </menu> <menu name="documentation"> - <page name="setup" src="setup.mkd" /> + <menu name="Gitblit GO" pager="true" pagerPlacement="bottom" pagerLayout="justified"> + <page name="setup GO" src="setup_go.mkd" /> + <page name="upgrade GO" src="upgrade_go.mkd" /> + </menu> + <divider /> + <menu name="Gitblit WAR" pager="true" pagerPlacement="bottom" pagerLayout="justified"> + <page name="setup WAR" src="setup_war.mkd" /> + <page name="upgrade WAR" src="upgrade_war.mkd" /> + </menu> + <divider /> + <menu name="Gitblit Express" pager="true" pagerPlacement="bottom" pagerLayout="justified"> + <page name="setup Express" src="setup_express.mkd" /> + <page name="upgrade Express" src="upgrade_express.mkd" /> + </menu> + <divider /> + <page name="administration" src="administration.mkd" /> + <page name="authentication" src="setup_authentication.mkd" /> + <page name="push hooks" src="setup_hooks.mkd" /> + <page name="lucene indexing" src="setup_lucene.mkd" /> + <page name="reverse proxies" src="setup_proxy.mkd" /> + <page name="client app menus" src="setup_clientmenus.mkd" /> + <divider /> + <page name="Gitblit as a viewer" src="setup_viewer.mkd" /> + <divider /> + <page name="git client setup" src="setup_client.mkd" /> + <divider /> <page name="federation" src="federation.mkd" /> <divider /> - <page name="faq" src="faq.mkd" /> <page name="settings" src="properties.mkd" /> + <page name="faq" src="faq.mkd" /> <divider /> <page name="design" src="design.mkd" /> <page name="rpc" src="rpc.mkd" /> @@ -899,7 +940,8 @@ <page name="older releases" src="releasehistory.mkd" /> </menu> <menu name="links"> - <link name="Demo" src="https://demo-gitblit.rhcloud.com" /> + <link name="Gitblit Demo (RELEASE)" src="https://demo-gitblit.rhcloud.com" /> + <link name="Gitbilt Next (SNAPSHOT)" src="https://next-gitblit.rhcloud.com" /> <divider /> <link name="Github" src="${project.scmUrl}" /> <link name="Issues" src="${project.issuesUrl}" /> @@ -912,7 +954,8 @@ <properties token="%PROPERTIES%" file="${project.distrib.dir}/data/gitblit.properties" /> <regex searchPattern="\b(issue)(\s*[#]?|-){0,1}(\d+)\b" replacePattern="<a href='http://code.google.com/p/gitblit/issues/detail?id=$3'>issue $3</a>" /> - + <regex searchPattern="\b(pr|pull request)(\s*[#]?|-){0,1}(\d+)\b" replacePattern="<a href='https://github.com/gitblit/gitblit/pull/$3'>pull request #$3</a>" /> + <!-- Set the logo from the mx:doc resources --> <logo file="${project.resources.dir}/gitblt_25_white.png" /> <favicon file="${project.resources.dir}/gitblt-favicon.png" /> @@ -947,7 +990,13 @@ <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}/git" /> + <copy todir="@{toDir}/git" overwrite="false"> + <fileset dir="${project.distrib.dir}/data/git"> + <include name="project.mkd" /> </fileset> </copy> <mkdir dir="@{toDir}/groovy" /> @@ -957,6 +1006,8 @@ <include name="sendmail-html.groovy" /> <include name="jenkins.groovy" /> <include name="protect-refs.groovy" /> + <include name="blockpush.groovy" /> + <include name="localclone.groovy" /> <include name="fogbugz.groovy" /> <include name="thebuggenie.groovy" /> </fileset> @@ -994,8 +1045,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" /> - <property name="resourceFolderPrefix" value="" /> - <mx:jar destfile="${project.jar}" includeresources="true" resourceFolderPrefix="${resourceFolderPrefix}" /> + <property name="resourceFolderPrefix" value="" /> + <mx:jar destfile="${project.jar}" includeresources="true" resourceFolderPrefix="${resourceFolderPrefix}" /> <exec executable="mvn"> <arg value="install:install-file" /> @@ -1027,5 +1078,6 @@ <arg value="-DrepositoryId=${project.maven.repo.id}" /> <arg value="-DcreateChecksum=true" /> </exec> - </target> + </target> + </project> -- Gitblit v1.9.1