in modular_sdk/modular.py [0:0]
def __init__(self, *args, **kwargs):
kwargs = self.__collect_kwargs(kwargs)
service_mode = kwargs.get(MODULAR_SERVICE_MODE_ENV, SERVICE_MODE_SAAS)
assume_role_arn = kwargs.get(
PARAM_ASSUME_ROLE_ARN)
if service_mode == SERVICE_MODE_SAAS and assume_role_arn:
sts_service = self.sts_service()
assumed_credentials = sts_service.assume_roles_chain(
list(sts_service.assume_roles_default_payloads(
assume_role_arn.split(','),
ASSUMES_ROLE_SESSION_NAME
))
)
os.environ[MODULAR_AWS_ACCESS_KEY_ID_ENV] = assumed_credentials[
'aws_access_key_id']
os.environ[MODULAR_AWS_SECRET_ACCESS_KEY_ENV] = \
assumed_credentials['aws_secret_access_key']
os.environ[MODULAR_AWS_SESSION_TOKEN_ENV] = assumed_credentials[
'aws_session_token']
os.environ[MODULAR_AWS_CREDENTIALS_EXPIRATION_ENV] = \
assumed_credentials['expiration'].isoformat()
os.environ[PARAM_ASSUME_ROLE_ARN] = assume_role_arn
elif service_mode == SERVICE_MODE_DOCKER:
required_mongodb_attrs = (
MODULAR_SERVICE_MODE_ENV, PARAM_MONGO_USER, PARAM_MONGO_PASSWORD,
PARAM_MONGO_URL, PARAM_MONGO_DB_NAME)
validate_params(kwargs, required_mongodb_attrs)
for attr in required_mongodb_attrs:
os.environ[attr] = kwargs.get(attr)