about summary refs log tree commit diff
path: root/pkgs/applications/networking/cluster/openshift/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/networking/cluster/openshift/default.nix')
-rw-r--r--pkgs/applications/networking/cluster/openshift/default.nix20
1 files changed, 9 insertions, 11 deletions
diff --git a/pkgs/applications/networking/cluster/openshift/default.nix b/pkgs/applications/networking/cluster/openshift/default.nix
index 403457bb4a61..3915ab6cc263 100644
--- a/pkgs/applications/networking/cluster/openshift/default.nix
+++ b/pkgs/applications/networking/cluster/openshift/default.nix
@@ -1,13 +1,12 @@
-{ stdenv, fetchFromGitHub, go, which }:
+{ stdenv, fetchFromGitHub, which, buildGoPackage }:
 
 let
-  version = "1.3.2";
+  version = "1.5.0";
   ver = stdenv.lib.elemAt (stdenv.lib.splitString "." version);
   versionMajor = ver 0;
   versionMinor = ver 1;
   versionPatch = ver 2;
-in
-stdenv.mkDerivation rec {
+in buildGoPackage rec {
   name = "openshift-origin-${version}";
   inherit version;
 
@@ -15,17 +14,18 @@ stdenv.mkDerivation rec {
     owner = "openshift";
     repo = "origin";
     rev = "v${version}";
-    sha256 = "0zw8zb9c6icigcq6y47ppnjnqyghk2kril07bapbddvgnvbbfp6m";
+    sha256 = "0qvyxcyca3888nkgvyvqcmybm95ncwxb3zvrzbg2gz8kx6g6350v";
   };
 
-  buildInputs = [ go which ];
+  buildInputs = [ which ];
 
+  goPackagePath = null;
   patchPhase = ''
     patchShebangs ./hack
   '';
 
   buildPhase = ''
-    export GOPATH=$(pwd)
+    cd go/src/origin-v${version}-src
     # Openshift build require this variables to be set
     # unless there is a .git folder which is not the case with fetchFromGitHub
     export OS_GIT_VERSION=${version}
@@ -35,10 +35,8 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    export GOOS=$(go env GOOS)
-    export GOARCH=$(go env GOARCH)
-    mkdir -p "$out/bin"
-    mv _output/local/bin/$GOOS/$GOARCH/* "$out/bin/"
+    mkdir -p "$bin/bin"
+    cp "_output/local/bin/$(go env GOOS)/$(go env GOARCH)/"* "$bin/bin/"
   '';
 
   meta = with stdenv.lib; {