Is it easy?
Easier than you imagine:
1. Download Jenkins: http://jenkins-ci.org/
2. Deploy jersey.war
3. Start the application
4. Check the log for possible errors. If it looks like this, the deploy just worked fine
#jenkins#web#null#null#Deploying file with path [/usr/sap/ljs/./pickup/jenkins.war]| #jenkins#web#null#null#Jenkins home directory: /usr/sap/ljs/home/.jenkins found at: $user.home/.jenkins| #jenkins#web#null#null#Deployment of file with path [/usr/sap/ljs/./pickup/jenkins.war] is successful.|
5. Enjoy Jenkins on Neo
Can you use it?
Well, here the answer is: it depends. You can of course download plugins to adjust Jenkins to your specific needs. To use a GitHub repository, just download the plugins.
The problem is that you also have to provide git binaries that the plugin uses. When they are not made available, the plugin won't work. If you do not know how to provide the binaries to the plugin, you cannot use git with your Jenkins on Neo installation. On the other side, SVN is supported out of the box by Jenkins. Adding a SVN repository is not a problem. To see if this works, I created a Java project using the Maven 5 minutes tutorial.
mvn archetype:generate –DgroupId=com.tobias.neo.maven –DartifactId=NeoMaven –DarchteypeArtifactId=maven-archetype-quickstart –DinteractiveMode=false
This produces the following project structure that can be checked in to SVN.
Running now a build shows that Jenkins is able to check out the files from SVN
While you can tell Jenkins to download Ant, Maven and Java, this does not always work. For instance, see below the error thrown by Maven while trying to download dependencies found in pom.xml:
Adjusting the Java project to use ant by putting a build.xml file into the directory and providing the dependency JARs (/lib):
You can use Jenkins on Neo as your Continuous Integration solution. I am just not sure, if this is actually permitted by NW Cloud (data storage, workspace, directly in the file system) and if so, if it is a performing solution.