|
|
@ -94,10 +94,20 @@ def main(args):
|
|
|
|
options.ask_sudo_pass = options.ask_sudo_pass or C.DEFAULT_ASK_SUDO_PASS
|
|
|
|
options.ask_sudo_pass = options.ask_sudo_pass or C.DEFAULT_ASK_SUDO_PASS
|
|
|
|
( sshpass, sudopass ) = utils.ask_passwords(ask_pass=options.ask_pass, ask_sudo_pass=options.ask_sudo_pass)
|
|
|
|
( sshpass, sudopass ) = utils.ask_passwords(ask_pass=options.ask_pass, ask_sudo_pass=options.ask_sudo_pass)
|
|
|
|
options.sudo_user = options.sudo_user or C.DEFAULT_SUDO_USER
|
|
|
|
options.sudo_user = options.sudo_user or C.DEFAULT_SUDO_USER
|
|
|
|
if options.extra_vars and options.extra_vars[0] in '[{':
|
|
|
|
|
|
|
|
|
|
|
|
extra_vars = {}
|
|
|
|
|
|
|
|
if options.extra_vars:
|
|
|
|
|
|
|
|
if options.extra_vars.startswith("@"):
|
|
|
|
|
|
|
|
# Argument is a JSON file
|
|
|
|
|
|
|
|
with open(options.extra_vars[1:]) as fd:
|
|
|
|
|
|
|
|
extra_vars = utils.json_loads(fd.read())
|
|
|
|
|
|
|
|
elif options.extra_vars[0] in '[{':
|
|
|
|
|
|
|
|
# Arguments as JSON
|
|
|
|
extra_vars = utils.json_loads(options.extra_vars)
|
|
|
|
extra_vars = utils.json_loads(options.extra_vars)
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
|
|
|
|
# Arguments as Key-value
|
|
|
|
extra_vars = utils.parse_kv(options.extra_vars)
|
|
|
|
extra_vars = utils.parse_kv(options.extra_vars)
|
|
|
|
|
|
|
|
|
|
|
|
only_tags = options.tags.split(",")
|
|
|
|
only_tags = options.tags.split(",")
|
|
|
|
skip_tags = options.skip_tags
|
|
|
|
skip_tags = options.skip_tags
|
|
|
|
if options.skip_tags is not None:
|
|
|
|
if options.skip_tags is not None:
|
|
|
|