Class: InstanceAgent::Plugins::CodeDeployPlugin::ApplicationSpecification::ScriptInfo

Inherits:
Object
  • Object
show all
Defined in:
lib/instance_agent/plugins/codedeploy/application_specification/script_info.rb

Overview

Helper Class for storing data parsed from hook script maps

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(location, opts = {}) ⇒ ScriptInfo

Returns a new instance of ScriptInfo.



9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/instance_agent/plugins/codedeploy/application_specification/script_info.rb', line 9

def initialize(location, opts = {})
  location = location.to_s
  if(location.empty?)
    raise AppSpecValidationException, 'Scripts need a location value'
  end
  @location = location
  @runas = opts[:runas]
  @sudo = opts[:sudo]
  @timeout = opts[:timeout] || 3600
  @timeout = @timeout.to_i
  if(@timeout <= 0)
    raise AppSpecValidationException, 'Timeout needs to be an integer greater than 0'
  end
end

Instance Attribute Details

#locationObject (readonly)

Returns the value of attribute location.



8
9
10
# File 'lib/instance_agent/plugins/codedeploy/application_specification/script_info.rb', line 8

def location
  @location
end

#runasObject (readonly)

Returns the value of attribute runas.



8
9
10
# File 'lib/instance_agent/plugins/codedeploy/application_specification/script_info.rb', line 8

def runas
  @runas
end

#sudoObject (readonly)

Returns the value of attribute sudo.



8
9
10
# File 'lib/instance_agent/plugins/codedeploy/application_specification/script_info.rb', line 8

def sudo
  @sudo
end

#timeoutObject (readonly)

Returns the value of attribute timeout.



8
9
10
# File 'lib/instance_agent/plugins/codedeploy/application_specification/script_info.rb', line 8

def timeout
  @timeout
end