From 78f50651f99ebdc566b843cfcde3408db023467d Mon Sep 17 00:00:00 2001 From: Maximilian Bode Date: Sun, 11 Mar 2018 01:08:34 +0100 Subject: prometheus: add 2.1.0 --- pkgs/servers/monitoring/prometheus/default.nix | 80 +++++++++++++++----------- 1 file changed, 47 insertions(+), 33 deletions(-) (limited to 'pkgs/servers/monitoring') diff --git a/pkgs/servers/monitoring/prometheus/default.nix b/pkgs/servers/monitoring/prometheus/default.nix index 46c02c6bb95d..86218a57284f 100644 --- a/pkgs/servers/monitoring/prometheus/default.nix +++ b/pkgs/servers/monitoring/prometheus/default.nix @@ -1,42 +1,56 @@ { stdenv, go, buildGoPackage, fetchFromGitHub }: -buildGoPackage rec { - name = "prometheus-${version}"; - version = "1.8.1"; - rev = "v${version}"; - +let goPackagePath = "github.com/prometheus/prometheus"; - src = fetchFromGitHub { - inherit rev; - owner = "prometheus"; - repo = "prometheus"; + generic = { version, sha256, ... }@attrs: + let attrs' = builtins.removeAttrs attrs ["version" "sha256"]; in + buildGoPackage ({ + name = "prometheus-${version}"; + + inherit goPackagePath; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "prometheus"; + repo = "prometheus"; + inherit sha256; + }; + + docheck = true; + + buildFlagsArray = let t = "${goPackagePath}/version"; in '' + -ldflags= + -X ${t}.Version=${version} + -X ${t}.Revision=unknown + -X ${t}.Branch=unknown + -X ${t}.BuildUser=nix@nixpkgs + -X ${t}.BuildDate=unknown + -X ${t}.GoVersion=${stdenv.lib.getVersion go} + ''; + + preInstall = '' + mkdir -p "$bin/share/doc/prometheus" "$bin/etc/prometheus" + cp -a $src/documentation/* $bin/share/doc/prometheus + cp -a $src/console_libraries $src/consoles $bin/etc/prometheus + ''; + + meta = with stdenv.lib; { + description = "Service monitoring system and time series database"; + homepage = https://prometheus.io; + license = licenses.asl20; + maintainers = with maintainers; [ benley fpletz ]; + platforms = platforms.unix; + }; + } // attrs'); +in rec { + prometheus_1 = generic { + version = "1.8.1"; sha256 = "07xvpjhhxc0r73qfmkvf94zhv19zv76privw6blg35k5nxcnj7j4"; }; - docheck = true; - - buildFlagsArray = let t = "${goPackagePath}/version"; in '' - -ldflags= - -X ${t}.Version=${version} - -X ${t}.Revision=unknown - -X ${t}.Branch=unknown - -X ${t}.BuildUser=nix@nixpkgs - -X ${t}.BuildDate=unknown - -X ${t}.GoVersion=${stdenv.lib.getVersion go} - ''; - - preInstall = '' - mkdir -p "$bin/share/doc/prometheus" "$bin/etc/prometheus" - cp -a $src/documentation/* $bin/share/doc/prometheus - cp -a $src/console_libraries $src/consoles $bin/etc/prometheus - ''; - - meta = with stdenv.lib; { - description = "Service monitoring system and time series database"; - homepage = https://prometheus.io; - license = licenses.asl20; - maintainers = with maintainers; [ benley fpletz ]; - platforms = platforms.unix; + prometheus_2 = generic { + version = "2.1.0"; + sha256 = "01pbqfp43qrqcgyidyg2lw9jnjdrv140vnmqmm49z0vhlkxkwlvw"; }; } -- cgit 1.4.1