shell quoting fixes

(edited author's original commit comment -- MPD)
This commit is contained in:
Matthew Williams 2012-03-30 09:18:10 -07:00 committed by Michael DeHaan
parent 99d5796605
commit ec6f488d1f
2 changed files with 11 additions and 4 deletions

View file

@ -260,12 +260,19 @@ def parse_yaml_from_file(path):
raise errors.AnsibleError("file not found: %s" % path)
return parse_yaml(data)
def parse_kv(args):
def unquote_string(string):
''' remove single or double quotes from beginning/end of string'''
if (string.startswith('"') and string.endswith('"')) or \
(string.startswith("'") and string.endswith("'")):
return string[1:-1]
else:
return string
def parse_kv(args, unquote=True):
''' convert a string of key/value items to a dict '''
options = {}
for x in args:
if x.find("=") != -1:
k, v = x.split("=")
options[k]=v
options[k]=unquote_string(v) if unquote else v
return options