Don't fail in check_mode if user exists

PR #1651 fixed issue #1515 but the requirement for path to be defined is unecessarily strict. If the user has previously been created a path isn't necessary.
This commit is contained in:
Simon Li 2015-08-21 17:55:28 +01:00 committed by Matt Clay
parent b9ca912ffe
commit 28c44c554c

View file

@ -169,16 +169,15 @@ def keyfile(module, user, write=False, path=None, manage_dir=True):
:return: full path string to authorized_keys for user :return: full path string to authorized_keys for user
""" """
if module.check_mode: if module.check_mode and path is not None:
if path is None:
module.fail_json(msg="You must provide full path to key file in check mode")
else:
keysfile = path keysfile = path
return keysfile return keysfile
try: try:
user_entry = pwd.getpwnam(user) user_entry = pwd.getpwnam(user)
except KeyError, e: except KeyError, e:
if module.check_mode and path is None:
module.fail_json(msg="Either user must exist or you must provide full path to key file in check mode")
module.fail_json(msg="Failed to lookup user %s: %s" % (user, str(e))) module.fail_json(msg="Failed to lookup user %s: %s" % (user, str(e)))
if path is None: if path is None:
homedir = user_entry.pw_dir homedir = user_entry.pw_dir