New in version 2015.8.0.
depends: |
|
---|
This state module supports setting and removing keys from etcd.
To work with an etcd server you must configure an etcd profile. The etcd config can be set in either the Salt Minion configuration file or in pillar:
my_etd_config:
etcd.host: 127.0.0.1
etcd.port: 4001
It is technically possible to configure etcd without using a profile, but this is not considered to be a best practice, especially when multiple etcd servers or clusters are available.
etcd.host: 127.0.0.1
etcd.port: 4001
Note
The etcd configuration can also be set in the Salt Master config file,
but in order to use any etcd configurations defined in the Salt Master
config, the pillar_opts
must be set to True
.
Be aware that setting pillar_opts
to True
has security implications
as this makes all master configuration settings available in all minion's
pillars.
set
This will set a value to a key in etcd. Changes will be returned if the key has been created or the value of the key has been updated. This means you can watch these states for changes.
/foo/bar/baz:
etcd.set:
- value: foo
- profile: my_etcd_config
wait_set
Performs the same functionality as set
but only if a watch requisite is True
.
/some/file.txt:
file.managed:
- source: salt://file.txt
/foo/bar/baz:
etcd.wait_set:
- value: foo
- profile: my_etcd_config
- watch:
- file: /some/file.txt
rm
This will delete a key from etcd. If the key exists then changes will be returned and thus you can watch for changes on the state, if the key does not exist then no changes will occur.
/foo/bar/baz:
etcd.rm:
- profile: my_etcd_config
wait_rm
Performs the same functionality as rm
but only if a watch requisite is True
.
/some/file.txt:
file.managed:
- source: salt://file.txt
/foo/bar/baz:
etcd.wait_rm:
- profile: my_etcd_config
- watch:
- file: /some/file.txt
salt.states.etcd_mod.
mod_watch
(name, **kwargs)¶Execute a etcd function based on a watch call requisite.
salt.states.etcd_mod.
rm
(name, recurse=False, profile=None)¶Deletes a key from etcd. This function is also aliased as rm
.
/foo/bar/baz
.False
. If True
performs a recursive delete.None
. Sets the etcd profile to use which has
been defined in the Salt Master config.salt.states.etcd_mod.
set
(name, value, profile=None)¶Set a key in etcd and can be called as set
.
/foo/bar/baz
.None
. Sets the etcd profile to use which has
been defined in the Salt Master config.salt.states.etcd_mod.
wait_rm
(name, recurse=False, profile=None)¶Deletes a key from etcd only if the watch statement calls it.
This function is also aliased as wait_rm
.
/foo/bar/baz
.False
. If True
performs a recursive
delete, see: https://python-etcd.readthedocs.org/en/latest/#delete-a-key.None
. Sets the etcd profile to use which has
been defined in the Salt Master config.salt.states.etcd_mod.
wait_set
(name, value, profile=None)¶Set a key in etcd only if the watch statement calls it. This function is
also aliased as wait_set
.
/foo/bar/baz
.None
.