This is very cool….. I definitely need to look at this a bit as there a few there projects that would love to have something similar. :)
Dan > On Nov 15, 2016, at 4:01 AM, Davor Bonaci <da...@google.com.INVALID> wrote: > > Hi everybody, > As I'm sure everybody knows, we use Apache's Jenkins instance for all our > testing, including pre-commit, post-commit, nightly snapshot, etc. (Travis > CI is a backup system and recommended for individual forks only.) > > Managing Jenkins projects has been a big pain point so far. Among other > reasons, only a few of us have access to configure it, way too few of us > have visibility into what those jobs do, and nobody has any visibility into > changes being made or an opportunity to comment on them. > > Well, not any more! I was playing a little bit with Jenkins DSL plugin and > was able to move our configuration out of Jenkins and into the git > repository. I've done it as a proof of concept for the website repository > only [1], but Jason is planning on extending that work to the main > repository. Look for a PR shortly! > > Going forward, anyone can see what our Jenkins jobs are doing, and anyone > can add new jobs or improve existing ones by simply proposing a pull > request to change the configuration. Finally, the project maintains a > history in source repository, instead of direct changes without much > accountability. > > How this works? There's a "seed" job that periodically applies > configuration specified in the source repository into Jenkins. Currently, > this happens once per day. If you modify the configuration in the source > repository, it will be applied within 24 hours. If you, however, modify the > configuration in Jenkins directly, it will revert back to whatever is > specified in the code repository also within 24 hours. > > How to understand Jenkins DSL? There are many resources available; I've > found Jenkins Job DSL API [2] particularly helpful. > > I hope you are excited to have this feature available to us! If you have > any thoughts on improving this further, please comment. Thanks! > > Davor > > [1] https://github.com/apache/incubator-beam-site/pull/80 > [2] https://jenkinsci.github.io/job-dsl-plugin/ -- Daniel Kulp dk...@apache.org - http://dankulp.com/blog Talend Community Coder - http://coders.talend.com