diff options
author | Franz Pletz <fpletz@fnordicwalking.de> | 2017-02-28 00:00:57 +0100 |
---|---|---|
committer | Franz Pletz <fpletz@fnordicwalking.de> | 2017-02-28 00:00:57 +0100 |
commit | ec4ead0bfee965be95e596d39d4b076e9fe01267 (patch) | |
tree | 01140df87d447166da913ec3bdb4860800d3b473 /nixos/modules/services/web-servers/phpfpm | |
parent | e3d58dae7f83998395259824ef83dedc33e9ab62 (diff) | |
download | nixlib-ec4ead0bfee965be95e596d39d4b076e9fe01267.tar nixlib-ec4ead0bfee965be95e596d39d4b076e9fe01267.tar.gz nixlib-ec4ead0bfee965be95e596d39d4b076e9fe01267.tar.bz2 nixlib-ec4ead0bfee965be95e596d39d4b076e9fe01267.tar.lz nixlib-ec4ead0bfee965be95e596d39d4b076e9fe01267.tar.xz nixlib-ec4ead0bfee965be95e596d39d4b076e9fe01267.tar.zst nixlib-ec4ead0bfee965be95e596d39d4b076e9fe01267.zip |
phpfpm service: add target and slice
Diffstat (limited to 'nixos/modules/services/web-servers/phpfpm')
-rw-r--r-- | nixos/modules/services/web-servers/phpfpm/default.nix | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/nixos/modules/services/web-servers/phpfpm/default.nix b/nixos/modules/services/web-servers/phpfpm/default.nix index f1161c9e19ff..488bd3fe0ef1 100644 --- a/nixos/modules/services/web-servers/phpfpm/default.nix +++ b/nixos/modules/services/web-servers/phpfpm/default.nix @@ -4,6 +4,7 @@ with lib; let cfg = config.services.phpfpm; + enabled = cfg.poolConfigs != {} || cfg.pools != {}; stateDir = "/run/phpfpm"; @@ -119,18 +120,30 @@ in { }; }; - config = { + config = mkIf enabled { + + systemd.slices.phpfpm = { + description = "PHP FastCGI Process manager pools slice"; + }; + + systemd.targets.phpfpm = { + description = "PHP FastCGI Process manager pools target"; + wantedBy = [ "multi-user.target" ]; + }; + systemd.services = flip mapAttrs' poolConfigs (pool: poolConfig: nameValuePair "phpfpm-${pool}" { - description = "PHP FastCGI Process Manager for pool ${pool}"; + description = "PHP FastCGI Process Manager service for pool ${pool}"; after = [ "network.target" ]; - wantedBy = [ "multi-user.target" ]; + wantedBy = [ "phpfpm.target" ]; + partOf = [ "phpfpm.target" ]; preStart = '' mkdir -p ${stateDir} ''; serviceConfig = let cfgFile = fpmCfgFile pool poolConfig; in { + Slice = "phpfpm.slice"; PrivateTmp = true; PrivateDevices = true; ProtectSystem = "full"; |