diff options
author | Shawn8901 <shawn8901@googlemail.com> | 2022-04-18 17:35:58 +0200 |
---|---|---|
committer | Shawn8901 <shawn8901@googlemail.com> | 2022-04-18 18:09:03 +0200 |
commit | 7f01ff7822ac74f2e92a6fcc5367c16838038dd4 (patch) | |
tree | 6580e5059d5b584fb5c27546d42b2a823cd56bee /nixos/modules/services/monitoring/prometheus/default.nix | |
parent | 439aeb2fe9fe5a5aa059bb30cf1dfa99860ef957 (diff) |
nixos/prometheus: use pkgs.formats.json.generate to write config file
The old way of writing the file omited qoutes within strings which are needed by some configurations like federations. The quotes got lost when `echo`ing the content via `echo '${builtins.toJSON x}'`. The pkgs.formats.json does handle that race condition properly, so this commit switches the writing to that helper.
Diffstat (limited to 'nixos/modules/services/monitoring/prometheus/default.nix')
-rw-r--r-- | nixos/modules/services/monitoring/prometheus/default.nix | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/nixos/modules/services/monitoring/prometheus/default.nix b/nixos/modules/services/monitoring/prometheus/default.nix index 52525e8935bae..ceb2db1faefd8 100644 --- a/nixos/modules/services/monitoring/prometheus/default.nix +++ b/nixos/modules/services/monitoring/prometheus/default.nix @@ -3,6 +3,7 @@ with lib; let + json = pkgs.formats.json { }; cfg = config.services.prometheus; workingDir = "/var/lib/" + cfg.stateDir; @@ -34,13 +35,7 @@ let promtool ${what} $out '' else file; - # Pretty-print JSON to a file - writePrettyJSON = name: x: - pkgs.runCommandLocal name { } '' - echo '${builtins.toJSON x}' | ${pkgs.jq}/bin/jq . > $out - ''; - - generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig; + generatedPrometheusYml = json.generate "prometheus.yml" promConfig; # This becomes the main config file for Prometheus promConfig = { |