Method: FuncRunner::Application#run

Defined in:
lib/func_runner/application.rb

#runObject



162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# File 'lib/func_runner/application.rb', line 162

def run
  logger.info("Starting Func Runner application...")
  logger.info("Available functions: #{function_registry.keys.join(", ")}") unless function_registry.empty?
  logger.info("No functions registered.") if function_registry.empty?
  @is_running = true

  configure_assistant if config.auto_update && config.assistant_id

  begin
    while @is_running
      message = dequeue_message
      run_result = process_queue_message(message) if message
      submit_function_results(run_result) if run_result
      delete_message(message.id, message.correlation_id) if run_result
      sleep(config.polling_interval)
    end
  rescue Interrupt
    logger.info("Shutting down gracefully...")
    @is_running = false
  end
end