in server/TenantManagementService/tenant-registration.py [0:0]
def register_tenant(event, context):
logger.info(event)
try:
api_key=''
tenant_id = uuid.uuid1().hex
tenant_details = json.loads(event['body'])
tenant_details['dedicatedTenancy'] = 'false'
if (tenant_details['tenantTier'].upper() == utils.TenantTier.PLATINUM.value.upper()):
tenant_details['dedicatedTenancy'] = 'true'
api_key = platinum_tier_api_key
elif (tenant_details['tenantTier'].upper() == utils.TenantTier.PREMIUM.value.upper()):
api_key = premium_tier_api_key
elif (tenant_details['tenantTier'].upper() == utils.TenantTier.STANDARD.value.upper()):
api_key = standard_tier_api_key
elif (tenant_details['tenantTier'].upper() == utils.TenantTier.BASIC.value.upper()):
api_key = basic_tier_api_key
tenant_details['tenantId'] = tenant_id
tenant_details['apiKey'] = api_key
logger.info(tenant_details)
stage_name = event['requestContext']['stage']
host = event['headers']['Host']
auth = utils.get_auth(host, region)
headers = utils.get_headers(event)
create_user_response = __create_tenant_admin_user(tenant_details, headers, auth, host, stage_name)
logger.info (create_user_response)
tenant_details['userPoolId'] = create_user_response['message']['userPoolId']
tenant_details['appClientId'] = create_user_response['message']['appClientId']
tenant_details['tenantAdminUserName'] = create_user_response['message']['tenantAdminUserName']
create_tenant_response = __create_tenant(tenant_details, headers, auth, host, stage_name)
logger.info (create_tenant_response)
if (tenant_details['dedicatedTenancy'].upper() == 'TRUE'):
provision_tenant_response = __provision_tenant(tenant_details, headers, auth, host, stage_name)
logger.info(provision_tenant_response)
except Exception as e:
logger.error('Error registering a new tenant')
raise Exception('Error registering a new tenant', e)
else:
return utils.create_success_response("You have been registered in our system")