Class: LambdaRunner::Events

Inherits:
Object
  • Object
show all
Defined in:
lib/lambda_runner.rb

Overview

aws events

Class Method Summary collapse

Class Method Details

.dynamodb_event(key, new_image = nil, old_image = nil) ⇒ Object



122
123
124
125
126
# File 'lib/lambda_runner.rb', line 122

def self.dynamodb_event(key, new_image = nil, old_image = nil)
  event = load_json('sample_dynamodb_event.json')
  get_dynamodb_record(event['Records'][0], key, new_image, old_image)
  event
end

.s3_event(bucket, key, eventName = 'ObjectCreated:Put') ⇒ Object



95
96
97
98
99
100
101
102
103
104
105
# File 'lib/lambda_runner.rb', line 95

def self.s3_event(bucket, key, eventName='ObjectCreated:Put')
  event = load_json('sample_s3_event.json')
  event['Records'].each do |record|
    record['eventName'] = eventName
    record['s3']['bucket'].update('name' => bucket,
                                  'arn' => 'arn:aws:s3:::' + bucket)
    record['s3']['object']['key'] = key
    record
  end
  event
end

.sns_event(topicArn, messageId, timestamp, messageBody) ⇒ Object



107
108
109
110
111
112
113
114
115
116
117
118
119
120
# File 'lib/lambda_runner.rb', line 107

def self.sns_event(topicArn, messageId, timestamp, messageBody)
  unless messageBody.kind_of? String
    messageBody = JSON.generate messageBody
  end

  event = load_json('sample_sns_event.json')
  event['Records'].each do |record|
    record['Sns']['TopicArn'] = topicArn
    record['Sns']['MessageId'] = messageId
    record['Sns']['Timestamp'] = timestamp
    record['Sns']['Message'] = messageBody
  end
  event
end