{"AWSTemplateFormatVersion"=>"2010-09-09", "Transform"=>"AWS::Serverless-2016-10-31", "Description"=>"sam-app\n" + "Sample SAM Template for sam-app\n", "Globals"=>{"Function"=>{"Timeout"=>3}}, "Resources"=> {"HelloWorldFunction"=> {"Type"=>{"value"=>"AWS::Lambda::Function", "line"=>-1}, "Properties"=> {"Handler"=>"app.lambda_handler", "Role"=>{"Fn::GetAtt"=>["FunctionNameRole", "Arn"]}, "Runtime"=>"python3.7"}}, "FunctionWithExternalRole"=> {"Type"=>{"value"=>"AWS::Lambda::Function", "line"=>-1}, "Properties"=> {"Handler"=>"app.lambda_handler", "Role"=>{"Fn::GetAtt"=>["FunctionNameRole", "Arn"]}, "Runtime"=>"python3.7"}}, "FunctionWithAdministratorAccessPolicy"=> {"Type"=>{"value"=>"AWS::Lambda::Function", "line"=>-1}, "Properties"=> {"Handler"=>"app.lambda_handler", "Role"=>{"Fn::GetAtt"=>["FunctionNameRole", "Arn"]}, "Runtime"=>"python3.7"}}, "FunctionWithPowerUserPolicyAndPolicyTemplate"=> {"Type"=>{"value"=>"AWS::Lambda::Function", "line"=>-1}, "Properties"=> {"Handler"=>"app.lambda_handler", "Role"=>{"Fn::GetAtt"=>["FunctionNameRole", "Arn"]}, "Runtime"=>"python3.7"}}, "FunctionWithInlineAdminPolicy"=> {"Type"=>{"value"=>"AWS::Lambda::Function", "line"=>-1}, "Properties"=> {"Handler"=>"app.lambda_handler", "Role"=>{"Fn::GetAtt"=>["FunctionNameRole", "Arn"]}, "Runtime"=>"python3.7"}}, "PathMapping"=> {"Type"=>{"value"=>"AWS::ApiGateway::BasePathMapping", "line"=>78}, "Properties"=> {"DomainName"=>"testing.cfn-model.org", "RestApiId"=>{"Ref"=>"ServerlessRestApi"}}}, "FunctionNameRole"=> {"Type"=>{"value"=>"AWS::IAM::Role", "line"=>-1}, "Properties"=> {"ManagedPolicyArns"=> ["arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"], "AssumeRolePolicyDocument"=> {"Version"=>"2012-10-17", "Statement"=> [{"Action"=>["sts:AssumeRole"], "Effect"=>"Allow", "Principal"=>{"Service"=>["lambda.amazonaws.com"]}}]}}}, "ServerlessRestApi"=> {"Type"=>{"value"=>"AWS::ApiGateway::RestApi", "line"=>-1}, "Properties"=> {"Body"=> {"info"=>{"title"=>{"Ref"=>"AWS::StackName"}, "version"=>"1.0"}, "paths"=> {"/hello"=> {"get"=> {"responses"=>{}, "x-amazon-apigateway-integration"=> {"httpMethod"=>"POST", "type"=>"aws_proxy", "uri"=> {"Fn::Sub"=> "arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${HelloWorldFunction.Arn}/invocations"}}}}, "/external-role"=> {"get"=> {"responses"=>{}, "x-amazon-apigateway-integration"=> {"httpMethod"=>"POST", "type"=>"aws_proxy", "uri"=> {"Fn::Sub"=> "arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${FunctionWithExternalRole.Arn}/invocations"}}}}, "/admin-policy"=> {"get"=> {"responses"=>{}, "x-amazon-apigateway-integration"=> {"httpMethod"=>"POST", "type"=>"aws_proxy", "uri"=> {"Fn::Sub"=> "arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${FunctionWithAdministratorAccessPolicy.Arn}/invocations"}}}}}, "swagger"=>"2.0"}}}, "ServerlessRestApiDeployment"=> {"Type"=>{"value"=>"AWS::ApiGateway::Deployment", "line"=>-1}, "Properties"=> {"Description"=>"Generated by cfn-model", "RestApiId"=>{"Ref"=>"ServerlessRestApi"}, "StageDescription"=> {"AccessLogSetting"=> {"DestinationArn"=>"arn:aws:logs:region:account:group/ApiLogs", "Format"=>"$context.requestId"}}, "StageName"=>"Stage"}}, "ServerlessRestApiProdStage"=> {"Type"=>{"value"=>"AWS::ApiGateway::Stage", "line"=>-1}, "Properties"=> {"DeploymentId"=>{"Ref"=>"ServerlessRestApiDeployment"}, "RestApiId"=>{"Ref"=>"ServerlessRestApi"}, "StageName"=>"Prod"}}}, "Outputs"=> {"HelloWorldApi"=> {"Description"=> "API Gateway endpoint URL for Prod stage for Hello World function", "Value"=> {"Fn::Sub"=> "https://${ServerlessRestApi}.execute-api.${AWS::Region}.amazonaws.com/Prod/hello/"}}, "HelloWorldFunction"=> {"Description"=>"Hello World Lambda Function ARN", "Value"=>{"Fn::GetAtt"=>["HelloWorldFunction", "Arn"]}}, "HelloWorldFunctionIamRole"=> {"Description"=>"Implicit IAM Role created for Hello World function", "Value"=>{"Fn::GetAtt"=>["HelloWorldFunctionRole", "Arn"]}}}}