in aws_codeseeder/_cfn_seedkit.py [0:0]
def synth(seedkit_name: str, deploy_id: Optional[str] = None, managed_policy_arns: Optional[List[str]] = None) -> str:
out_dir = create_output_dir("seedkit")
output_filename = os.path.join(out_dir, FILENAME)
LOGGER.debug("Reading %s", RESOURCES_FILENAME)
with open(RESOURCES_FILENAME, "r") as file:
input_template = load_yaml(file)
if managed_policy_arns:
input_template["Resources"]["CodeBuildRole"]["Properties"]["ManagedPolicyArns"] += managed_policy_arns
output_template = Template(yaml.dump(input_template, Dumper=yaml_dumper.get_dumper()))
LOGGER.debug("Writing %s", output_filename)
os.makedirs(out_dir, exist_ok=True)
with open(output_filename, "w") as file:
file.write(
output_template.safe_substitute(
seedkit_name=seedkit_name,
account_id=get_account_id(),
region=get_region(),
deploy_id=deploy_id if deploy_id else "".join(random.choice(string.ascii_lowercase) for i in range(6)),
role_prefix="/",
)
)
return output_filename