Jenkins Configuration as Code

The ‘as code’ paradigm is about being able to reproduce and/or restore a full environment within minutes based on recipes and automation, managed as code.

Manage configuration as human-readable config file(s)

Setting up Jenkins is a complex process, as both Jenkins and its plugins require some tuning and configuration, with dozens of parameters to set within the web UI manage section.

Jenkins Configuration as Code provides the ability to define this whole configuration as a simple, human-friendly, plain text yaml syntax. Without any manual steps, this configuration can be validated and applied to a Jenkins master in a fully reproducible way. With JCasC, setting up a new Jenkins master will become a no-brainer event.

Configure ALL Jenkins initial setup

Fully working Jenkins master with:

  • no hands on keyboard

  • no click on UI

Support most plugins without extra development effort

  • No need to write glue code for every supported plugin

  • Most plugins supported out of the box

  • Others can bundle adapter code

Getting started

  • Documentation and getting started

  • Questions about the use of configuration as code should be asked on the Jenkins Users mailing list (prefix the subject line with [JCasC]).

  • Questions related to the development of the plugin should be asked on the Jenkins Developers mailing list (just prefix the subject line with [JCasC]).

  • The source code

  • Feature requests, bugs and so on are currently tracked via the github issue tracker

Office Hours meeting

The purpose of JCasC Office Hours meeting is to discuss current issues but also short and long term future of the plugin

Time and location

The meeting takes place on Wednesdays, 9am (UTC+1) every two weeks.

Meetings will be announced at Event Calendar

Hangouts On Air is used to host and stream the meeting on Jenkins Youtube channel. Link to the actual meeting is always shared a few minutes before the meeting at configuration-as-code-plugin gitter channel

Minutes of Meeting are available for everyone interested

CommunityBridge

JCasC development tools improvement is a funded CommunityBridge project to improve the experience of administrators and developers creating and maintaining JCasC YAML files.