summary refs log tree commit diff
path: root/nixos/modules/services/continuous-integration/jenkins/job-builder.nix
Commit message (Collapse)AuthorAge
* nixos/doc: clean up defaults and examplesNaïm Favier2021-10-04
|
* nixos/jenkins-job-builder: add support for folder jobsBjørn Forsman2021-06-03
| | | | | | | | | | Add support for folder jobs (https://plugins.jenkins.io/cloudbees-folder/) by reworking the service to support nested jobs. This also fixes this deprecation warning (as a happy side effect): WARNING:jenkins_jobs.cli.subcommand.test:(Deprecated) The default output behavior of `jenkins-jobs test` when given the --output flag will change in JJB 3.0. Instead of writing jobs to OUTPUT/jobname; they will be written to OUTPUT/jobname/config.xml. The new behavior can be enabled by the passing `--config-xml` parameter
* nixos/jenkins-job-builder: add accessTokenFile optionBjørn Forsman2018-12-03
| | | | | The new option allows storing the secret access token outside the world readable Nix store.
* nixos/jenkins-job-builder: stop reloadScript on errorBjørn Forsman2018-12-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently there are two calls to curl in the reloadScript, neither which check for errors. If something is misconfigured (like wrong authToken), the only trace that something wrong happened is this log message: Asking Jenkins to reload config <h1>Bad Message 400</h1><pre>reason: Illegal character VCHAR='<'</pre> The service isn't marked as failed, so it's easy to miss. Fix it by passing --fail to curl. While at it: * Add $curl_opts and $jenkins_url variables to keep the curl command lines DRY. * Add --show-error to curl to show short error message explanation when things go wrong (like HTTP 401 error). * Lower-case the $CRUMB variable as upper case is for exported environment variables. The new behaviour, when having wrong accessToken: Asking Jenkins to reload config curl: (22) The requested URL returned error: 401 And the service is clearly marked as failed in `systemctl --failed`.
* jenkins-job-builder: allow setting access tokens for reloadingWei Tang2017-03-06
|
* Add missing 'type', 'defaultText' and 'literalExample' in module definitionsThomas Strobel2016-01-17
| | | | | | - add missing types in module definitions - add missing 'defaultText' in module definitions - wrap example with 'literalExample' where necessary in module definitions
* nixos/jenkins: rename option 'host' to 'listenAddress'Bjørn Forsman2015-12-23
| | | | | | | | | | | I think the name 'listenAddress' is more descriptive. Other NixOS modules that define 'host' either use it as listen address or as address a client connects to. listenAddress is unambiguous. The addition of 'host' was added earlier today[1], so not bothering with ./nixos/modules/rename.nix. [1]: 44ea18499710049e ("jenkins ci enhancement: add port and prefix option")
* jenkins-job-builder fix: use prefix and host from jenkins cfg, fixes #11897Augustin Borsu2015-12-23
|
* nixos: add services.jenkins.jobBuilder optionBjørn Forsman2015-11-03
This option allows to define (declarative) Jenkins jobs, using Jenkins Job Builder (JJB) as backend. Example: services.jenkins = { enable = true; jobBuilder = { enable = true; yamlJobs = '' - job: name: jenkins-job-test builders: - shell: echo 'Hello world!' ''; }; }; Jobs can be defined using YAML, JSON and Nix. Note that it really is declarative configuration; if you remove a previously defined job, the module will remove the jobdir under $JENKINS_HOME. Jobs managed through the Jenkins WebUI (or by other means) are not touched by this module. Changes v1 -> v2: * add nixJobs * let jsonJobs take a list of strings (allows merge) * 4 space indent in shell code