in Count/src/index.py [0:0]
def process_template(template):
new_template = copy.deepcopy(template)
status = 'success'
for name, resource in template['Resources'].items():
if 'Count' in resource:
#Get the number of times to multiply the resource
count = new_template['Resources'][name].pop('Count')
print("Found 'Count' property with value {} in '{}' resource....multiplying!".format(count,name))
#Remove the original resource from the template but take a local copy of it
resourceToMultiply = new_template['Resources'].pop(name)
#Create a new block of the resource multiplied with names ending in the iterator and the placeholders substituted
resourcesAfterMultiplication = multiply(name, resourceToMultiply, count)
if not set(resourcesAfterMultiplication.keys()) & set(new_template['Resources'].keys()):
new_template['Resources'].update(resourcesAfterMultiplication)
else:
status = 'failed'
return status, template
else:
print("Did not find 'Count' property in '{}' resource....Nothing to do!".format(name))
return status, new_template