Jenkins CI: Where and how store configuration files?

15,028

I read most of Jenkins docs, ask at mail list and IRC. Yea - Jenkins community is silent. At docs I found link to Config File Provider Plugin, after that I visit http://builder.evil.com/jenkins/pluginManager/available page and look for config keyword.

There are a lot related plug-ins with various usefulness to my subject (most useless first):

Only last plug-in - Config File Provider Plugin allow editing configs via Jenkins WEB interface. And it have brother - Managed Script Plugin - for uploading/managing/editing custom scripts. No question now I use Config File Provider Plugin!

Share:
15,028
gavenkoa
Author by

gavenkoa

Software developer and instructor. Mathematician by education. Daily use Emacs and Firefox under Debian )) Visit my home page: http://defun.work/ Resume: http://resume.defun.work/ Blog: http://blog.defun.work/ IT Tips: http://tips.defun.work/ Public source code: http://hg.defun.work/

Updated on July 01, 2022

Comments

  • gavenkoa
    gavenkoa almost 2 years

    I am in process of moving configuration parameters out of Java application. I discover that the best approach is to extend your classpath and use .properties files (leave ZooKeeper alone for another requirement).

    So my WAR file no longer have any hosts/IPs/URLs, users/passwords.

    DevOps distribute configs manually across test, stage, stable installations.

    Now time for Jenkins to run tests. But they fail as there are no required .propeties files in classpath.

    How can I load this config files to Jenkins and how to make in available in test classpath?

    maven-surefire-plugin allow extending classpath and passing system-properties.

    So only question how to get separate directory in Jenkins hosting server and load files to this directory and create alias/placeholder/envvar per build job to refer to this path in build config.

    This job can be done with SSH access, but I think that this is "wrong way". I expect that this can be done via Jenkins UI (any manager can upload file in WEB browser).

    UPDATE I have no requirements for distributed slave/master builds but it whould nice to have solution that migrate configuration files to slaves automatically...

    In this way sshing to host or ftp/scp - bad thing.