Book Image

Extending Jenkins

By : Donald Simpson
Book Image

Extending Jenkins

By: Donald Simpson

Overview of this book

Jenkins CI is the leading open source continuous integration server. It is written in Java and has a wealth of plugins to support the building and testing of virtually any project. Jenkins supports multiple Software Configuration Management tools such as Git, Subversion, and Mercurial. This book explores and explains the many extension points and customizations that Jenkins offers its users, and teaches you how to develop your own Jenkins extensions and plugins. First, you will learn how to adapt Jenkins and leverage its abilities to empower DevOps, Continuous Integration, Continuous Deployment, and Agile projects. Next, you will find out how to reduce the cost of modern software development, increase the quality of deliveries, and thereby reduce the time to market. We will also teach you how to create your own custom plugins using Extension points. Finally, we will show you how to combine everything you learned over the course of the book into one real-world scenario.
Table of Contents (16 chapters)
Extending Jenkins
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Groovy and Gradle as alternatives


If you are interested in Groovy, you can also use this language and a combination of other tools to create your own plugins—you don't have to stick to Java and Maven if you don't want to.

This page explains how to modify your project to use a build.gradle file in place of the Maven POM file that we used previously:

http://jenkins-ci.org/content/gradle-fy-your-jenkins-plugin-project

You can then execute commands such as gradle jpi, gradle check, gradle install, and so on to build and manage the plugin life cycle without Maven.

This CloudBees presentation illustrates the use of Groovy instead of Java for the plugin itself:

https://www.cloudbees.com/event/topic/groovy-way-write-jenkins-plugin

This is an increasingly popular approach due to the power and simplicity of Groovy. It also explains how you can replace Jelly with Groovy—using the same language (Gradle is based on Groovy, so… it's all Groovy!) throughout the development process makes a lot of sense.