| ## 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 |