Class: Ci::Killer::DigitalOcean

Inherits:
Object
  • Object
show all
Defined in:
lib/ci/killer/digital_ocean.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(time_in_minutes) ⇒ DigitalOcean

Returns a new instance of DigitalOcean.



11
12
13
# File 'lib/ci/killer/digital_ocean.rb', line 11

def initialize(time_in_minutes)
  @time_in_minutes = time_in_minutes.to_i
end

Instance Attribute Details

#time_in_minutesObject (readonly)

Returns the value of attribute time_in_minutes.



5
6
7
# File 'lib/ci/killer/digital_ocean.rb', line 5

def time_in_minutes
  @time_in_minutes
end

Class Method Details

.kill(time_in_minutes) ⇒ Object



7
8
9
# File 'lib/ci/killer/digital_ocean.rb', line 7

def self.kill(time_in_minutes)
  new(time_in_minutes).kill
end

Instance Method Details

#killObject



15
16
17
18
19
20
21
22
# File 'lib/ci/killer/digital_ocean.rb', line 15

def kill
  droplets_to_kill.each do |droplet|
    running_time = ((Time.now.utc - DateTime.parse(droplet.created_at).utc) / 60).round
    print "* Droplet #{droplet.name} (#{droplet.id}) has been running for #{running_time} minute(s)."
    client.droplets.delete(id: droplet.id)
    puts " [KILLED]"
  end
end