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.
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 controller in a fully reproducible way. With JCasC, setting up a new Jenkins controller will become a no-brainer event.
Fully working Jenkins controller with:
no hands on keyboard
no click on UI
No need to write glue code for every supported plugin
Most plugins supported out of the box
Others can bundle adapter code
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
The JCasC development tools improvement project was funded in 2019 through LFX Crowdfunding (formerly CommunityBridge) to improve the experience of administrators and developers creating and maintaining JCasC YAML files.