config

NixOS config
Log | Files | Refs | README | LICENSE

commit 5c1cccb8a4cb5bce1bea9110962bc6f2e9188a4a (tree)
parent dae3c590ce689a95b5fabd18671f2e39a4d18319
Author: Motiejus Jakštys <motiejus@jakstys.lt>
Date:   Tue,  5 Sep 2023 14:41:52 +0300

snmp: from package back to module

Diffstat:
Mflake.nix | 2--
Mhosts/vno1-oh2/configuration.nix | 8++------
Mmodules/services/default.nix | 1+
Rpackages/snmp-yaml/README.md -> modules/services/snmp_exporter/README.md | 0
Amodules/services/snmp_exporter/default.nix | 21+++++++++++++++++++++
Rpackages/snmp-yaml/generator.yml -> modules/services/snmp_exporter/generator.yml | 0
Rpackages/snmp-yaml/snmp.yml -> modules/services/snmp_exporter/snmp.yml | 0
Dpackages/snmp-yaml/default.nix | 19-------------------
8 files changed, 24 insertions(+), 27 deletions(-)

diff --git a/flake.nix b/flake.nix @@ -173,7 +173,5 @@ }; formatter = pkgs.alejandra; - - packages.snmp-yaml = pkgs.callPackage ./packages/snmp-yaml {}; }); } diff --git a/hosts/vno1-oh2/configuration.nix b/hosts/vno1-oh2/configuration.nix @@ -100,6 +100,8 @@ gitea.enable = true; + snmp_exporter.enable = true; + headscale = { enable = true; clientOidcPath = config.age.secrets.headscale-client-oidc.path; @@ -300,12 +302,6 @@ evaluation_interval = "15s"; }; - exporters.snmp = { - enable = true; - listenAddress = "127.0.0.1"; - configuration = {}; - }; - scrapeConfigs = let port = builtins.toString myData.ports.exporters.node; in [ diff --git a/modules/services/default.nix b/modules/services/default.nix @@ -13,6 +13,7 @@ ./node_exporter ./nsd-acme ./postfix + ./snmp_exporter ./syncthing ./zfsunlock ]; diff --git a/packages/snmp-yaml/README.md b/modules/services/snmp_exporter/README.md diff --git a/modules/services/snmp_exporter/default.nix b/modules/services/snmp_exporter/default.nix @@ -0,0 +1,21 @@ +{ + config, + lib, + myData, + ... +}: { + options.mj.services.snmp_exporter = with lib.types; { + enable = lib.mkEnableOption "Enable prometheus snmp_exporter"; + }; + + config = lib.mkIf config.mj.services.snmp_exporter.enable { + mj.services.friendlyport.vpn.ports = [config.services.prometheus.exporters.snmp.port]; + + services.prometheus.exporters.snmp = { + enable = true; + listenAddress = "127.0.0.1"; + configurationPath = ./snmp.yml; + }; + + }; +} diff --git a/packages/snmp-yaml/generator.yml b/modules/services/snmp_exporter/generator.yml diff --git a/packages/snmp-yaml/snmp.yml b/modules/services/snmp_exporter/snmp.yml diff --git a/packages/snmp-yaml/default.nix b/packages/snmp-yaml/default.nix @@ -1,19 +0,0 @@ -{ - stdenv, - pkgs, - prometheus-snmp-exporter, -}: -stdenv.mkDerivation { - name = "snmp-yaml"; - inherit (prometheus-snmp-exporter) version src; - - buildInputs = [prometheus-snmp-exporter]; - - buildPhase = '' - mkdir -p $out - set -x - cd $src/generator - ${prometheus-snmp-exporter}/bin/generator generate \ - --output-path=$out/snmp.yml - ''; -}