diff options
author | lethalman <lucabru@src.gnome.org> | 2014-05-14 21:44:43 +0200 |
---|---|---|
committer | lethalman <lucabru@src.gnome.org> | 2014-05-14 21:44:43 +0200 |
commit | 8967d2d3b398f852b45f27464696f72a2c7bf82c (patch) | |
tree | a1ba1df355b3778fe4d0c7b4db31bd4a230bea7c /nixos/modules/services | |
parent | 2baeefee2744e1d3df82ba8292c76997a3172015 (diff) | |
parent | 705dd70b32e2764ae8489a286afce896d48ebe93 (diff) | |
download | nixlib-8967d2d3b398f852b45f27464696f72a2c7bf82c.tar nixlib-8967d2d3b398f852b45f27464696f72a2c7bf82c.tar.gz nixlib-8967d2d3b398f852b45f27464696f72a2c7bf82c.tar.bz2 nixlib-8967d2d3b398f852b45f27464696f72a2c7bf82c.tar.lz nixlib-8967d2d3b398f852b45f27464696f72a2c7bf82c.tar.xz nixlib-8967d2d3b398f852b45f27464696f72a2c7bf82c.tar.zst nixlib-8967d2d3b398f852b45f27464696f72a2c7bf82c.zip |
Merge pull request #2301 from bjornfor/graphite-fixes
nixos/graphite-service: fix startup
Diffstat (limited to 'nixos/modules/services')
-rw-r--r-- | nixos/modules/services/monitoring/graphite.nix | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/nixos/modules/services/monitoring/graphite.nix b/nixos/modules/services/monitoring/graphite.nix index cb67b9d4fcbb..d543d15b34e1 100644 --- a/nixos/modules/services/monitoring/graphite.nix +++ b/nixos/modules/services/monitoring/graphite.nix @@ -184,6 +184,7 @@ in { ExecStart = "${pkgs.twisted}/bin/twistd ${carbonOpts "carbon-cache"}"; User = "graphite"; Group = "graphite"; + PermissionsStartOnly = true; }; restartTriggers = [ pkgs.pythonPackages.carbon @@ -193,8 +194,9 @@ in { cfg.carbon.rewriteRules ]; preStart = '' - mkdir -m 0700 -p ${cfg.dataDir}/whisper - if [ "$(id -u)" = 0 ]; then chown -R graphite:graphite ${cfg.dataDir}; fi + mkdir -p ${cfg.dataDir}/whisper + chmod 0700 ${cfg.dataDir}/whisper + chown -R graphite:graphite ${cfg.dataDir} ''; }; @@ -235,6 +237,7 @@ in { description = "Graphite Web Interface"; wantedBy = [ "multi-user.target" ]; after = [ "network-interfaces.target" ]; + path = [ pkgs.perl ]; environment = { PYTHONPATH = "${pkgs.python27Packages.graphite_web}/lib/python2.7/site-packages"; DJANGO_SETTINGS_MODULE = "graphite.settings"; @@ -248,11 +251,12 @@ in { --call django.core.handlers.wsgi:WSGIHandler''; User = "graphite"; Group = "graphite"; + PermissionsStartOnly = true; }; preStart = '' if ! test -e ${dataDir}/db-created; then - mkdir -m 0700 -p ${dataDir}/{whisper/,log/webapp/} - if [ "$(id -u)" = 0 ]; then chown -R graphite:graphite ${cfg.dataDir}; fi + mkdir -p ${dataDir}/{whisper/,log/webapp/} + chmod 0700 ${dataDir}/{whisper/,log/webapp/} # populate database ${pkgs.python27Packages.graphite_web}/bin/manage-graphite.py syncdb --noinput @@ -261,6 +265,8 @@ in { ${pkgs.python27Packages.graphite_web}/bin/build-index.sh touch ${dataDir}/db-created + + chown -R graphite:graphite ${cfg.dataDir} fi ''; restartTriggers = [ |