Fix for v1 handling of unicode extra-vars

This commit is contained in:
Toshio Kuratomi
2015-02-02 14:12:16 -08:00
parent 1ed1af6cb4
commit 5b279c1c15
3 changed files with 9 additions and 3 deletions

View File

@@ -47,6 +47,7 @@ import ansible.utils.template
from ansible import errors
from ansible import callbacks
from ansible import utils
from ansible.utils import to_unicode
from ansible.color import ANSIBLE_COLOR, stringc
from ansible.callbacks import display
@@ -144,10 +145,11 @@ def main(args):
extra_vars = {}
for extra_vars_opt in options.extra_vars:
if extra_vars_opt.startswith("@"):
extra_vars_opt = to_unicode(extra_vars_opt)
if extra_vars_opt.startswith(u"@"):
# Argument is a YAML file (JSON is a subset of YAML)
extra_vars = utils.combine_vars(extra_vars, utils.parse_yaml_from_file(extra_vars_opt[1:], vault_password=vault_pass))
elif extra_vars_opt and extra_vars_opt[0] in '[{':
elif extra_vars_opt and extra_vars_opt[0] in u'[{':
# Arguments as YAML
extra_vars = utils.combine_vars(extra_vars, utils.parse_yaml(extra_vars_opt))
else: