|
22 | 22 | * `systemd::networkd`: This class provides an abstract way to trigger systemd-networkd
|
23 | 23 | * `systemd::oomd`: This class manages and configures oomd.
|
24 | 24 | * `systemd::resolved`: This class provides an abstract way to trigger resolved.
|
25 |
| -* `systemd::system`: This class provides a solution to enable accounting |
| 25 | +* `systemd::service_manager`: This class provides a solution to manage system and/or user service manager settings |
26 | 26 | * `systemd::timedatectl`: This class provides an abstract way to set elements with timedatectl
|
27 | 27 | * `systemd::timesyncd`: This class provides an abstract way to trigger systemd-timesyncd
|
28 | 28 | * `systemd::udevd`: This class manages systemd's udev config
|
|
54 | 54 |
|
55 | 55 | ### Data types
|
56 | 56 |
|
| 57 | +* [`Systemd::Boolean`](#Systemd--Boolean): Defines systemd boolean type representation |
| 58 | +* [`Systemd::Boolean::False`](#Systemd--Boolean--False): Defines systemd boolean "false" type representation |
| 59 | +* [`Systemd::Boolean::True`](#Systemd--Boolean--True): Defines systemd boolean "true" type representation |
| 60 | +* [`Systemd::Capabilities`](#Systemd--Capabilities): Defines allowed capabilities |
57 | 61 | * [`Systemd::CoredumpSettings`](#Systemd--CoredumpSettings): Configurations for coredump.conf
|
58 | 62 | * [`Systemd::Dropin`](#Systemd--Dropin): custom datatype that validates filenames/paths for valid systemd dropin files
|
59 | 63 | * [`Systemd::JournaldSettings`](#Systemd--JournaldSettings): Matches Systemd journald config Struct
|
60 | 64 | * [`Systemd::JournaldSettings::Ensure`](#Systemd--JournaldSettings--Ensure): defines allowed ensure states for systemd-journald settings
|
| 65 | +* [`Systemd::LogLevel`](#Systemd--LogLevel): Defines allowed log levels |
61 | 66 | * [`Systemd::LogindSettings`](#Systemd--LogindSettings): Matches Systemd Login Manager Struct
|
62 | 67 | * [`Systemd::LogindSettings::Ensure`](#Systemd--LogindSettings--Ensure): defines allowed ensure states for systemd-logind settings
|
63 | 68 | * [`Systemd::MachineInfoSettings`](#Systemd--MachineInfoSettings): Matches Systemd machine-info (hostnamectl) file Struct
|
64 | 69 | * [`Systemd::OomdSettings`](#Systemd--OomdSettings): Configurations for oomd.conf
|
| 70 | +* [`Systemd::Output`](#Systemd--Output): Defines allowed output values |
65 | 71 | * [`Systemd::ServiceLimits`](#Systemd--ServiceLimits): Deprecated - Matches Systemd Service Limit Struct
|
| 72 | +* [`Systemd::ServiceManagerSettings`](#Systemd--ServiceManagerSettings): Matches Systemd system.conf/user.conf settings |
| 73 | +* [`Systemd::SettingEnsure`](#Systemd--SettingEnsure): Defines allowed ensure states for an ini_setting |
| 74 | +* [`Systemd::Timespan`](#Systemd--Timespan): Defines a timespan type |
66 | 75 | * [`Systemd::Unit`](#Systemd--Unit): custom datatype that validates different filenames for systemd units and unit templates
|
67 | 76 | * [`Systemd::Unit::Amount`](#Systemd--Unit--Amount): Systemd definition of amount, often bytes or united bytes
|
68 | 77 | * [`Systemd::Unit::AmountOrPercent`](#Systemd--Unit--AmountOrPercent): Systemd definition of amount, often bytes or united bytes
|
@@ -156,6 +165,10 @@ The following parameters are available in the `systemd` class:
|
156 | 165 | * [`oomd_ensure`](#-systemd--oomd_ensure)
|
157 | 166 | * [`oomd_settings`](#-systemd--oomd_settings)
|
158 | 167 | * [`udev_purge_rules`](#-systemd--udev_purge_rules)
|
| 168 | +* [`manage_system_conf`](#-systemd--manage_system_conf) |
| 169 | +* [`system_settings`](#-systemd--system_settings) |
| 170 | +* [`manage_user_conf`](#-systemd--manage_user_conf) |
| 171 | +* [`user_settings`](#-systemd--user_settings) |
159 | 172 |
|
160 | 173 | ##### <a name="-systemd--default_target"></a>`default_target`
|
161 | 174 |
|
@@ -612,15 +625,18 @@ Default value: `'/etc/systemd/network'`
|
612 | 625 |
|
613 | 626 | Data type: `Boolean`
|
614 | 627 |
|
615 |
| -when enabled, the different accounting options (network traffic, IO, CPU util...) are enabled for units |
| 628 | +When enabled, the different accounting options (network traffic, IO, |
| 629 | +CPU util...) are enabled for units. |
616 | 630 |
|
617 | 631 | Default value: `false`
|
618 | 632 |
|
619 | 633 | ##### <a name="-systemd--accounting"></a>`accounting`
|
620 | 634 |
|
621 | 635 | Data type: `Hash[String,String]`
|
622 | 636 |
|
623 |
| -Hash of the different accounting options. This highly depends on the used systemd version. The module provides sane defaults per operating system using Hiera. |
| 637 | +Hash of the different accounting options. This highly depends on the used |
| 638 | +systemd version. The module provides sane defaults per operating system |
| 639 | +using Hiera. |
624 | 640 |
|
625 | 641 | Default value: `{}`
|
626 | 642 |
|
@@ -696,6 +712,42 @@ Toggle if unmanaged files in /etc/udev/rules.d should be purged if manage_udevd
|
696 | 712 |
|
697 | 713 | Default value: `false`
|
698 | 714 |
|
| 715 | +##### <a name="-systemd--manage_system_conf"></a>`manage_system_conf` |
| 716 | + |
| 717 | +Data type: `Boolean` |
| 718 | + |
| 719 | +Should system service manager configurations be managed |
| 720 | + |
| 721 | +Default value: `false` |
| 722 | + |
| 723 | +##### <a name="-systemd--system_settings"></a>`system_settings` |
| 724 | + |
| 725 | +Data type: `Systemd::ServiceManagerSettings` |
| 726 | + |
| 727 | +Config Hash that is used to configure settings in system.conf |
| 728 | +NOTE: It's currently impossible to have multiple entries of the same key in |
| 729 | +the settings. |
| 730 | + |
| 731 | +Default value: `{}` |
| 732 | + |
| 733 | +##### <a name="-systemd--manage_user_conf"></a>`manage_user_conf` |
| 734 | + |
| 735 | +Data type: `Boolean` |
| 736 | + |
| 737 | +Should user service manager configurations be managed |
| 738 | + |
| 739 | +Default value: `false` |
| 740 | + |
| 741 | +##### <a name="-systemd--user_settings"></a>`user_settings` |
| 742 | + |
| 743 | +Data type: `Systemd::ServiceManagerSettings` |
| 744 | + |
| 745 | +Config Hash that is used to configure settings in user.conf |
| 746 | +NOTE: It's currently impossible to have multiple entries of the same key in |
| 747 | +the settings. |
| 748 | + |
| 749 | +Default value: `{}` |
| 750 | + |
699 | 751 | ### <a name="systemd--tmpfiles"></a>`systemd::tmpfiles`
|
700 | 752 |
|
701 | 753 | Update the systemd temp files
|
@@ -2587,6 +2639,30 @@ Use path (-p) ornon-path style escaping.
|
2587 | 2639 |
|
2588 | 2640 | ## Data types
|
2589 | 2641 |
|
| 2642 | +### <a name="Systemd--Boolean"></a>`Systemd::Boolean` |
| 2643 | + |
| 2644 | +Defines systemd boolean type representation |
| 2645 | + |
| 2646 | +Alias of `Variant[Systemd::Boolean::True, Systemd::Boolean::False]` |
| 2647 | + |
| 2648 | +### <a name="Systemd--Boolean--False"></a>`Systemd::Boolean::False` |
| 2649 | + |
| 2650 | +Defines systemd boolean "false" type representation |
| 2651 | + |
| 2652 | +Alias of `Variant[Integer[0,0], Enum['no', 'false'], Boolean[false]]` |
| 2653 | + |
| 2654 | +### <a name="Systemd--Boolean--True"></a>`Systemd::Boolean::True` |
| 2655 | + |
| 2656 | +Defines systemd boolean "true" type representation |
| 2657 | + |
| 2658 | +Alias of `Variant[Integer[1], Enum['yes', 'true'], Boolean[true]]` |
| 2659 | + |
| 2660 | +### <a name="Systemd--Capabilities"></a>`Systemd::Capabilities` |
| 2661 | + |
| 2662 | +Defines allowed capabilities |
| 2663 | + |
| 2664 | +Alias of `Variant[Pattern[/^~?(CAP_[A-Z_]+ *)+$/]]` |
| 2665 | + |
2590 | 2666 | ### <a name="Systemd--CoredumpSettings"></a>`Systemd::CoredumpSettings`
|
2591 | 2667 |
|
2592 | 2668 | Configurations for coredump.conf
|
@@ -2661,6 +2737,12 @@ defines allowed ensure states for systemd-journald settings
|
2661 | 2737 |
|
2662 | 2738 | Alias of `Struct[{ 'ensure' => Enum['present','absent'] }]`
|
2663 | 2739 |
|
| 2740 | +### <a name="Systemd--LogLevel"></a>`Systemd::LogLevel` |
| 2741 | + |
| 2742 | +Defines allowed log levels |
| 2743 | + |
| 2744 | +Alias of `Variant[Enum['emerg','alert','crit','err','warning','notice','info','debug'], Integer[0,7]]` |
| 2745 | + |
2664 | 2746 | ### <a name="Systemd--LogindSettings"></a>`Systemd::LogindSettings`
|
2665 | 2747 |
|
2666 | 2748 | Matches Systemd Login Manager Struct
|
@@ -2738,6 +2820,12 @@ Struct[{
|
2738 | 2820 | }]
|
2739 | 2821 | ```
|
2740 | 2822 |
|
| 2823 | +### <a name="Systemd--Output"></a>`Systemd::Output` |
| 2824 | + |
| 2825 | +Used in DefaultStandardOutput/DefaultStandardError e.g. |
| 2826 | + |
| 2827 | +Alias of `Enum['inherit', 'null', 'tty', 'journal', 'journal+console', 'kmsg', 'kmsg+console']` |
| 2828 | + |
2741 | 2829 | ### <a name="Systemd--ServiceLimits"></a>`Systemd::ServiceLimits`
|
2742 | 2830 |
|
2743 | 2831 | Deprecated - Matches Systemd Service Limit Struct
|
@@ -2791,6 +2879,110 @@ Struct[{
|
2791 | 2879 | }]
|
2792 | 2880 | ```
|
2793 | 2881 |
|
| 2882 | +### <a name="Systemd--ServiceManagerSettings"></a>`Systemd::ServiceManagerSettings` |
| 2883 | + |
| 2884 | +NOTE: Systemd::SettingEnsure here allows to delete the setting from the INI |
| 2885 | +file. See the example below for Hiera: |
| 2886 | + |
| 2887 | +```yaml |
| 2888 | +systemd::system_settings: |
| 2889 | + LogLevel: |
| 2890 | + ensure: absent |
| 2891 | +``` |
| 2892 | +
|
| 2893 | +* **See also** |
| 2894 | + * https://www.freedesktop.org/software/systemd/man/latest/systemd-system.conf.html |
| 2895 | +
|
| 2896 | +Alias of |
| 2897 | +
|
| 2898 | +```puppet |
| 2899 | +Struct[{ |
| 2900 | + Optional['LogLevel'] => Variant[Systemd::LogLevel, Systemd::SettingEnsure], |
| 2901 | + Optional['LogTarget'] => Variant[Enum['console','console-prefixed','kmsg','journal','journal-or-kmsg','auto','null'], Systemd::SettingEnsure], |
| 2902 | + Optional['LogColor'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2903 | + Optional['LogLocation'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2904 | + Optional['LogTime'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2905 | + Optional['DumpCore'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2906 | + Optional['ShowStatus'] => Variant[Systemd::Boolean, Enum['auto','error'], Systemd::SettingEnsure], |
| 2907 | + Optional['CrashChangeVT'] => Variant[Systemd::Boolean, Integer[1,63], Systemd::SettingEnsure], |
| 2908 | + Optional['CrashShell'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2909 | + Optional['CrashReboot'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], # Obsoleted by CrashAction in v256, delete after Debian 12 EOL |
| 2910 | + Optional['CrashAction'] => Variant[Enum['freeze', 'reboot', 'poweroff'], Systemd::SettingEnsure], |
| 2911 | + Optional['CtrlAltDelBurstAction'] => Variant[Enum['reboot-force','poweroff-force','reboot-immediate','poweroff-immediate','none'], Systemd::SettingEnsure], |
| 2912 | + Optional['CPUAffinity'] => Variant[Enum['numa'], Pattern['^[0-9, -]+$'], Systemd::SettingEnsure], |
| 2913 | + Optional['NUMAPolicy'] => Variant[Enum['default','preferred','bind','interleave','local'], Systemd::SettingEnsure], |
| 2914 | + Optional['NUMAMask'] => Variant[Enum['all'], Pattern['^[0-9, -]+$'], Systemd::SettingEnsure], |
| 2915 | + Optional['RuntimeWatchdogSec'] => Variant[Enum['off','default'], Systemd::Timespan, Systemd::SettingEnsure], |
| 2916 | + Optional['RuntimeWatchdogPreSec'] => Variant[Enum['off'], Systemd::Timespan, Systemd::SettingEnsure], |
| 2917 | + Optional['RuntimeWatchdogPreGovernor'] => Variant[Enum['noop', 'panic'], String[1], Systemd::SettingEnsure], |
| 2918 | + Optional['RebootWatchdogSec'] => Variant[Enum['off','default'], Systemd::Timespan, Systemd::SettingEnsure], |
| 2919 | + Optional['KExecWatchdogSec'] => Variant[Enum['off','default'], Systemd::Timespan, Systemd::SettingEnsure], |
| 2920 | + Optional['WatchdogDevice'] => Variant[Stdlib::Absolutepath, Systemd::SettingEnsure], |
| 2921 | + Optional['CapabilityBoundingSet'] => Variant[Systemd::Capabilities, Systemd::SettingEnsure], |
| 2922 | + Optional['NoNewPrivileges'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2923 | + Optional['ProtectSystem'] => Variant[Enum['auto'], Systemd::Boolean, Systemd::SettingEnsure], |
| 2924 | + Optional['SystemCallArchitectures'] => Variant[String[1], Systemd::SettingEnsure], |
| 2925 | + Optional['TimerSlackNSec'] => Variant[Systemd::Timespan, Systemd::SettingEnsure], |
| 2926 | + Optional['StatusUnitFormat'] => Variant[Enum['combined','description','name'], Systemd::SettingEnsure], |
| 2927 | + Optional['DefaultTimerAccuracySec'] => Variant[Systemd::Timespan, Systemd::SettingEnsure], |
| 2928 | + Optional['DefaultStandardOutput'] => Variant[Systemd::Output, Systemd::SettingEnsure], |
| 2929 | + Optional['DefaultStandardError'] => Variant[Systemd::Output, Systemd::SettingEnsure], |
| 2930 | + Optional['DefaultTimeoutStartSec'] => Variant[Systemd::Timespan, Systemd::SettingEnsure], |
| 2931 | + Optional['DefaultTimeoutStopSec'] => Variant[Systemd::Timespan, Systemd::SettingEnsure], |
| 2932 | + Optional['DefaultTimeoutAbortSec'] => Variant[Systemd::Timespan, Systemd::SettingEnsure], |
| 2933 | + Optional['DefaultDeviceTimeoutSec'] => Variant[Systemd::Timespan, Systemd::SettingEnsure], |
| 2934 | + Optional['DefaultRestartSec'] => Variant[Systemd::Timespan, Systemd::SettingEnsure], |
| 2935 | + Optional['DefaultStartLimitIntervalSec'] => Variant[Enum['infinity'], Systemd::Timespan, Systemd::SettingEnsure], |
| 2936 | + Optional['DefaultStartLimitBurst'] => Variant[Integer[0], Systemd::SettingEnsure], |
| 2937 | + Optional['DefaultEnvironment'] => Variant[String, Systemd::SettingEnsure], |
| 2938 | + Optional['ManagerEnvironment'] => Variant[String, Systemd::SettingEnsure], |
| 2939 | + Optional['DefaultCPUAccounting'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2940 | + Optional['DefaultBlockIOAccounting'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], # Deprecated in v252. Delete after Debian 11 EOL |
| 2941 | + Optional['DefaultIOAccounting'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2942 | + Optional['DefaultIPAccounting'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2943 | + Optional['DefaultMemoryAccounting'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2944 | + Optional['DefaultTasksAccounting'] => Variant[Systemd::Boolean, Systemd::SettingEnsure], |
| 2945 | + Optional['DefaultTasksMax'] => Variant[Enum['infinity'], Integer[0], Systemd::Unit::Percent, Systemd::SettingEnsure], |
| 2946 | + Optional['DefaultLimitCPU'] => Variant[Enum['infinity'], Pattern['^\d+(s|m|h|d|w|M|y)?(:\d+(s|m|h|d|w|M|y)?)?$'], Systemd::SettingEnsure], |
| 2947 | + Optional['DefaultLimitFSIZE'] => Variant[Pattern['^(infinity|((\d+(K|M|G|T|P|E)?(:\d+(K|M|G|T|P|E)?)?)))$'], Systemd::SettingEnsure], |
| 2948 | + Optional['DefaultLimitDATA'] => Variant[Pattern['^(infinity|((\d+(K|M|G|T|P|E)?(:\d+(K|M|G|T|P|E)?)?)))$'], Systemd::SettingEnsure], |
| 2949 | + Optional['DefaultLimitSTACK'] => Variant[Pattern['^(infinity|((\d+(K|M|G|T|P|E)?(:\d+(K|M|G|T|P|E)?)?)))$'], Systemd::SettingEnsure], |
| 2950 | + Optional['DefaultLimitCORE'] => Variant[Pattern['^(infinity|((\d+(K|M|G|T|P|E)?(:\d+(K|M|G|T|P|E)?)?)))$'], Systemd::SettingEnsure], |
| 2951 | + Optional['DefaultLimitRSS'] => Variant[Pattern['^(infinity|((\d+(K|M|G|T|P|E)?(:\d+(K|M|G|T|P|E)?)?)))$'], Systemd::SettingEnsure], |
| 2952 | + Optional['DefaultLimitNOFILE'] => Variant[Integer[-1], Pattern['^(infinity|\d+(:(infinity|\d+))?)$'], Systemd::SettingEnsure], |
| 2953 | + Optional['DefaultLimitAS'] => Variant[Pattern['^(infinity|((\d+(K|M|G|T|P|E)?(:\d+(K|M|G|T|P|E)?)?)))$'], Systemd::SettingEnsure], |
| 2954 | + Optional['DefaultLimitNPROC'] => Variant[Integer[-1],Pattern['^(infinity|\d+(:(infinity|\d+))?)$'], Systemd::SettingEnsure], |
| 2955 | + Optional['DefaultLimitMEMLOCK'] => Variant[Pattern['^(infinity|((\d+(K|M|G|T|P|E)?(:\d+(K|M|G|T|P|E)?)?)))$'], Systemd::SettingEnsure], |
| 2956 | + Optional['DefaultLimitLOCKS'] => Variant[Integer[1], Systemd::SettingEnsure], |
| 2957 | + Optional['DefaultLimitSIGPENDING'] => Variant[Integer[1], Systemd::SettingEnsure], |
| 2958 | + Optional['DefaultLimitMSGQUEUE'] => Variant[Pattern['^(infinity|((\d+(K|M|G|T|P|E)?(:\d+(K|M|G|T|P|E)?)?)))$'], Systemd::SettingEnsure], |
| 2959 | + Optional['DefaultLimitNICE'] => Variant[Integer[0,40], Pattern['^(-\+([0-1]?[0-9]|20))|([0-3]?[0-9]|40)$'], Systemd::SettingEnsure], |
| 2960 | + Optional['DefaultLimitRTPRIO'] => Variant[Integer[0], Systemd::SettingEnsure], |
| 2961 | + Optional['DefaultLimitRTTIME'] => Variant[Pattern['^\d+(ms|s|m|h|d|w|M|y)?(:\d+(ms|s|m|h|d|w|M|y)?)?$'], Systemd::SettingEnsure], |
| 2962 | + Optional['DefaultOOMPolicy'] => Variant[Enum['continue', 'stop','kill'], Systemd::SettingEnsure], |
| 2963 | + Optional['DefaultSmackProcessLabel'] => Variant[String, Systemd::SettingEnsure], |
| 2964 | + Optional['ReloadLimitIntervalSec'] => Variant[Enum['infinity'], Systemd::Timespan, Systemd::SettingEnsure], |
| 2965 | + Optional['ReloadLimitBurst'] => Variant[Integer[0], Systemd::SettingEnsure], |
| 2966 | + Optional['DefaultMemoryPressureWatch'] => Variant[Systemd::SettingEnsure], |
| 2967 | + Optional['DefaultMemoryPressureThresholdSec'] => Variant[Systemd::SettingEnsure], |
| 2968 | + }] |
| 2969 | +``` |
| 2970 | + |
| 2971 | +### <a name="Systemd--SettingEnsure"></a>`Systemd::SettingEnsure` |
| 2972 | + |
| 2973 | +Defines allowed ensure states for an ini_setting |
| 2974 | + |
| 2975 | +Alias of `Struct[{ 'ensure' => Enum['absent'] }]` |
| 2976 | + |
| 2977 | +### <a name="Systemd--Timespan"></a>`Systemd::Timespan` |
| 2978 | + |
| 2979 | +Defines a timespan type |
| 2980 | + |
| 2981 | +* **See also** |
| 2982 | + * https://www.freedesktop.org/software/systemd/man/latest/systemd.time.html |
| 2983 | + |
| 2984 | +Alias of `Variant[Integer[0], Pattern[/^([0-9]+ *(usec|us|msec|ms|second[s]?|sec|s|minute[s]?|min|m|hour[s]?|hr|h|day[s]?|d|week[s]?|w|month[s]?|M|year[s]?|y)? *)+$/]]` |
| 2985 | + |
2794 | 2986 | ### <a name="Systemd--Unit"></a>`Systemd::Unit`
|
2795 | 2987 |
|
2796 | 2988 | custom datatype that validates different filenames for systemd units and unit templates
|
|
0 commit comments