nixpkgs/pkgs/servers/etcd/default.nix

40 lines
903 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";
version = "3.3.21";
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}";
sha256 = "1xrhkynach3c7wsfac6zlpi5n1hy3y75vyimvw2zl7ryhm00413s";
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-04-26 07:42:50 +02:00
passthru.tests = with nixosTests; {
etcd = etcd;
etcd-cluster = 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/";
maintainers = with maintainers; [ offline ];
platforms = platforms.unix;
2016-09-03 14:02:53 +02:00
};
2016-06-04 08:40:17 +02:00
}