Sha256: c2eb6dec0b18af341a21e3e90a90a33b4ee06caaef81f56f0c91df69b08895da

Contents?: true

Size: 804 Bytes

Versions: 1

Compression:

Stored size: 804 Bytes

Contents

require 'ruby_lambda/lambda_context'

module RubyLambda
  class Execute
    def initialize(current_directory)
      @current_directory  = current_directory
      @shell = Thor::Base.shell.new
    end

    def run(mute: false)
      config_file = "#{@current_directory}/config.yml"

      config_data = YAML.load_file config_file

      lambda_function, lambda_handler = config_data['handler'].split('.')

      load "#{@current_directory}/#{lambda_function}.rb"

      event_json_file = File.read("#{@current_directory}/event.json")

      event = JSON.parse(event_json_file)

      context = LambdaContext.new()

      if mute
        send(:"#{lambda_handler}", event: event, context: context)
      else
        ap send(:"#{lambda_handler}", event: event, context: context)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ruby_lambda-0.2.2 lib/ruby_lambda/execute.rb