3
0
Fork 0
forked from mirrors/nixpkgs

New package: Prometheus monitoring system

This commit is contained in:
Benjamin Staffin 2015-02-17 14:28:56 -08:00
parent 55bbb4fb0b
commit 9c1f0b33a3
3 changed files with 176 additions and 0 deletions

View file

@ -0,0 +1,56 @@
{ stdenv, lib, goPackages, fetchFromGitHub, protobuf, vim }:
with goPackages;
buildGoPackage rec {
name = "prometheus-${version}";
version = "0.10.0";
goPackagePath = "github.com/prometheus/prometheus";
rev = "f5a0f7fa185dae2c772a5847a7aac9ba33b545f9";
src = fetchFromGitHub {
inherit rev;
owner = "prometheus";
repo = "prometheus";
sha256 = "1wagmr4bca8fbvi48n9p4hdnx1m4chyaa1bzman6dhqfmkiikf5q";
};
buildInputs = [
dns glog goleveldb prometheus.client_golang
goPackages.protobuf
protobuf # the non-golang package, for protoc
vim # for xxd, used in embed-static.sh
];
# Metadata that gets embedded into the binary
buildFlagsArray = ''
-ldflags=
-X main.buildVersion ${version}
-X main.buildRevision ${builtins.substring 0 6 rev}
-X main.buildBranch master
-X main.buildUser nix@nixpkgs
-X main.buildDate 20150101-00:00:00
-X main.goVersion ${lib.getVersion go}
'';
preBuild = ''
(
cd "go/src/$goPackagePath"
protoc --proto_path=./config \
--go_out=./config/generated/ \
./config/config.proto
cd web
${stdenv.shell} ../utility/embed-static.sh static templates \
| gofmt > blob/files.go
)
'';
meta = with lib; {
description = "Service monitoring system and time series database";
homepage = http://prometheus.github.io;
license = licenses.asl20;
maintainers = with maintainers; [ benley ];
platforms = platforms.unix;
};
}

View file

@ -8382,6 +8382,8 @@ let
postgresql_jdbc = callPackage ../servers/sql/postgresql/jdbc { };
prometheus = callPackage ../servers/monitoring/prometheus { };
psqlodbc = callPackage ../servers/sql/postgresql/psqlodbc { };
pyIRCt = builderDefsPackage (import ../servers/xmpp/pyIRCt) {

View file

@ -21,6 +21,18 @@ let self = _self // overrides; _self = with self; {
};
};
glog = buildGoPackage rec {
rev = "44145f04b68cf362d9c4df2182967c2275eaefed";
name = "glog-${rev}";
goPackagePath = "github.com/golang/glog";
src = fetchFromGitHub {
inherit rev;
owner = "golang";
repo = "glog";
sha256 = "1k7sf6qmpgm0iw81gx2dwggf9di6lgw0n54mni7862hihwfrb5rq";
};
};
image = buildGoPackage rec {
rev = "490b1ad139b3";
name = "go.image-${rev}";
@ -215,6 +227,19 @@ let self = _self // overrides; _self = with self; {
};
};
ginkgo = buildGoPackage rec {
rev = "5ed93e443a4b7dfe9f5e95ca87e6082e503021d2";
name = "ginkgo-${stdenv.lib.strings.substring 0 7 rev}";
goPackagePath = "github.com/onsi/ginkgo";
src = fetchFromGitHub {
inherit rev;
owner = "onsi";
repo = "ginkgo";
sha256 = "0ghrx5qmgvgb8cbvsj53v1ir4j9agilg4wyhpk5ikqdv6mmqly4h";
};
subPackages = [ "./" ]; # don't try to build test fixtures
};
goamz = buildGoPackage rec {
rev = "2a8fed5e89ab9e16210fc337d1aac780e8c7bbb7";
name = "goamz-${rev}";
@ -267,6 +292,56 @@ let self = _self // overrides; _self = with self; {
};
};
golang_protobuf_extensions = buildGoPackage rec {
rev = "ba7d65ac66e9da93a714ca18f6d1bc7a0c09100c";
name = "golang-protobuf-extensions-${stdenv.lib.strings.substring 0 7 rev}";
goPackagePath = "github.com/matttproud/golang_protobuf_extensions";
src = fetchFromGitHub {
inherit rev;
owner = "matttproud";
repo = "golang_protobuf_extensions";
sha256 = "1vz6zj94v90x8mv9h6qfp1211kmzn60ri5qh7p9fzpjkhga5k936";
};
buildInputs = [ protobuf ];
};
goleveldb = buildGoPackage rec {
rev = "e9e2c8f6d3b9c313fb4acaac5ab06285bcf30b04";
name = "goleveldb-${stdenv.lib.strings.substring 0 7 rev}";
goPackagePath = "github.com/syndtr/goleveldb";
src = fetchFromGitHub {
inherit rev;
owner = "syndtr";
repo = "goleveldb";
sha256 = "0vg3pcrbdhbmanwkc5njxagi64f4k2ikfm173allcghxcjamrkwv";
};
propagatedBuildInputs = [ ginkgo gomega gosnappy ];
};
gomega = buildGoPackage rec {
rev = "8adf9e1730c55cdc590de7d49766cb2acc88d8f2";
name = "gomega-${stdenv.lib.strings.substring 0 7 rev}";
goPackagePath = "github.com/onsi/gomega";
src = fetchFromGitHub {
inherit rev;
owner = "onsi";
repo = "gomega";
sha256 = "1rf6cxn50d1pji3pv4q372s395r5nxwcgp405z2r2mfdkri4v3w4";
};
};
gosnappy = buildGoPackage rec {
rev = "ce8acff4829e0c2458a67ead32390ac0a381c862";
name = "gosnappy-${stdenv.lib.strings.substring 0 7 rev}";
goPackagePath = "github.com/syndtr/gosnappy";
src = fetchFromGitHub {
inherit rev;
owner = "syndtr";
repo = "gosnappy";
sha256 = "0ywa52kcii8g2a9lbqcx8ghdf6y56lqq96sl5nl9p6h74rdvmjr7";
};
};
gox = buildGoPackage rec {
rev = "e8e6fd4fe12510cc46893dff18c5188a6a6dc549";
name = "gox-${stdenv.lib.strings.substring 0 7 rev}";
@ -783,6 +858,49 @@ let self = _self // overrides; _self = with self; {
propagatedBuildInputs = [ kr.text ];
};
prometheus.client_golang = buildGoPackage rec {
rev = "4627d59e8a09c330c5ccfe7414baca28d8df847d";
name = "prometheus-client-${stdenv.lib.strings.substring 0 7 rev}";
goPackagePath = "github.com/prometheus/client_golang";
src = fetchFromGitHub {
inherit rev;
owner = "prometheus";
repo = "client_golang";
sha256 = "1mmj1r8xfi1gwb5f0l6sxjj804dhavp3pjmrqpbaa1g82bmz1hr1";
};
propagatedBuildInputs = [
protobuf
golang_protobuf_extensions
prometheus.client_model
prometheus.procfs
];
};
prometheus.client_model = buildGoPackage rec {
rev = "fa8ad6fec33561be4280a8f0514318c79d7f6cb6";
name = "prometheus-client-model-${stdenv.lib.strings.substring 0 7 rev}";
goPackagePath = "github.com/prometheus/client_model";
src = fetchFromGitHub {
inherit rev;
owner = "prometheus";
repo = "client_model";
sha256 = "11a7v1fjzhhwsl128znjcf5v7v6129xjgkdpym2lial4lac1dhm9";
};
buildInputs = [ protobuf ];
};
prometheus.procfs = buildGoPackage rec {
rev = "92faa308558161acab0ada1db048e9996ecec160";
name = "prometheus-procfs-${stdenv.lib.strings.substring 0 7 rev}";
goPackagePath = "github.com/prometheus/procfs";
src = fetchFromGitHub {
inherit rev;
owner = "prometheus";
repo = "procfs";
sha256 = "0kaw81z2yi45f6ll6n2clr2zz60bdgdxzqnxvd74flynz4sr0p1v";
};
};
pty = buildGoPackage rec {
rev = "67e2db24c831afa6c64fc17b4a143390674365ef";
name = "pty-${stdenv.lib.strings.substring 0 7 rev}";