Love to code, although it bugs me.

Jenkins: Continuous Integration

No comments
In software engineering, continuous integration (CI) implements continuous processes of applying quality control — small pieces of effort, applied frequently. Continuous integration aims to improve the quality of software, and to reduce the time taken to deliver it, by replacing the traditional practice of applying quality control after completing all development. (cited from Wikipedia, the free encyclopedia).
If you work with Microsoft technologies and products, your sure bet will be the Team Foundation Server and ALM (Application Lifecycle Management) processes supported by that platform.
If you’re working with Java then Jenkins is for you, It’s an open source CI server written in Java. It is licensed under the MIT license terms, and it is widely adopted throughout the world for different languages and environments. It also has an enormous community that contributes plugins. Initially, Jenkins was called Hudson, and was developed inside Sun Microsystems' offices. When Oracle purchased Sun (and inherited the code base), they tried to change the way the project was managed. In early 2011, tensions between Oracle and the community lead to a project fork, and Jenkins was born. The main difference is that Hudson is still managed by Oracle, and Jenkins by most of the original Hudson developers (including the founder Kohsuke Kawaguchi), focused on the community's needs.
Continuous integration for the massesTo get started with Jenkins, you can follow the online tutorials. But for a more complete self-training I would recommend the book from O’Reilly, “Jenkins: The Definitive Guide”: It’s presented as being ideal for developers, software architects, and project managers, Jenkins: The Definitive Guide is both a CI tutorial and a comprehensive Jenkins reference. Through its wealth of best practices and real-world tips, you'll discover how easy it is to set up a CI service with Jenkins. Aspects covered are:
  • Learn how to install, configure, and secure your Jenkins server
  • Organize and monitor general-purpose build jobs
  • Integrate automated tests to verify builds, and set up code quality reporting
  • Establish effective team notification strategies and techniques
  • Configure build pipelines, parameterized jobs, matrix builds, and other advanced jobs
  • Manage a farm of Jenkins servers to run distributed builds
  • Implement automated deployment and continuous delivery
To great news are that if you don’t care for the paperback, you can download this book free on this site.
After getting to know Jenkins, another great resource is the free cheat sheet available from the guys at DZone.

No comments :

Post a Comment