cdist/cdist/conf/type/__key_value/man.text

96 lines
2.5 KiB
Plaintext
Raw Normal View History

cdist-type__key_value(7)
========================
Steven Armstrong <steven-cdist--@--armstrong.cc>
NAME
----
cdist-type__key_value - Change property values in files
DESCRIPTION
-----------
This cdist type allows you to change values in a key value based config
file.
REQUIRED PARAMETERS
-------------------
file::
The file to operate on.
delimiter::
The delimiter which seperates the key from the value.
OPTIONAL PARAMETERS
-------------------
state::
2014-02-25 10:35:14 +00:00
present or absent, defaults to present. If present, sets the key to value,
if absent, removes the key from the file.
key::
2014-02-25 10:35:14 +00:00
The key to change. Defaults to object_id.
value::
2014-02-25 10:35:14 +00:00
The value for the key. Optional if state=absent, required otherwise.
comment::
If supplied, the value will be inserted before the line with the key,
but only if the key or value must be changed.
You need to ensure yourself that the line is prefixed with the correct
comment sign. (for example # or ; or wathever ..)
BOOLEAN PARAMETERS
------------------
exact_delimiter::
If supplied, thread additional whitespaces between key, delimiter and value
as wrong value.
MESSAGES
--------
removed::
Line with key was removed
inserted::
A new line was inserted
changed::
An existing line was changed
EXAMPLES
--------
--------------------------------------------------------------------------------
# Set the maximum system user id
__key_value SYS_UID_MAX --file /etc/login.defs --value 666 --delimiter ' '
# Same with fancy id
__key_value my-fancy-id --file /etc/login.defs --key SYS_UID_MAX --value 666 \
--delimiter ' '
# Enable packet forwarding
__key_value net.ipv4.ip_forward --file /etc/sysctl.conf --value 1 \
2014-02-25 10:35:14 +00:00
--delimiter ' = ' --comment_line '# my linux kernel should act as a router'
# Remove existing key/value
__key_value LEGACY_KEY --file /etc/somefile --state absent --delimiter '='
--------------------------------------------------------------------------------
2014-02-25 10:35:14 +00:00
MORE INFORMATION
----------------
This type try to handle as many values as possible, so it doen't use regexes.
So you need to exatly specify the key and delimiter. Delimiter can be of any lenght.
Due to shell limitations, we have some values which you can't use, this values are:
2014-02-25 10:35:14 +00:00
__CDIST_HEREDOC_END_HERE_MARKER
__CDIST_INPUT_END_HERE_MARKER
SEE ALSO
--------
- cdist-type(7)
COPYING
-------
Copyright \(C) 2011 Steven Armstrong. Free use of this software is
granted under the terms of the GNU General Public License version 3 (GPLv3).