class Ruboty::Seppuku::Actions::Seppuku

Public Instance Methods

call() click to toggle source
# File lib/ruboty/seppuku/actions/seppuku.rb, line 5
def call
  seppuku_dyno if heroku?
  Kernel.exit
end

Private Instance Methods

heroku?() click to toggle source
# File lib/ruboty/seppuku/actions/seppuku.rb, line 19
def heroku?
  heroku_api_key and heroku_app_name and ENV['DYNO']
end
heroku_api_key() click to toggle source
# File lib/ruboty/seppuku/actions/seppuku.rb, line 27
def heroku_api_key
  ENV['HEROKU_API_KEY']
end
heroku_app_name() click to toggle source
# File lib/ruboty/seppuku/actions/seppuku.rb, line 23
def heroku_app_name
  ENV['HEROKU_APP_NAME']
end
seppuku_dyno() click to toggle source
# File lib/ruboty/seppuku/actions/seppuku.rb, line 12
def seppuku_dyno
  require 'platform-api'
  heroku  = PlatformAPI.connect(heroku_api_key)
  seppuku = {"process" => "bot", "quantity" => 0}
  heroku.formation.batch_update(heroku_app_name, {"updates" => [seppuku]})
end