nixpkgs/pkgs/servers/etcd/default.nix

37 lines
880 B
Nix
Raw Normal View History

2020-04-26 07:42:50 +02:00
{ lib, buildGoPackage, fetchFromGitHub, nixosTests }:
2016-09-03 14:02:53 +02:00
2016-06-04 08:40:17 +02:00
buildGoPackage rec {
pname = "etcd";
2020-09-01 02:13:42 +02:00
version = "3.3.25";
2016-08-24 14:45:08 +02:00
2016-06-04 08:40:17 +02:00
goPackagePath = "github.com/coreos/etcd";
src = fetchFromGitHub {
2020-04-26 07:42:50 +02:00
owner = "etcd-io";
repo = "etcd";
2020-04-26 07:42:50 +02:00
rev = "v${version}";
2020-09-01 02:13:42 +02:00
sha256 = "10cyy6jr2xzmla5yyn850cv323ixrk70fjpk8lxjjjvy0ffmb6hj";
2016-06-04 08:40:17 +02:00
};
2020-04-26 07:42:50 +02:00
buildPhase = ''
cd go/src/${goPackagePath}
patchShebangs .
./build
./functional/build
'';
installPhase = ''
install -Dm755 bin/* bin/functional/cmd/* -t $out/bin
2020-04-26 07:42:50 +02:00
'';
2016-06-04 08:40:17 +02:00
2020-09-01 02:13:42 +02:00
passthru.tests = { inherit (nixosTests) etcd etcd-cluster; };
2016-09-03 14:02:53 +02:00
2020-04-26 07:42:50 +02:00
meta = with lib; {
2016-09-03 14:02:53 +02:00
description = "Distributed reliable key-value store for the most critical data of a distributed system";
license = licenses.asl20;
2020-04-26 07:42:50 +02:00
homepage = "https://etcd.io/";
2020-05-20 05:27:36 +02:00
maintainers = with maintainers; [ offline zowoq ];
2020-04-26 07:42:50 +02:00
platforms = platforms.unix;
2016-09-03 14:02:53 +02:00
};
2016-06-04 08:40:17 +02:00
}