in lex_exporter/create_lex_template.py [0:0]
def create_lex_bot_aliases(resource_type,
name_contains,
service_token,
alias,
dependent_resources):
depends_on = list(dependent_resources)
paginator = client.get_paginator('get_bots')
marker = None
pages = paginator.paginate(nameContains=name_contains, PaginationConfig={
'MaxItems': 1000,
'PageSize': 10,
'StartingToken': marker
})
for page in pages:
for bot in page["bots"]:
bot_resource_name = re.sub(r'[\W_]+', '', bot["name"])
template["Resources"].update(
{bot_resource_name + "Alias": {
"Type": resource_type,
"DependsOn": list(set(depends_on) - set([bot_resource_name + "Alias"])),
"Properties": {
"ServiceToken": {"Fn::ImportValue": service_token},
"name": {"Fn::Sub": alias + "${ResourceSuffix}"},
"botVersion": "$LATEST",
"botName": bot["name"]
}
}})
depends_on.append(bot_resource_name + "Alias")