## Gitblit on RedHat's OpenShift Cloud Service | |
The Gitblit Express distribution can be copied to the root of your RedHat OpenShift | |
application repository. Gitblit Express is an exploded WAR file with all appropriate | |
dependencies bundled. | |
You should delete the `pom.xml` file and the `src` folder from your application repository | |
as Gitblit Express is not a source distribution to be built with Maven on OpenShift. | |
Gitblit automatically adjusts itself to running on OpenShift. Repositories, users, | |
federation proposals, setting overrides, and Groovy push scripts are stored in *OPENSHIFT_DATA_DIR*. | |
It is recommended to enable all RPC settings in the `web.xml` file to allow remote | |
administration and, more importantly, configuration of your Gitblit Express | |
installation using the Gitblit Manager. | |
It is also recommended to set *web.forwardSlashCharacter* to ! because OpenShift | |
runs on JBoss/Tomcat behind a proxy, neither of which are friendly to embedded | |
forward-slashes. | |
Please do not change the following settings unless you know exactly what you are | |
doing: | |
- *git.repositoriesFolder* | |
- *groovy.scriptsFolder* | |
- *federation.proposalsFolder* | |
- *realm.userService* (for standard users.conf) | |
Additionally, it is recommended to force your Gitblit installation to cleanup up | |
older versions on your OpenShift filesystem to maximize available space for your | |
repositories. | |
Append the following command to your ./openshift/action_hooks/build file: | |
rm -fr $OPENSHIFT_APP_DIR/jbossas-7.0/standalone/tmp/vfs/* | |
Lastly, you may want to play with the heap and permgen settings of your Gitblit | |
instance because the default heap for the JVM is 95 MB, which may be a little | |
tight. | |
To do that you will have to login to your account via ssh: | |
ssh hashcode@app-domain.rhcloud.com | |
and then you will have to manipulate the -Xmx and -XX:MaxPermSize values. | |
vi $OPENSHIFT_APP_DIR/jbossas-7.0/bin/standalone.conf | |
ctl_app restart | |
OpenShift currently allows 300MB of memory per application which includes ssh access, JVM, etc. | |
The Gitblit demo hosted on OpenShift Express operates with -Xmx160m and -XX:MaxPermSize=90m. | |
For more detailed instructions on how to setup and deploy an OpenShift application | |
please see this excellent turorial: | |
https://github.com/opensas/play-demo/wiki/Step-12.5---deploy-to-openshift |