�
�Udac @` s� d d l m Z m Z m Z e Z i d d 6d g d 6d d 6Z d Z d Z d d
l Z d d
l
Z
d d
l Z d d l m
Z
m Z d d l m Z d d
l m Z m Z d d l m Z d e f d � � YZ d � Z e d k r� e � n d
S( i ( t absolute_importt divisiont print_functions 1.1t metadata_versiont stableinterfacet statust coret supported_bys�
---
module: sysctl
short_description: Manage entries in sysctl.conf.
description:
- This module manipulates sysctl entries and optionally performs a C(/sbin/sysctl -p) after changing them.
version_added: "1.0"
options:
name:
description:
- The dot-separated path (aka I(key)) specifying the sysctl variable.
required: true
aliases: [ 'key' ]
value:
description:
- Desired value of the sysctl key.
aliases: [ 'val' ]
state:
description:
- Whether the entry should be present or absent in the sysctl file.
choices: [ "present", "absent" ]
default: present
ignoreerrors:
description:
- Use this option to ignore errors about unknown keys.
type: bool
default: 'no'
reload:
description:
- If C(yes), performs a I(/sbin/sysctl -p) if the C(sysctl_file) is
updated. If C(no), does not reload I(sysctl) even if the
C(sysctl_file) is updated.
type: bool
default: 'yes'
sysctl_file:
description:
- Specifies the absolute path to C(sysctl.conf), if not C(/etc/sysctl.conf).
default: /etc/sysctl.conf
sysctl_set:
description:
- Verify token value with the sysctl command and set with -w if necessary
type: bool
default: 'no'
version_added: 1.5
author: "David CHANIAL (@davixx) <[email protected]>"
s�
# Set vm.swappiness to 5 in /etc/sysctl.conf
- sysctl:
name: vm.swappiness
value: '5'
state: present
# Remove kernel.panic entry from /etc/sysctl.conf
- sysctl:
name: kernel.panic
state: absent
sysctl_file: /etc/sysctl.conf
# Set kernel.panic to 3 in /tmp/test_sysctl.conf
- sysctl:
name: kernel.panic
value: '3'
sysctl_file: /tmp/test_sysctl.conf
reload: no
# Set ip forwarding on in /proc and verify token value with the sysctl command
- sysctl:
name: net.ipv4.ip_forward
value: '1'
sysctl_set: yes
# Set ip forwarding on in /proc and in the sysctl file and reload if necessary
- sysctl:
name: net.ipv4.ip_forward
value: '1'
sysctl_set: yes
state: present
reload: yes
N( t get_platformt
AnsibleModule( t string_types( t BOOLEANS_FALSEt
BOOLEANS_TRUE( t to_nativet SysctlModulec B` s� e Z i d d 6d d 6d d 6Z d � Z d � Z d � Z d � Z d � Z d � Z d
� Z d � Z
d � Z d
� Z d � Z
RS( t Ct LANGt LC_ALLt LC_MESSAGESc C` s� | | _ | j j | _ | j j d d t �| _ | j d | _ d | _ d | _ g | _
i | _ t | _
t | _ t | _ | j � d S( Nt sysctlt requiredt sysctl_file( t modulet paramst argst get_bin_patht Truet
sysctl_cmdR t Nonet
proc_valuet
file_valuet
file_linest file_valuest Falset changedt set_proct
write_filet process( t selfR ( ( sA /usr/lib/python2.7/site-packages/ansible/modules/system/sysctl.pyt __init__u s c C` s� t � j � | _ | j d j � | j d <| j | j d � | j d <| j d } | j | � | _ | j � | | j k r� d | j | <n | j � | j | d k r� | j d d k r� t | _
t | _ n� | j | d k r| j d d k rt | _
n� | j | r=| j d d k r=t | _
t | _ n� | j | | j d k rlt | _
t | _ nS | j d r�| j d k r�t | _
q�| j | j | j d � s�t | _
q�n | j d r.| j d d k r.| j d k r�t | _
q.| j | j | j d � s.t | _
t | _ q.n | j j s�| j rP| j � n | j
rs| j d rs| j � n | j r�| j | j d | j d � q�n d S( Nt namet valuet statet presentt absentt reloadt
sysctl_set( R t lowert platformR t stript _parse_valuet get_token_curr_valueR t read_sysctl_fileR R t fix_linesR R"