The Saltutil module is used to manage the state of the salt minion itself. It is used to manage minion modules as well as automate updates to the salt minion.
depends: |
|
---|
salt.modules.saltutil.
clear_cache
()¶Forcibly removes all caches on a minion.
New in version 2014.7.0.
WARNING: The safest way to clear a minion cache is by first stopping the minion and then deleting the cache files before restarting it.
CLI Example:
salt '*' saltutil.clear_cache
salt.modules.saltutil.
cmd
(tgt, fun, arg=(), timeout=None, expr_form='glob', ret='', kwarg=None, ssh=False, **kwargs)¶Assuming this minion is a master, execute a salt command
CLI Example:
salt '*' saltutil.cmd
salt.modules.saltutil.
cmd_iter
(tgt, fun, arg=(), timeout=None, expr_form='glob', ret='', kwarg=None, ssh=False, **kwargs)¶Assuming this minion is a master, execute a salt command
CLI Example:
salt '*' saltutil.cmd_iter
salt.modules.saltutil.
find_cached_job
(jid)¶Return the data for a specific cached job id
CLI Example:
salt '*' saltutil.find_cached_job <job id>
salt.modules.saltutil.
find_job
(jid)¶Return the data for a specific job id that is currently running.
CLI Example:
salt '*' saltutil.find_job <job id>
Note that the find_job function only returns job information when the job is still running. If the job is currently running, the output looks something like this:
# salt my-minion saltutil.find_job 20160503150049487736
my-minion:
----------
arg:
- 30
fun:
test.sleep
jid:
20160503150049487736
pid:
9601
ret:
tgt:
my-minion
tgt_type:
glob
user:
root
If the job has already completed, the job cannot be found and therefore the function returns an empty dictionary, which looks like this on the CLI:
# salt my-minion saltutil.find_job 20160503150049487736
my-minion:
----------
salt.modules.saltutil.
is_running
(fun)¶If the named function is running return the data associated with it/them. The argument can be a glob
CLI Example:
salt '*' saltutil.is_running state.highstate
salt.modules.saltutil.
kill_job
(jid)¶Sends a kill signal (SIGKILL 9) to the named salt job's process
CLI Example:
salt '*' saltutil.kill_job <job id>
salt.modules.saltutil.
mmodule
(saltenv, fun, *args, **kwargs)¶Loads minion modules from an environment so that they can be used in pillars for that environment
CLI Example:
salt '*' saltutil.mmodule base test.ping
salt.modules.saltutil.
refresh_beacons
()¶Signal the minion to refresh the beacons.
CLI Example:
salt '*' saltutil.refresh_beacons
salt.modules.saltutil.
refresh_modules
(async=True)¶Signal the minion to refresh the module and grain data
The default is to refresh module asynchronously. To block until the module refresh is complete, set the 'async' flag to False.
CLI Example:
salt '*' saltutil.refresh_modules
salt.modules.saltutil.
refresh_pillar
()¶Signal the minion to refresh the pillar data.
CLI Example:
salt '*' saltutil.refresh_pillar
salt.modules.saltutil.
regen_keys
()¶Used to regenerate the minion keys.
CLI Example:
salt '*' saltutil.regen_keys
salt.modules.saltutil.
revoke_auth
(preserve_minion_cache=False)¶The minion sends a request to the master to revoke its own key. Note that the minion session will be revoked and the minion may not be able to return the result of this command back to the master.
If the 'preserve_minion_cache' flag is set to True, the master cache for this minion will not be removed.
CLI Example:
salt '*' saltutil.revoke_auth
salt.modules.saltutil.
runner
(name, **kwargs)¶Execute a runner module (this function must be run on the master)
New in version 2014.7.0.
CLI Example:
salt '*' saltutil.runner jobs.list_jobs
salt.modules.saltutil.
running
()¶Return the data on all running salt processes on the minion
CLI Example:
salt '*' saltutil.running
salt.modules.saltutil.
signal_job
(jid, sig)¶Sends a signal to the named salt job's process
CLI Example:
salt '*' saltutil.signal_job <job id> 15
salt.modules.saltutil.
sync_all
(saltenv=None, refresh=True)¶Changed in version 2015.8.11,2016.3.2: On masterless minions, pillar modules are now synced, and refreshed
when refresh
is set to True
.
Sync down all of the dynamic modules from the file server for a specific environment. This function synchronizes custom modules, states, beacons, grains, returners, output modules, renderers, and utils.
Important
If this function is executed using a module.run
state, the SLS file will not have access to
newly synced execution modules unless a refresh
argument is
added to the state, like so:
load_my_custom_module:
module.run:
- name: saltutil.sync_all
- refresh: True
See here for a more detailed explanation of why this is necessary.
CLI Example:
salt '*' saltutil.sync_all
salt '*' saltutil.sync_all saltenv=dev
salt.modules.saltutil.
sync_beacons
(saltenv=None, refresh=True)¶New in version 2015.5.1.
Sync the beacons from the salt://_beacons
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _beacons
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_beacons
salt '*' saltutil.sync_beacons saltenv=dev
salt.modules.saltutil.
sync_grains
(saltenv=None, refresh=True)¶Sync the grains from the salt://_grains
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _grains
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_grains
salt '*' saltutil.sync_grains saltenv=dev
salt.modules.saltutil.
sync_log_handlers
(saltenv=None, refresh=True)¶New in version 2015.8.0.
Sync utility source files from the salt://_log_handlers
directory on
the Salt fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _log_handlers
directory from
that environment. The default environment, if none is specified, is
base
.
CLI Example:
salt '*' saltutil.sync_log_handlers
salt '*' saltutil.sync_log_handlers saltenv=dev
salt.modules.saltutil.
sync_modules
(saltenv=None, refresh=True)¶Sync the modules from the salt://_modules
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _modules
directory from that
environment. The default environment, if none is specified, is base
.
Important
If this function is executed using a module.run
state, the SLS file will not have access to
newly synced execution modules unless a refresh
argument is
added to the state, like so:
load_my_custom_module:
module.run:
- name: saltutil.sync_modules
- refresh: True
See here for a more detailed explanation of why this is necessary.
CLI Example:
salt '*' saltutil.sync_modules
salt '*' saltutil.sync_modules saltenv=dev
salt.modules.saltutil.
sync_output
(saltenv=None, refresh=True)¶Sync the output modules from the salt://_output
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _output
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_output
salt '*' saltutil.sync_output saltenv=dev
salt.modules.saltutil.
sync_outputters
(saltenv=None, refresh=True)¶This function is an alias of sync_output
.
Sync the output modules from the
salt://_output
directory on the Salt fileserver. This function is environment-aware, pass the desired environment to grab the contents of the_output
directory from that environment. The default environment, if none is specified, isbase
.
- refresh
: True- Also refresh the execution modules available to the minion.
CLI Example:
salt '*' saltutil.sync_output salt '*' saltutil.sync_output saltenv=dev
salt.modules.saltutil.
sync_pillar
(saltenv=None, refresh=True)¶New in version 2015.8.11,2016.3.2.
Sync pillar modules from the salt://_pillar
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _pillar
directory from that
environment. The default environment, if none is specified, is base
.
Note
This function will raise an error if executed on a traditional (i.e. not masterless) minion
CLI Examples:
salt '*' saltutil.sync_pillar
salt '*' saltutil.sync_pillar saltenv=dev
salt.modules.saltutil.
sync_proxymodules
(saltenv=None, refresh=False)¶New in version 2015.8.2.
Sync the proxy modules from the salt://_proxy
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _proxy
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_proxymodules
salt '*' saltutil.sync_proxymodules saltenv=dev
salt.modules.saltutil.
sync_renderers
(saltenv=None, refresh=True)¶Sync the renderers from the salt://_renderers
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _renderers
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_renderers
salt '*' saltutil.sync_renderers saltenv=dev
salt.modules.saltutil.
sync_returners
(saltenv=None, refresh=True)¶Sync the returners from the salt://_returners
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _returners
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_returners
salt '*' saltutil.sync_returners saltenv=dev
salt.modules.saltutil.
sync_sdb
(saltenv=None, refresh=False)¶New in version 2015.5.7.
Sync sdb modules from the salt://_sdb
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _sdb
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_sdb
salt '*' saltutil.sync_sdb saltenv=dev
salt.modules.saltutil.
sync_states
(saltenv=None, refresh=True)¶Sync the states from the salt://_states
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _states
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_states
salt '*' saltutil.sync_states saltenv=dev
salt.modules.saltutil.
sync_utils
(saltenv=None, refresh=True)¶New in version 2014.7.0.
Sync utility source files from the salt://_utils
directory on the Salt
fileserver. This function is environment-aware, pass the desired
environment to grab the contents of the _utils
directory from that
environment. The default environment, if none is specified, is base
.
CLI Example:
salt '*' saltutil.sync_utils
salt '*' saltutil.sync_utils saltenv=dev
salt.modules.saltutil.
term_job
(jid)¶Sends a termination signal (SIGTERM 15) to the named salt job's process
CLI Example:
salt '*' saltutil.term_job <job id>
salt.modules.saltutil.
update
(version=None)¶Update the salt minion from the URL defined in opts['update_url'] SaltStack, Inc provides the latest builds here: update_url: https://repo.saltstack.com/windows/
Be aware that as of 2014-8-11 there's a bug in esky such that only the latest version available in the update_url can be downloaded and installed.
This feature requires the minion to be running a bdist_esky build.
The version number is optional and will default to the most recent version available at opts['update_url'].
Returns details about the transaction upon completion.
CLI Example:
salt '*' saltutil.update
salt '*' saltutil.update 0.10.3
salt.modules.saltutil.
wheel
(name, *args, **kwargs)¶Execute a wheel module (this function must be run on the master)
New in version 2014.7.0.
Any positional arguments to pass to the wheel function. A common example
of this would be the match
arg needed for key functions.
New in version v2015.8.11.
CLI Example:
salt '*' saltutil.wheel key.accept jerry