summary refs log tree commit diff
diff options
context:
space:
mode:
authorBjørn Forsman <bjorn.forsman@gmail.com>2016-07-15 14:45:23 +0200
committerBjørn Forsman <bjorn.forsman@gmail.com>2016-07-15 15:12:52 +0200
commit4075c10a59af455db2012beb313453662f09dad0 (patch)
tree0ea24e4bf206b2c17999b7fc56371209d38fde30
parent2e986016d06cbc1a6e5a3840375bd9e8ca24cbfb (diff)
downloadnixlib-4075c10a59af455db2012beb313453662f09dad0.tar
nixlib-4075c10a59af455db2012beb313453662f09dad0.tar.gz
nixlib-4075c10a59af455db2012beb313453662f09dad0.tar.bz2
nixlib-4075c10a59af455db2012beb313453662f09dad0.tar.lz
nixlib-4075c10a59af455db2012beb313453662f09dad0.tar.xz
nixlib-4075c10a59af455db2012beb313453662f09dad0.tar.zst
nixlib-4075c10a59af455db2012beb313453662f09dad0.zip
jenkins: move .war file from $out to $out/lib/jenkins.war
Fixes #14137, also known as:

  $ nix-shell -p jenkins
  bash: source: /nix/store/ln1yw6c2v8bb2cjqfr1z5aqcssw054wa-jenkins-2.3:
  cannot execute binary file
  [nix-shell exited with error]

The problem is that jenkins.war is not installed inside the directory
$out, but rather _as the file_ $out. Fix it by moving the file to
$out/lib/jenkins.war.

While at it, move buildCommand so that the "meta" section is at the end
of the expression (standard style), and quote shell variables.
-rw-r--r--nixos/modules/services/continuous-integration/jenkins/default.nix2
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix8
2 files changed, 7 insertions, 3 deletions
diff --git a/nixos/modules/services/continuous-integration/jenkins/default.nix b/nixos/modules/services/continuous-integration/jenkins/default.nix
index ae3f186c1d0a..7da49fa0aaab 100644
--- a/nixos/modules/services/continuous-integration/jenkins/default.nix
+++ b/nixos/modules/services/continuous-integration/jenkins/default.nix
@@ -154,7 +154,7 @@ in {
       '';
 
       script = ''
-        ${pkgs.jdk}/bin/java -jar ${pkgs.jenkins} --httpListenAddress=${cfg.listenAddress} \
+        ${pkgs.jdk}/bin/java -jar ${pkgs.jenkins}/lib/jenkins.war --httpListenAddress=${cfg.listenAddress} \
                                                   --httpPort=${toString cfg.port} \
                                                   --prefix=${cfg.prefix} \
                                                   ${concatStringsSep " " cfg.extraOptions}
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index 827fb4e05a50..cbc2b76d8acc 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -8,6 +8,12 @@ stdenv.mkDerivation rec {
     url = "http://mirrors.jenkins-ci.org/war/${version}/jenkins.war";
     sha256 = "0x59dbvh6y25ki5jy51djbfbhf8g2j3yd9f3n66f7bkdfw8p78g1";
   };
+
+  buildCommand = ''
+    mkdir -p "$out/lib"
+    cp "$src" "$out/lib/jenkins.war"
+  '';
+
   meta = with stdenv.lib; {
     description = "An extendable open source continuous integration server";
     homepage = http://jenkins-ci.org;
@@ -15,6 +21,4 @@ stdenv.mkDerivation rec {
     platforms = platforms.all;
     maintainers = [ maintainers.coconnor ];
   };
-
-  buildCommand = "cp $src $out";
 }