Example #1
0
    def test_serialize_json(self):
        data = {"foo": "bar"}
        serialized = json.serialize(data)
        assert serialized == '{"foo": "bar"}', serialized

        deserialized = json.deserialize(serialized)
        assert deserialized == data, deserialized
Example #2
0
def __load_compose_definitions(path, definition):
    '''
    Will load the compose file located at path
    Then determines the format/contents of the sent definition

    err or results are only set if there were any

    :param path:
    :param definition:
    :return tuple(compose_result, loaded_definition, err):
    '''
    compose_result, err = __load_docker_compose(path)
    if err:
        return None, None, err
    if isinstance(definition, dict):
        return compose_result, definition, None
    elif definition.strip().startswith('{'):
        try:
            loaded_definition = json.deserialize(definition)
        except json.DeserializationError as jerr:
            msg = 'Could not parse {0} {1}'.format(definition, jerr)
            return None, None, __standardize_result(False, msg,
                                              None, None)
    else:
        try:
            loaded_definition = yaml.load(definition)
        except yaml.YAMLError as yerr:
            msg = 'Could not parse {0} {1}'.format(definition, yerr)
            return None, None, __standardize_result(False, msg,
                                              None, None)
    return compose_result, loaded_definition, None
Example #3
0
    def test_serialize_json(self):
        data = {
            "foo": "bar"
        }
        serialized = json.serialize(data)
        assert serialized == '{"foo": "bar"}', serialized

        deserialized = json.deserialize(serialized)
        assert deserialized == data, deserialized
Example #4
0
def get_key_policy(key_id, policy_name, region=None, key=None, keyid=None,
                   profile=None):
    '''
    Get the policy for the specified key.

    CLI example::

        salt myminion boto_kms.get_key_policy 'alias/mykey' mypolicy
    '''
    conn = _get_conn(region=region, key=key, keyid=keyid, profile=profile)

    r = {}
    try:
        key_policy = conn.get_key_policy(key_id, policy_name)
        r['key_policy'] = json.deserialize(
            key_policy['Policy'],
            object_pairs_hook=odict.OrderedDict
        )
    except boto.exception.BotoServerError as e:
        r['error'] = __utils__['boto.get_error'](e)
    return r
Example #5
0
def get_key_policy(key_id, policy_name, region=None, key=None, keyid=None,
                   profile=None):
    '''
    Get the policy for the specified key.

    CLI example::

        salt myminion boto_kms.get_key_policy 'alias/mykey' mypolicy
    '''
    conn = _get_conn(region=region, key=key, keyid=keyid, profile=profile)

    r = {}
    try:
        key_policy = conn.get_key_policy(key_id, policy_name)
        r['key_policy'] = json.deserialize(
            key_policy['Policy'],
            object_pairs_hook=odict.OrderedDict
        )
    except boto.exception.BotoServerError as e:
        r['error'] = __utils__['boto.get_error'](e)
    return r
Example #6
0
def _exec_dict_return(commands=None, flags=None, kvflags=None):
    """

    :param commands:
    :param flags:
    :param kvflags:
    :return:
    """
    if kvflags is None:
        kvflags = {}
    if not ("output" in kvflags.keys() or "--output" in kvflags.keys()):
        kvflags.update({"output": "json"})
    cmd_result = _exec_cmd(commands=commands, flags=flags, kvflags=kvflags)
    if cmd_result.get("retcode", -1) == 0:
        if kvflags.get("output") == "json" or kvflags.get("--output") == "json":
            result = json.deserialize(cmd_result.get("stdout", ""))
        else:
            result = cmd_result.get("stdout", "")
    else:
        result = cmd_result.get("stderr", "")
    return result