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