diff options
Diffstat (limited to 'nixpkgs/pkgs/servers/monitoring/loki/default.nix')
-rw-r--r-- | nixpkgs/pkgs/servers/monitoring/loki/default.nix | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/monitoring/loki/default.nix b/nixpkgs/pkgs/servers/monitoring/loki/default.nix new file mode 100644 index 000000000000..d23a873ccecb --- /dev/null +++ b/nixpkgs/pkgs/servers/monitoring/loki/default.nix @@ -0,0 +1,60 @@ +{ stdenv +, lib +, buildGoModule +, fetchFromGitHub +, makeWrapper +, nixosTests +, systemd +}: + +buildGoModule rec { + version = "2.3.0"; + pname = "grafana-loki"; + + src = fetchFromGitHub { + rev = "v${version}"; + owner = "grafana"; + repo = "loki"; + sha256 = "sha256-Cxg3VRF4p/Kb6LyreGV0g+zPr15wplritSZgkbTiDI0="; + }; + + vendorSha256 = null; + + subPackages = [ + # TODO split every executable into its own package + "cmd/loki" + "cmd/loki-canary" + "clients/cmd/promtail" + "cmd/logcli" + ]; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = lib.optionals stdenv.isLinux [ systemd.dev ]; + + preFixup = lib.optionalString stdenv.isLinux '' + wrapProgram $out/bin/promtail \ + --prefix LD_LIBRARY_PATH : "${lib.getLib systemd}/lib" + ''; + + passthru.tests = { inherit (nixosTests) loki; }; + + ldflags = let t = "github.com/grafana/loki/pkg/util/build"; in [ + "-s" + "-w" + "-X ${t}.Version=${version}" + "-X ${t}.BuildUser=nix@nixpkgs" + "-X ${t}.BuildDate=unknown" + "-X ${t}.Branch=unknown" + "-X ${t}.Revision=unknown" + ]; + + doCheck = true; + + meta = with lib; { + description = "Like Prometheus, but for logs"; + license = with licenses; [ agpl3Only asl20 ]; + homepage = "https://grafana.com/oss/loki/"; + maintainers = with maintainers; [ willibutz globin mmahut ]; + platforms = platforms.unix; + }; +} |