class ScalrApiV2::Scripts

connection and request methods for interacting with the Scalr API

Public Class Methods

new() click to toggle source
# File lib/scalr_api_v2/scripts.rb, line 14
def initialize
  @config = ScalrApiV2::Config.new.config
  @scalr = ScalrApiV2::Request.new
end

Public Instance Methods

create(script_object) click to toggle source

Create script accepts script_object as hash and generates JSON before making SCALR api call

# File lib/scalr_api_v2/scripts.rb, line 32
def create(script_object)
  item = @scalr.create(format('/api/v1beta0/%s/scripts/', @config['mode_path']), script_object)
  return item
end
create_version(script_id, script_object) click to toggle source

Create script version

# File lib/scalr_api_v2/scripts.rb, line 38
def create_version(script_id, script_object)
  item = @scalr.create(format('/api/v1beta0/%s/scripts/%s/script-versions/', @config['mode_path'], script_id), script_object)
  return item
end
execute(script_id, script_execution_object) click to toggle source

execute version

# File lib/scalr_api_v2/scripts.rb, line 50
def execute(script_id, script_execution_object)
  item = @scalr.post(format('/api/v1beta0/%s/scripts/%s/actions/execute', @config['mode_path'], script_id), script_execution_object)
  return item
end
execute_version(script_id, script_version, script_execution_object) click to toggle source

execute script version

# File lib/scalr_api_v2/scripts.rb, line 56
def execute_version(script_id, script_version, script_execution_object)
  item = @scalr.post(format('/api/v1beta0/%s/scripts/%s/script-versions/%s/actions/execute', @config['mode_path'], script_id, script_version), script_execution_object)
  return item
end
list() click to toggle source

List all scripts

# File lib/scalr_api_v2/scripts.rb, line 20
def list
  list = @scalr.list(format('/api/v1beta0/%s/scripts/', @config['mode_path']))
  return list
end
update_version(script_id, script_version, script_object) click to toggle source

Update script version

# File lib/scalr_api_v2/scripts.rb, line 44
def update_version(script_id, script_version, script_object)
  item = @scalr.patch(format('/api/v1beta0/%s/scripts/%s/script-versions/%s/', @config['mode_path'], script_id, script_version), script_object)
  return item
end
versions(script_id = 1) click to toggle source

List all script versions

# File lib/scalr_api_v2/scripts.rb, line 26
def versions(script_id = 1)
  list = @scalr.list(format('/api/v1beta0/%s/scripts/%s/script-versions/', @config['mode_path'], script_id))
  return list
end