2 Commits

Author SHA1 Message Date
Vladimir Botka
3c232a2429 In FreeBSD, fail if loader.conf shall be reloaded. (#664)
Fix #663
2026-05-20 08:43:23 -07:00
Patrick Kingston
9cd0a1f0ef docs: added attributes metadata for check_mode support (fixes #643) (#741)
Co-authored-by: jkhall81 <jason.kei.hall@gmail.com>
2026-05-21 00:24:37 +09:00
3 changed files with 23 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
---
trivial:
- sysctl - added the attributes section to the module documentation to reflect check_mode support (https://github.com/ansible-collections/ansible.posix/issues/643).

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- sysctl - reload sysctl only if the sysctl file is ``/etc/sysctl.conf`` or ``/etc/sysctl.conf.local`` (https://github.com/ansible-collections/ansible.posix/issues/663).

View File

@@ -44,6 +44,7 @@ options:
- If V(true), performs a C(/sbin/sysctl -p) if the O(sysctl_file) is
updated. If V(false), does not reload C(sysctl) even if the
O(sysctl_file) is updated.
- For FreeBSD, can not be used with O(sysctl_file) other than C(/etc/sysctl.conf) or C(/etc/sysctl.conf.local).
type: bool
default: true
sysctl_file:
@@ -56,6 +57,17 @@ options:
- Verify token value with the sysctl command and set with C(-w) if necessary.
type: bool
default: false
attributes:
check_mode:
support: full
description: Can run in check_mode and return changed status prediction without modifying target.
diff_mode:
support: none
description: Does not support differences output.
platform:
platforms: posix
support: full
description: Supported on POSIX-compliant systems.
author:
- David CHANIAL (@davixx)
'''
@@ -155,6 +167,11 @@ class SysctlModule(object):
self.platform = platform.system().lower()
# system specific tests
freebsd_sysctl_files = ['/etc/sysctl.conf', '/etc/sysctl.conf.local']
if self.platform == 'freebsd' and self.sysctl_file not in freebsd_sysctl_files and self.args['reload']:
self.module.fail_json(msg="%s can not be reloaded. Set reload=False." % self.sysctl_file)
# Whitespace is bad
self.args['name'] = self.args['name'].strip()
self.args['value'] = self._parse_value(self.args['value'])