diff options
author | Bjørn Forsman <bjorn.forsman@gmail.com> | 2015-10-06 21:41:13 +0200 |
---|---|---|
committer | Bjørn Forsman <bjorn.forsman@gmail.com> | 2015-10-06 22:11:03 +0200 |
commit | 04e748e61fd8613cc35a5966eb51cfaa2a633be2 (patch) | |
tree | 4df1c468158df21551e85698268187447abc0544 /nixos/modules/services/continuous-integration/jenkins | |
parent | 302a76d1ad8e35d1dd9488198259ca1b63afb5f5 (diff) | |
download | nixlib-04e748e61fd8613cc35a5966eb51cfaa2a633be2.tar nixlib-04e748e61fd8613cc35a5966eb51cfaa2a633be2.tar.gz nixlib-04e748e61fd8613cc35a5966eb51cfaa2a633be2.tar.bz2 nixlib-04e748e61fd8613cc35a5966eb51cfaa2a633be2.tar.lz nixlib-04e748e61fd8613cc35a5966eb51cfaa2a633be2.tar.xz nixlib-04e748e61fd8613cc35a5966eb51cfaa2a633be2.tar.zst nixlib-04e748e61fd8613cc35a5966eb51cfaa2a633be2.zip |
nixos/jenkins: reduce default environment
Don't pull in all of environment.sessionVariables, only add what's needed for nix and HTTPS to work (which was the point of the previous patch).
Diffstat (limited to 'nixos/modules/services/continuous-integration/jenkins')
-rw-r--r-- | nixos/modules/services/continuous-integration/jenkins/default.nix | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/nixos/modules/services/continuous-integration/jenkins/default.nix b/nixos/modules/services/continuous-integration/jenkins/default.nix index cf13c73ab4df..7a118ac72071 100644 --- a/nixos/modules/services/continuous-integration/jenkins/default.nix +++ b/nixos/modules/services/continuous-integration/jenkins/default.nix @@ -69,10 +69,11 @@ in { type = with types; attrsOf str; description = '' Additional environment variables to be passed to the jenkins process. - This setting will merge with everything in - <option>config.environment.sessionVariables</option>, - JENKINS_HOME and NIX_REMOTE. This option takes precedence and can - override any previously set environment variable. + As a base environment, jenkins receives NIX_PATH, SSL_CERT_FILE and + GIT_SSL_CAINFO from <option>environment.sessionVariables</option>, + NIX_REMOTE is set to "daemon" and JENKINS_HOME is set to + the value of <option>services.jenkins.home</option>. This option has + precedence and can be used to override those mentioned variables. ''; }; @@ -110,11 +111,20 @@ in { wantedBy = [ "multi-user.target" ]; environment = - config.environment.sessionVariables // - { JENKINS_HOME = cfg.home; - NIX_REMOTE = "daemon"; - } // - cfg.environment; + let + selectedSessionVars = + lib.filterAttrs (n: v: builtins.elem n + [ "NIX_PATH" + "SSL_CERT_FILE" + "GIT_SSL_CAINFO" + ]) + config.environment.sessionVariables; + in + selectedSessionVars // + { JENKINS_HOME = cfg.home; + NIX_REMOTE = "daemon"; + } // + cfg.environment; path = cfg.packages; |