Thursday, April 19, 2012

Continuous Integration with Jenkins and BitNami

If you are a developer, you are probably already familiar with Jenkins. Previously known as Hudson, Jenkins is an open source continuous integration server built with Java that supports building and testing virtually any project. It supports different SCM tools, can execute Apache Ant and Apache Maven-based projects as well as arbitrary shell scripts and Windows batch commands, can monitor executions of remote tasks and more. Hundreds of plugins are also available that you can use for configuring your own system based on your specific requirements.

Today, we are happy to announce a first version of our BitNami Jenkins Stack. It includes Apache Tomcat 7.0.27 and the latest (and greatest) available Jenkins version, Jenkins 1.460. As always, you can get the native installers, virtual appliances and AMIs for the Amazon Cloud.

Here are a few notes on the default BitNami configuration:

- Jenkins is configured with Tomcat. For starting Tomcat you can use our Graphical Manager Tool or the ctlscript.sh utility both included in the installation directory (the installation directory is /opt/bitnami in Virtual Machines and AMIs). On Windows, Tomcat is installed as a service and it will automatically start at boot time.

- The JENKINS_HOME variable will point to apps/jenkins/jenkins_home in your installation directory.

- We configure the stack with the standard security setup. The access control is Jenkins's own user database as security realm and we use the Project-based Matrix Authorization Strategy. During the installation process, you will be prompted to enter the administrator user credentials, which by default will be user/bitnami in Virtual Appliances and AMIs. Notice that Anonymous login and user sign up are disabled. After login, you can easily change these settings through the Jenkins Web interface.

If you haven't had the chance to take a look at Jenkins yet, you no longer have an excuse! We know that you will find Jenkins to be a great and flexible is tool, both in the web interface and the APIs it provides. We would like to hear about your experience when trying BitNami Jenkins (good or bad) in any of its flavors (native installers, virtual machines or AMIs).

If you are already familiar with Jenkins, we would love to hear from you as well. We know there are lot of possible configurations with Jenkins and third party components and we would like to get your feedback on how to improve the BitNami Jenkins Stack.

1 comment:

It really frustrates me that I can't seem to find a way to get Jenkins to run at the root of the URL. I have a reverse proxy which points requests coming from ci.mydomain.com on port 80 to http://localhost:8080/.