mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Fixes #5750 Fail on missing ~/.ssh and ignore accept_hostkey if stricthoskeychecking is off
This commit is contained in:
parent
1584d8f01b
commit
3ec043ec17
2 changed files with 11 additions and 2 deletions
|
@ -59,6 +59,10 @@ def add_host_key(module, fqdn, key_type="rsa"):
|
|||
|
||||
result = False
|
||||
keyscan_cmd = module.get_bin_path('ssh-keyscan', True)
|
||||
|
||||
if not os.path.exists(os.path.expanduser("~/.ssh/")):
|
||||
module.fail_json(msg="%s does not exist" % os.path.expanduser("~/.ssh/"))
|
||||
|
||||
this_cmd = "%s -t %s %s >> ~/.ssh/known_hosts" % (keyscan_cmd, key_type, fqdn)
|
||||
rc, out, err = module.run_command(this_cmd)
|
||||
|
||||
|
|
|
@ -49,6 +49,8 @@ options:
|
|||
version_added: "1.5"
|
||||
description:
|
||||
- Add the hostkey for the repo url if not already added.
|
||||
If ssh_args contains "-o StrictHostKeyChecking=no", this
|
||||
parameter is ignored.
|
||||
ssh_opts:
|
||||
required: false
|
||||
default: None
|
||||
|
@ -445,8 +447,11 @@ def main():
|
|||
set_git_ssh(ssh_wrapper, key_file, ssh_opts)
|
||||
|
||||
# add the git repo's hostkey
|
||||
#if module.params['accept_hostkey']:
|
||||
add_git_host_key(module, repo, accept_hostkey=module.params['accept_hostkey'])
|
||||
if module.params['ssh_opts'] is not None:
|
||||
if not "-o StrictHostKeyChecking=no" in module.params['ssh_opts']:
|
||||
add_git_host_key(module, repo, accept_hostkey=module.params['accept_hostkey'])
|
||||
else:
|
||||
add_git_host_key(module, repo, accept_hostkey=module.params['accept_hostkey'])
|
||||
|
||||
if bare:
|
||||
gitconfig = os.path.join(dest, 'config')
|
||||
|
|
Loading…
Reference in a new issue