Skip to Content

Continuous Integration Simplified learning:

Less than a year ago I was hearing a lot in my areas of work and many used/abused the word Continuous Integration as it seem to be key for emerging in “Cloud” :-). Then it became interest for even me too, so I started refering the documents, books and talked to and worked with some area experts. And found a short and quick definition from one of them: “A key software development practice where members of a team integrate their work frequently” * • It is all about reducing the risk by providing fast feedback to the team • CI help identify and fix integration and regression issues faster and earlier • Continuous Integration is an automated foundation towards Usable Software Each Takt.

(*) Martin Fowler, Continuous Integration: http://martinfowler.com/articles/continuousIntegration.html


All those were myths than reality until I really embarked upon giving a try on it myself. The myth simplified

reality is documented by simple easy steps you can just achieve and even rollout to project teams so quickly.

My version of this learning consists of 3 areas one has to take care, which I myself did with less than a week effort.

CI my learning steps.png

Continuous Integration with example tools- all from open source:

Sl.no

Process step

Via

1.       

Setup your Local development environment via any IDE

Eclipse

2.       

Develop your own application / place sample code in local workspaces

JAVA

3.       

Stage/push the local code for review to co-developer/tester with common projects in SCM

GIT

4.       

Once it is approved by your reviewer, you can see the same code in the global SCM servers

Gerrit

5.       

If the pushed code is not accepted by the SCM server, you will get build errors can be configured via email

Validation

6.       

Correct the errors locally and re-submit until you have green code

7.       

Setup a CI server

Jenkins

8.       

Install the required plugins if not part of the CI server, mainly the SCM ones

Maven

9.       

Create a CI server’s job in its framework/ui with jobs

Masters/Slaves

10.   

Allow it to execute every minute so that the Source code(mostly unit tests’ )

Junits

11.   

Report On any job/build failure you will be intimated via email/sms etc.

Results

All views welcome and the learning can be shared.

To report this post you need to login first.

Be the first to leave a comment

You must be Logged on to comment or reply to a post.

Leave a Reply