Thursday, June 16, 2011

Building your own Continuous Integration with Mule Cloud Connect and iON

As you probably already heard we launched Mule iON this week. If you ask one of our marketing guys what iON is, he will tell you that is the first cloud-based integration platform. iON will enable you to integrate popular SaaS applications, cloud services, social media, and a lot more without requiring any infrastructure.
Of course, I’m not a marketing guy, I’m a software developer. So my description is: “iON is awesome. It’s Mule on the cloud, and you are totally going to dig it”. Also, since I’m a software developer, I will put my money were my mouth is and I will show you how to build something incredible in a couple of minutes. Thats right! A few minutes and thats taking into account your learning curve of Mule iON.


Continuous Integration
If you are a software developer you probably heard about continuous integration. Continuous integration is the process of continuously verifying the quality of a software product. That means that instead of waiting until you are done to actually test a product you actually continuously test the quality as you develop it.
That is exactly what we are going to be building today. A Mule iON application that will do continuous integration of Maven-based projects. The application will connect to a database hosted at MongoHQ which will contain the list of applications to continuously integrate, then it will connect to their GitHub repositories, perform a clone of them locally and then invoke maven to actually build them.

So, the integration will be between GitHub, Mongo and Maven. In order to simplify this, we are going to be using the following components:

* MongoDB Connector
* Git Connector
* Maven Connector

Except for the MongoDB (which uses the original connector model) everything else was developed using our Mule Cloud Connect dev kit, and you will see how incredible easy it makes for you (the integration developer) to use different cloud services.