def parse_cmdline_url(cmdline, names=('cloud-config-url', 'url')): data = util.keyval_str_to_dict(cmdline) for key in names: if key in data: return key, data[key] raise KeyError("No keys (%s) found in string '%s'" % (cmdline, names))
def get_cmdline_url(names=('cloud-config-url', 'url'), starts="#cloud-config", cmdline=None): if cmdline == None: cmdline = util.get_cmdline() data = util.keyval_str_to_dict(cmdline) url = None key = None for key in names: if key in data: url = data[key] break if url == None: return (None, None, None) contents = util.readurl(url) if contents.startswith(starts): return (key, url, contents) return (key, url, None)
def get_cmdline_url( names=('cloud-config-url', 'url'), starts="#cloud-config", cmdline=None): if cmdline == None: cmdline = util.get_cmdline() data = util.keyval_str_to_dict(cmdline) url = None key = None for key in names: if key in data: url = data[key] break if url == None: return (None, None, None) contents = util.readurl(url) if contents.startswith(starts): return (key, url, contents) return (key, url, None)
def test_keyval_str_to_dict(self): expected = {'1': 'one', '2': 'one+one', 'ro': True} cmdline = "1=one ro 2=one+one" self.assertEqual(expected, util.keyval_str_to_dict(cmdline))
def test_keyval_str_to_dict(self): expected = {'1': 'one', '2': 'one+one', 'ro': True} cmdline = "1=one ro 2=one+one" self.assertEqual(expected, keyval_str_to_dict(cmdline))
def test_keyval_str_to_dict(self): expected = {"1": "one", "2": "one+one", "ro": True} cmdline = "1=one ro 2=one+one" self.assertEqual(expected, util.keyval_str_to_dict(cmdline))