class Acquia::Cloud::Task

Public Class Methods

new(cloud, site, task) click to toggle source
# File lib/acquia/cloud/task.rb, line 6
def initialize(cloud, site, task)
  @cloud = cloud
  @site = site
  @data = task
  @url = "/sites/#{@site}/tasks/#{@data['id']}"
end

Public Instance Methods

completed() click to toggle source
# File lib/acquia/cloud/task.rb, line 37
def completed
  Time.at(data['completed'].to_i)
end
created() click to toggle source
# File lib/acquia/cloud/task.rb, line 29
def created
  Time.at(data['created'].to_i)
end
description() click to toggle source
# File lib/acquia/cloud/task.rb, line 25
def description
  data['description']
end
id() click to toggle source
# File lib/acquia/cloud/task.rb, line 13
def id
  data['id']
end
logs() click to toggle source
# File lib/acquia/cloud/task.rb, line 41
def logs
  data['logs']
end
queue() click to toggle source
# File lib/acquia/cloud/task.rb, line 17
def queue
  data['queue']
end
started() click to toggle source
# File lib/acquia/cloud/task.rb, line 33
def started
  Time.at(data['started'].to_i)
end
state() click to toggle source
# File lib/acquia/cloud/task.rb, line 21
def state
  data['state'].to_sym
end
wait_for_completion(message = nil) click to toggle source
# File lib/acquia/cloud/task.rb, line 45
def wait_for_completion(message = nil)
  print message if message
  loop do
    # This will take several minutes, don't spam Acquia too hard while waiting.
    sleep 15
    print '.' if message
    refresh
    unless [:started].include? state
      puts if message
      break
    end
  end

  self
end