60 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
AWSTemplateFormatVersion: '2010-09-09'
 | 
						|
Transform: 'AWS::Serverless-2016-10-31'
 | 
						|
Description: Baeldung Serverless Application Model Example with Implicit API Definition
 | 
						|
Globals:
 | 
						|
  Api:
 | 
						|
    EndpointConfiguration: REGIONAL
 | 
						|
    Name: "TestAPI"
 | 
						|
Resources:
 | 
						|
  PersonTable:
 | 
						|
    Type: AWS::Serverless::SimpleTable
 | 
						|
    Properties:
 | 
						|
      PrimaryKey:
 | 
						|
          Name: id
 | 
						|
          Type: Number
 | 
						|
      TableName: Person
 | 
						|
  StorePersonFunction:
 | 
						|
    Type: AWS::Serverless::Function
 | 
						|
    Properties:
 | 
						|
      Handler: com.baeldung.lambda.apigateway.APIDemoHandler::handleRequest
 | 
						|
      Runtime: java8
 | 
						|
      Timeout: 15
 | 
						|
      MemorySize: 512
 | 
						|
      CodeUri: ../target/aws-lambda-0.1.0-SNAPSHOT.jar
 | 
						|
      Policies:
 | 
						|
        - DynamoDBCrudPolicy:
 | 
						|
            TableName: !Ref PersonTable
 | 
						|
      Environment:
 | 
						|
        Variables:
 | 
						|
          TABLE_NAME: !Ref PersonTable
 | 
						|
      Events:
 | 
						|
        StoreApi:
 | 
						|
          Type: Api
 | 
						|
          Properties:
 | 
						|
            Path: /persons
 | 
						|
            Method: PUT
 | 
						|
  GetPersonByHTTPParamFunction:
 | 
						|
    Type: AWS::Serverless::Function
 | 
						|
    Properties:
 | 
						|
      Handler: com.baeldung.lambda.apigateway.APIDemoHandler::handleGetByParam
 | 
						|
      Runtime: java8
 | 
						|
      Timeout: 15
 | 
						|
      MemorySize: 512
 | 
						|
      CodeUri: ../target/aws-lambda-0.1.0-SNAPSHOT.jar
 | 
						|
      Policies:
 | 
						|
        - DynamoDBReadPolicy:
 | 
						|
            TableName: !Ref PersonTable
 | 
						|
      Environment:
 | 
						|
        Variables:
 | 
						|
          TABLE_NAME: !Ref PersonTable
 | 
						|
      Events:
 | 
						|
        GetByPathApi:
 | 
						|
          Type: Api
 | 
						|
          Properties:
 | 
						|
            Path: /persons/{id}
 | 
						|
            Method: GET
 | 
						|
        GetByQueryApi:
 | 
						|
          Type: Api
 | 
						|
          Properties:
 | 
						|
            Path: /persons
 | 
						|
            Method: GET |