summaryrefslogtreecommitdiffstats
path: root/pkgs/applications/networking/cluster/openshift
diff options
context:
space:
mode:
authorVincent Demeester <vincent@sbr.pm>2018-12-20 18:45:54 +0100
committerVincent Demeester <vincent@sbr.pm>2018-12-20 18:45:54 +0100
commite4bc05f46044f36ab10e10e269e5609f1274b67f (patch)
tree0f44ddcfe3e47ba277b40075e0c1c17a3fe21f0d /pkgs/applications/networking/cluster/openshift
parent25eb8419d9d36dcb53f8ff1f3199bd35289ad482 (diff)
openshift: migrate to using buildGoPackage
This means `openshift` becomes a multi-output derivation : `openshift.bin` and `openshift` Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Diffstat (limited to 'pkgs/applications/networking/cluster/openshift')
-rw-r--r--pkgs/applications/networking/cluster/openshift/default.nix25
1 files changed, 11 insertions, 14 deletions
diff --git a/pkgs/applications/networking/cluster/openshift/default.nix b/pkgs/applications/networking/cluster/openshift/default.nix
index a34c728da168..f730329d0725 100644
--- a/pkgs/applications/networking/cluster/openshift/default.nix
+++ b/pkgs/applications/networking/cluster/openshift/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, removeReferencesTo, which, go, go-bindata, makeWrapper, rsync, utillinux
+{ stdenv, lib, fetchFromGitHub, buildGoPackage, which, go-bindata, rsync, utillinux
, coreutils, kerberos, clang
, components ? [
"cmd/oc"
@@ -20,7 +20,7 @@ let
k8sgitcommit = "b1b2997";
k8sgitMajor = "0";
k8sgitMinor = "1";
-in stdenv.mkDerivation rec {
+in buildGoPackage rec {
name = "openshift-origin-${version}";
inherit version;
@@ -29,13 +29,13 @@ in stdenv.mkDerivation rec {
repo = "origin";
rev = "v${version}";
sha256 = "06q4v2a1mm6c659ab0rzkqz6b66vx4avqfg0s9xckwhq420lzgka";
-};
+ };
+
+ goPackagePath = "github.com/openshift/origin";
# go > 1.10
# [FATAL] [14:44:02+0000] Please install Go version go or use PERMISSIVE_GO=y to bypass this check.
- buildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata kerberos clang ];
-
- outputs = [ "out" ];
+ buildInputs = [ which rsync go-bindata kerberos clang ];
patchPhase = ''
patchShebangs ./hack
@@ -54,6 +54,7 @@ in stdenv.mkDerivation rec {
'';
buildPhase = ''
+ cd go/src/${goPackagePath}
# Openshift build require this variables to be set
# unless there is a .git folder which is not the case with fetchFromGitHub
echo "OS_GIT_VERSION=v${version}" >> os-version-defs
@@ -71,14 +72,10 @@ in stdenv.mkDerivation rec {
'';
installPhase = ''
- mkdir -p "$out/bin"
- cp -a "_output/local/bin/$(go env GOOS)/$(go env GOARCH)/"* "$out/bin/"
- install -D -t "$out/etc/bash_completion.d" contrib/completions/bash/*
- install -D -t "$out/share/zsh/site-functions" contrib/completions/zsh/*
- '';
-
- preFixup = ''
- find $out/bin -type f -exec remove-references-to -t ${go} '{}' +
+ mkdir -p $bin/bin
+ cp -a "_output/local/bin/$(go env GOOS)/$(go env GOARCH)/"* "$bin/bin/"
+ install -D -t "$bin/etc/bash_completion.d" contrib/completions/bash/*
+ install -D -t "$bin/share/zsh/site-functions" contrib/completions/zsh/*
'';
meta = with stdenv.lib; {