require 'optimus-runner/server/optimus_runner_sm' require 'rufus/scheduler' require 'logger' require 'dotenv' require 'optparse' require 'optimus-runner/utils/optimuscloudenv.rb' optimus_runner_sm = OptimusRunnerSM.new scheduler = Rufus::Scheduler.new logger = Logger.new(STDOUT) logger.level = Logger::WARN logger.info "Starting Optimus runner..." logger.info "Loading Optimus Cloud Env" scheduler.interval '5s', :first_in => 0.1 do logger.info "Is Optimus runner idle? #{optimus_runner_sm.idle?}" optimus_runner_sm.create if optimus_runner_sm.idle? optimus_runner_sm.add if optimus_runner_sm.new_device_added? optimus_runner_sm.remove if optimus_runner_sm.device_removed? optimus_runner_sm.restart if optimus_runner_sm.session_terminated? end scheduler.join