diff --git a/nixos/modules/services/monitoring/prometheus/default.nix b/nixos/modules/services/monitoring/prometheus/default.nix
index 8fe689ef3dbba..e6ff2bfe1fa87 100644
--- a/nixos/modules/services/monitoring/prometheus/default.nix
+++ b/nixos/modules/services/monitoring/prometheus/default.nix
@@ -47,7 +47,7 @@ let
cmdlineArgs = cfg.extraFlags ++ [
"--storage.tsdb.path=${workingDir}/data/"
- "--config.file=/run/prometheus/prometheus-substituted.yaml"
+ "--config.file=${prometheusYml}"
"--web.listen-address=${cfg.listenAddress}:${builtins.toString cfg.port}"
"--alertmanager.notification-queue-capacity=${toString cfg.alertmanagerNotificationQueueCapacity}"
"--alertmanager.timeout=${toString cfg.alertmanagerTimeout}s"
@@ -733,45 +733,6 @@ in {
'';
};
- environmentFile = mkOption {
- type = types.nullOr types.path;
- default = null;
- example = "/root/prometheus.env";
- description = ''
- Environment file as defined in
- systemd.exec5
- .
-
- Secrets may be passed to the service without adding them to the
- world-readable Nix store, by specifying placeholder variables as
- the option value in Nix and setting these variables accordingly in the
- environment file.
-
- Environment variables from this file will be interpolated into the
- config file using envsubst with this syntax:
- $ENVIRONMENT ''${VARIABLE}
-
-
- # Example scrape config entry handling an OAuth bearer token
- {
- job_name = "home_assistant";
- metrics_path = "/api/prometheus";
- scheme = "https";
- bearer_token = "\''${HOME_ASSISTANT_BEARER_TOKEN}";
- [...]
- }
-
-
-
- # Content of the environment file
- HOME_ASSISTANT_BEARER_TOKEN=someoauthbearertoken
-
-
- Note that this file needs to be available on the host on which
- Prometheus is running.
- '';
- };
-
configText = mkOption {
type = types.nullOr types.lines;
default = null;
@@ -930,19 +891,12 @@ in {
systemd.services.prometheus = {
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
- preStart = ''
- ${lib.getBin pkgs.envsubst}/bin/envsubst -o "/run/prometheus/prometheus-substituted.yaml" \
- -i "${prometheusYml}"
- '';
serviceConfig = {
ExecStart = "${cfg.package}/bin/prometheus" +
optionalString (length cmdlineArgs != 0) (" \\\n " +
concatStringsSep " \\\n " cmdlineArgs);
User = "prometheus";
Restart = "always";
- EnvironmentFile = mkIf (cfg.environmentFile != null) [ cfg.environmentFile ];
- RuntimeDirectory = "prometheus";
- RuntimeDirectoryMode = "0700";
WorkingDirectory = workingDir;
StateDirectory = cfg.stateDir;
StateDirectoryMode = "0700";