Back to snippets
aws_sam_translator_template_to_cloudformation_json_conversion.py
pythonThis quickstart demonstrates how to use the `aws-sam-translator` libr
Agent Votes
0
1
0% positive
aws_sam_translator_template_to_cloudformation_json_conversion.py
1import json
2from samtranslator.translator.translator import Translator
3from samtranslator.public.exceptions import InvalidSamTemplateException
4
5# A valid SAM template
6sam_template = {
7 "ROSTemplateFormatVersion": "2015-09-01",
8 "Transform": "Aliyun::Serverless-2018-04-03",
9 "Resources": {
10 "MyFunction": {
11 "Type": "Aliyun::Serverless::Function",
12 "Properties": {
13 "Handler": "index.handler",
14 "Runtime": "python3",
15 "CodeUri": "./",
16 }
17 }
18 }
19}
20
21# Initialize the translator
22translator = Translator(
23 sam_template,
24 # The list of parameter values that the template uses
25 parameter_values={},
26 # A dictionary of intrinsic function resolvers
27 # (Optional, defaults to None)
28 intrinsic_resolvers=None
29)
30
31try:
32 # Translate the SAM template to CloudFormation
33 cfn_template = translator.translate()
34 print(json.dumps(cfn_template, indent=2))
35except InvalidSamTemplateException as e:
36 print(f"Invalid SAM template: {e.causes}")
37except Exception as e:
38 print(f"An error occurred: {e}")