def get_environment(env=None, region_name=None): """ Return an Environment object based on the input arguments. Parameter `env` can be either of: * None (or empty), in which case the rules below are applied to (env = os.environ['ENV'] or ENV_DEV) * an Environment object (then this object is returned) * a string '<region>:<name>', which corresponds to Environment(region='<region>', prefix='<prefix>') * the predefined string 'dev' (ENV_DEV), which implies Environment(region='local', prefix='dev') * a string '<name>', which implies Environment(region=DEFAULT_REGION, prefix='<name>') Additionally, parameter `region_name` can be used to override DEFAULT_REGION. """ if not env: if "ENV" in os.environ: env = os.environ["ENV"] else: env = ENV_DEV elif not is_string(env) and not isinstance(env, Environment): raise Exception("Invalid environment: %s" % env) if is_string(env): env = Environment.from_string(env) if region_name: env.region = region_name if not env.region: raise Exception('Invalid region in environment: "%s"' % env) return env
def get_environment(env=None, region_name=None): """ Return an Environment object based on the input arguments. Parameter `env` can be either of: * None (or empty), in which case the rules below are applied to (env = os.environ['ENV'] or ENV_DEV) * an Environment object (then this object is returned) * a string '<region>:<name>', which corresponds to Environment(region='<region>', prefix='<prefix>') * the predefined string 'dev' (ENV_DEV), which implies Environment(region='local', prefix='dev') * a string '<name>', which implies Environment(region=DEFAULT_REGION, prefix='<name>') Additionally, parameter `region_name` can be used to override DEFAULT_REGION. """ if not env: if 'ENV' in os.environ: env = os.environ['ENV'] else: env = ENV_DEV elif not is_string(env) and not isinstance(env, Environment): raise Exception('Invalid environment: %s' % env) if is_string(env): env = Environment.from_string(env) if region_name: env.region = region_name if not env.region: raise Exception('Invalid region in environment: "%s"' % env) return env
def fix_ids(o, **kwargs): if isinstance(o, dict): for k, v in o.items(): if common.is_string(v, exclude_binary=True): o[k] = aws_stack.fix_account_id_in_arns(v) elif common.is_string(o, exclude_binary=True): o = aws_stack.fix_account_id_in_arns(o) return o
def fix_ids(o, **kwargs): if isinstance(o, dict): for k, v in o.items(): if common.is_string(v): o[k] = aws_stack.fix_account_id_in_arns(v) return o