Change to using source files to build traefik

This commit is contained in:
Hamish Hutchings 2017-09-18 13:37:36 +01:00
parent e0b81b9c3c
commit 0cc4cb96bb

View File

@ -1,18 +1,34 @@
{ stdenv, fetchurl }: { stdenv, buildGoPackage, fetchurl, bash, go-bindata}:
stdenv.mkDerivation rec { buildGoPackage rec {
name = "traefik-${version}"; name = "traefik-${version}";
version = "v1.3.8"; version = "v1.3.8";
goPackagePath = "github.com/containous/traefik";
src = fetchurl { src = fetchurl {
url = "https://github.com/containous/traefik/releases/download/${version}/traefik"; url = "https://github.com/containous/traefik/releases/download/${version}/traefik-${version}.src.tar.gz";
sha256 = "09m8svkqdrvayw871azzcb05dnbhbgb3c2380dw0v4wpcd0rqr9h"; sha256 = "6fce36dd30bb5ae5f91e69f2950f22fe7a74b920e80c6b441a0721122f6a6174";
}; };
buildCommand = '' buildInputs = [ go-bindata ];
mkdir -p $out/bin sourceRoot = ".";
cp $src $out/bin/traefik postUnpack = ''
chmod +x $out/bin/traefik files=`ls`
mkdir traefik
mv $files traefik/
export sourceRoot="traefik"
'';
buildPhase = ''
cd go/src/github.com/containous/traefik
${bash}/bin/bash ./script/make.sh generate
CGO_ENABLED=0 GOGC=off go build -v -ldflags "-s -w" -a -installsuffix nocgo -o dist/traefik ./cmd/traefik
'';
installPhase = ''
mkdir -p $bin/bin
cp ./dist/traefik $bin/bin/
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {