Runner module to directly manage the git external pillar
salt.runners.git_pillar.
update
(branch=None, repo=None)¶New in version 2014.1.0.
Changed in version 2015.8.4: This runner function now supports the new git_pillar
configuration schema introduced in
2015.8.0. Additionally, the branch and repo can now be omitted to
update all git_pillar remotes. The return data has also changed. For
releases 2015.8.3 and earlier, there is no value returned. Starting
with 2015.8.4, the return data is a dictionary. If using the old
git_pillar configuration schema, then the
dictionary values will be True
if the update completed without
error, and False
if an error occurred. If using the new
git_pillar configuration schema, the
values will be True
only if new commits were fetched, and False
if there were errors or no new commits were fetched.
Fetch one or all configured git_pillar remotes.
Note
This will not fast-forward the git_pillar cachedir on the master. All
it does is perform a git fetch
. If this runner is executed with
-l debug
, you may see a log message that says that the repo is
up-to-date. Keep in mind that Salt automatically fetches git_pillar
repos roughly every 60 seconds (or whatever
loop_interval
is set to). So, it is possible that the
repo was fetched automatically in the time between when changes were
pushed to the repo, and when this runner was executed. When in doubt,
simply refresh pillar data using saltutil.refresh_pillar
and then use
pillar.item
to check if the
pillar data has changed as expected.
CLI Example:
# Update specific branch and repo
salt-run git_pillar.update branch='branch' repo='https://foo.com/bar.git'
# Update all repos (2015.8.4 and later)
salt-run git_pillar.update
# Run with debug logging
salt-run git_pillar.update -l debug