diff options
author | Martin Weinelt <hexa@darmstadt.ccc.de> | 2022-12-08 22:33:03 +0100 |
---|---|---|
committer | Martin Weinelt <hexa@darmstadt.ccc.de> | 2022-12-09 01:40:01 +0100 |
commit | fdcc9e8202c95eed45cd673afa880171330bb1a9 (patch) | |
tree | 585e4ad0d3ae2dd5cf867c19c6d7f4a7adddd8c0 /nixos/modules/services/monitoring/prometheus/exporters | |
parent | a49feed2551dd918c0fcd121276edd322cc34948 (diff) | |
download | nixpkgs-fdcc9e8202c95eed45cd673afa880171330bb1a9.tar nixpkgs-fdcc9e8202c95eed45cd673afa880171330bb1a9.tar.gz nixpkgs-fdcc9e8202c95eed45cd673afa880171330bb1a9.tar.bz2 nixpkgs-fdcc9e8202c95eed45cd673afa880171330bb1a9.tar.lz nixpkgs-fdcc9e8202c95eed45cd673afa880171330bb1a9.tar.xz nixpkgs-fdcc9e8202c95eed45cd673afa880171330bb1a9.tar.zst nixpkgs-fdcc9e8202c95eed45cd673afa880171330bb1a9.zip |
nixos/prometheus.exporters.smartctl: Simplify DeviceAllow logic
Setting up the DeviceAllow list with explicitly configured devices was a nice idea, but sometimes a configured device (`/dev/nvme0n1` an NVMe namespace) has a parent device (`/dev/nvme0`) that smartctl needs to access to query metrics. Falling back to the block and character definitions is probably a valid fallback.
Diffstat (limited to 'nixos/modules/services/monitoring/prometheus/exporters')
-rw-r--r-- | nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix b/nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix index 302b1d5202c..0c5648c1414 100644 --- a/nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix +++ b/nixos/modules/services/monitoring/prometheus/exporters/smartctl.nix @@ -46,15 +46,11 @@ in { "CAP_SYS_ADMIN" ]; DevicePolicy = "closed"; - DeviceAllow = lib.mkOverride 50 ( - if cfg.devices != [] then - cfg.devices - else [ - "block-blkext rw" - "block-sd rw" - "char-nvme rw" - ] - ); + DeviceAllow = lib.mkOverride 50 [ + "block-blkext rw" + "block-sd rw" + "char-nvme rw" + ]; ExecStart = '' ${pkgs.prometheus-smartctl-exporter}/bin/smartctl_exporter ${args} ''; |