diff options
author | Bjørn Forsman <bjorn.forsman@gmail.com> | 2022-07-18 10:17:40 +0200 |
---|---|---|
committer | Bjørn Forsman <bjorn.forsman@gmail.com> | 2022-07-23 13:30:53 +0200 |
commit | 16108ff74a5949ab43851be17860a177766feab0 (patch) | |
tree | 4e54a4143e36b154108352a2f24ab4efd6ad4190 | |
parent | 57d8154c4ef7ff2f0c7a667b92eb49b9f6744182 (diff) | |
download | nixpkgs-16108ff74a5949ab43851be17860a177766feab0.tar nixpkgs-16108ff74a5949ab43851be17860a177766feab0.tar.gz nixpkgs-16108ff74a5949ab43851be17860a177766feab0.tar.bz2 nixpkgs-16108ff74a5949ab43851be17860a177766feab0.tar.lz nixpkgs-16108ff74a5949ab43851be17860a177766feab0.tar.xz nixpkgs-16108ff74a5949ab43851be17860a177766feab0.tar.zst nixpkgs-16108ff74a5949ab43851be17860a177766feab0.zip |
nixos/jenkins-job-builder: set serviceConfig.Type = "oneshot"
This change allows detecting configuration errors during switch-to-configuration instead of them being reported asynchronously *after* switch-to-configuration has exited. (And update the NixOS test accordingly.)
-rw-r--r-- | nixos/modules/services/continuous-integration/jenkins/job-builder.nix | 1 | ||||
-rw-r--r-- | nixos/tests/jenkins.nix | 6 |
2 files changed, 2 insertions, 5 deletions
diff --git a/nixos/modules/services/continuous-integration/jenkins/job-builder.nix b/nixos/modules/services/continuous-integration/jenkins/job-builder.nix index edbf31f5ca1..49b39b03d47 100644 --- a/nixos/modules/services/continuous-integration/jenkins/job-builder.nix +++ b/nixos/modules/services/continuous-integration/jenkins/job-builder.nix @@ -243,6 +243,7 @@ in { done '' + (if cfg.accessUser != "" then reloadScript else ""); serviceConfig = { + Type = "oneshot"; User = jenkinsCfg.user; RuntimeDirectory = "jenkins-job-builder"; }; diff --git a/nixos/tests/jenkins.nix b/nixos/tests/jenkins.nix index 63b5860f0d2..3f111426db3 100644 --- a/nixos/tests/jenkins.nix +++ b/nixos/tests/jenkins.nix @@ -81,7 +81,7 @@ import ./make-test-python.nix ({ pkgs, ...} : { in '' start_all() - master.wait_for_unit("jenkins") + master.wait_for_unit("default.target") assert "Authentication required" in master.succeed("curl http://localhost:8080") @@ -96,8 +96,6 @@ import ./make-test-python.nix ({ pkgs, ...} : { with subtest("jobs are declarative"): # Check that jobs are created on disk. - master.wait_for_unit("jenkins-job-builder") - master.wait_until_fails("systemctl is-active jenkins-job-builder") master.wait_until_succeeds("test -f /var/lib/jenkins/jobs/job-1/config.xml") master.wait_until_succeeds("test -f /var/lib/jenkins/jobs/folder-1/config.xml") master.wait_until_succeeds("test -f /var/lib/jenkins/jobs/folder-1/jobs/job-2/config.xml") @@ -115,8 +113,6 @@ import ./make-test-python.nix ({ pkgs, ...} : { ) # Check that jobs are removed from disk. - master.wait_for_unit("jenkins-job-builder") - master.wait_until_fails("systemctl is-active jenkins-job-builder") master.wait_until_fails("test -f /var/lib/jenkins/jobs/job-1/config.xml") master.wait_until_fails("test -f /var/lib/jenkins/jobs/folder-1/config.xml") master.wait_until_fails("test -f /var/lib/jenkins/jobs/folder-1/jobs/job-2/config.xml") |