git: fix change testing when version is HEAD (#3025)
When `version` is not specified, it defaults to "HEAD". "HEAD" is not a remote tag, and it's not listed in the output of get_branches(), so we'd keep repo_updated at the default value (None) and then return early with changed=True in --check mode, even when before == after. Fixes #3024.
This commit is contained in:
parent
3d5f84c528
commit
3a8a11d85f
1 changed files with 2 additions and 0 deletions
|
@ -819,6 +819,8 @@ def main():
|
||||||
if local_mods:
|
if local_mods:
|
||||||
module.exit_json(changed=True, before=before, after=remote_head,
|
module.exit_json(changed=True, before=before, after=remote_head,
|
||||||
msg="Local modifications exist")
|
msg="Local modifications exist")
|
||||||
|
elif version == 'HEAD':
|
||||||
|
repo_updated = False
|
||||||
elif is_remote_tag(git_path, module, dest, repo, version):
|
elif is_remote_tag(git_path, module, dest, repo, version):
|
||||||
# if the remote is a tag and we have the tag locally, exit early
|
# if the remote is a tag and we have the tag locally, exit early
|
||||||
if version in get_tags(git_path, module, dest):
|
if version in get_tags(git_path, module, dest):
|
||||||
|
|
Loading…
Reference in a new issue