summary refs log tree commit diff
path: root/nixos/modules/services/web-apps/healthchecks.nix
diff options
context:
space:
mode:
authorSandro Jäckel <sandro.jaeckel@gmail.com>2022-10-27 21:21:53 +0200
committerSandro Jäckel <sandro.jaeckel@gmail.com>2022-10-27 21:21:53 +0200
commit897044e435e481c824bc197699dbbabee226548a (patch)
tree3c5c872acc04f2a880233a7595f1630e73eef24f /nixos/modules/services/web-apps/healthchecks.nix
parenta3c39df9e8f021c7d2fd4caea3af16df513032ae (diff)
downloadnixpkgs-897044e435e481c824bc197699dbbabee226548a.tar
nixpkgs-897044e435e481c824bc197699dbbabee226548a.tar.gz
nixpkgs-897044e435e481c824bc197699dbbabee226548a.tar.bz2
nixpkgs-897044e435e481c824bc197699dbbabee226548a.tar.lz
nixpkgs-897044e435e481c824bc197699dbbabee226548a.tar.xz
nixpkgs-897044e435e481c824bc197699dbbabee226548a.tar.zst
nixpkgs-897044e435e481c824bc197699dbbabee226548a.zip
nixos/healthchecks: automatically invoke sudo in the wrapper
much like nextcloud-occ does
Diffstat (limited to 'nixos/modules/services/web-apps/healthchecks.nix')
-rw-r--r--nixos/modules/services/web-apps/healthchecks.nix12
1 files changed, 6 insertions, 6 deletions
diff --git a/nixos/modules/services/web-apps/healthchecks.nix b/nixos/modules/services/web-apps/healthchecks.nix
index 2c55f5ec8eb..2146b453854 100644
--- a/nixos/modules/services/web-apps/healthchecks.nix
+++ b/nixos/modules/services/web-apps/healthchecks.nix
@@ -15,14 +15,14 @@ let
 
   environmentFile = pkgs.writeText "healthchecks-environment" (lib.generators.toKeyValue { } environment);
 
-  healthchecksManageScript = with pkgs; (writeShellScriptBin "healthchecks-manage" ''
+  healthchecksManageScript = pkgs.writeShellScriptBin "healthchecks-manage" ''
+    sudo=exec
     if [[ "$USER" != "${cfg.user}" ]]; then
-        echo "please run as user 'healtchecks'." >/dev/stderr
-        exit 1
+      sudo='exec /run/wrappers/bin/sudo -u ${cfg.user} --preserve-env --preserve-env=PYTHONPATH'
     fi
-    export $(cat ${environmentFile} | xargs);
-    exec ${pkg}/opt/healthchecks/manage.py "$@"
-  '');
+    export $(cat ${environmentFile} | xargs)
+    $sudo ${pkg}/opt/healthchecks/manage.py "$@"
+  '';
 in
 {
   options.services.healthchecks = {