James Moger
2011-12-16 9be337b389f9edb4c5761fca2c34104ca43c5b08
Switch GO to monolithic build for installations without internet connection
3 files modified
21 ■■■■ changed files
build.xml 17 ●●●● patch | view | raw | blame | history
docs/00_index.mkd 2 ●●● patch | view | raw | blame | history
docs/04_releases.mkd 2 ●●●●● patch | view | raw | blame | history
build.xml
@@ -181,6 +181,15 @@
            </manifest>
        </jar>
        <!-- Gitblit library dependencies -->
        <mkdir dir="${project.deploy.dir}/lib"/>
        <copy todir="${project.deploy.dir}/lib">
            <fileset dir="${basedir}/ext">
                <exclude name="*-sources.jar" />
                <exclude name="*-javadoc.jar" />
            </fileset>
        </copy>
        <!-- Build the docs for the deploy -->
        <antcall target="buildDocs" inheritall="true" inheritrefs="true">
            <param name="docs.output.dir" value="${project.deploy.dir}/docs" />
@@ -459,7 +468,7 @@
        Build a Gitblit filesystem for deployment to RedHat OpenShif Expresst
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    -->
    <target name="buildOpenShift" depends="compile" description="Build exploded WAR file suitable for deployment to OpenShift Express">
    <target name="buildExpress" depends="compile" description="Build exploded WAR file suitable for deployment to OpenShift Express">
        <echo>Building Gitblit Express for RedHat OpenShift ${gb.version}</echo>
        
        <delete dir="${project.express.dir}" />
@@ -825,7 +834,7 @@
        Compile from source, publish binaries, and build & deploy site
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    -->
    <target name="buildAll" depends="buildGO,buildWAR,buildOpenShift,buildFederationClient,buildManager,buildApiLibrary,buildSite">
    <target name="buildAll" depends="buildGO,buildWAR,buildExpress,buildFederationClient,buildManager,buildApiLibrary,buildSite">
        <!-- Cleanup -->
        <delete dir="${project.build.dir}" />
        <delete dir="${project.war.dir}" />
@@ -839,7 +848,7 @@
        Publish binaries to Google Code
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    -->
    <target name="publishBinaries" depends="buildGO,buildWAR,buildOpenShift,buildFederationClient,buildManager" description="Publish the Gitblit binaries to Google Code">
    <target name="publishBinaries" depends="buildGO,buildWAR,buildExpress,buildFederationClient,buildManager" description="Publish the Gitblit binaries to Google Code">
        <echo>Uploading Gitblit ${gb.version} binaries</echo>
@@ -938,4 +947,4 @@
        <delete dir="${project.war.dir}" />
        <delete dir="${project.deploy.dir}" />
    </target>
</project>
</project>
docs/00_index.mkd
@@ -41,7 +41,7 @@
This is what you should download if you want to go from zero to Git in less than 5 mins.
All dependencies are downloaded on first execution.
All dependencies are bundled.
### WAR: For Your Servlet Container
*Gitblit WAR* is what you should download if you already have a servlet container available that you wish to use.  Jetty 6/7/8 and Tomcat 6/7 are known to work.  Generally, any Servlet 2.5 or Servlet 3.0 container should work.
docs/04_releases.mkd
@@ -3,6 +3,8 @@
### Current Release
**%VERSION%** ([go](http://code.google.com/p/gitblit/downloads/detail?name=%GO%) | [war](http://code.google.com/p/gitblit/downloads/detail?name=%WAR%) | [express](http://code.google.com/p/gitblit/downloads/detail?name=%EXPRESS%) | [fedclient](http://code.google.com/p/gitblit/downloads/detail?name=%FEDCLIENT%) | [manager](http://code.google.com/p/gitblit/downloads/detail?name=%MANAGER%) | [api](http://code.google.com/p/gitblit/downloads/detail?name=%API%)) based on [%JGIT%][jgit] &nbsp; *released %BUILDDATE%*
- updated: Gitblit GO is now monolithic like the WAR build. (issue 30)
Either the dependencies are downloaded on first execution OR the dependencies are bundled, either way you would need the dependencies.  This change helps adoption of GO in environments without an internet connection or with a restricted connection.
- added: Groovy 1.8.4 and sample pre- and post- push Groovy hook scripts.  Hook scripts can be set per-repository or globally for all repositories.  
Unfortunately this adds another 6 MB to the 8MB Gitblit package, but it allows for a *very* powerful, flexible, platform-independent hook script mechanism.  
    **New:** *groovy.scriptsFolder = groovy*