Method: Jets::Resource::Permission#definition

Defined in:
lib/jets/resource/permission.rb

#definitionObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/jets/resource/permission.rb', line 8

def definition
  logical_id = permission_logical_id

  definition = {
    logical_id => {
      type: "AWS::Lambda::Permission",
      properties: {
        function_name: "!GetAtt {namespace}LambdaFunction.Arn",
        action: "lambda:InvokeFunction",
        principal: principal
      }
    }
  }

  # From AWS docs: https://amzn.to/2N0QXQL
  # source_arn is "not supported by all event sources"
  definition[logical_id][:properties][:source_arn] = source_arn if source_arn

  definition
end