Class: Teleport::Config::Server

Inherits:
Object
  • Object
show all
Defined in:
lib/teleport/config.rb

Overview

The model for server in the Telfile.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, options) ⇒ Server

Returns a new instance of Server.



74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# File 'lib/teleport/config.rb', line 74

def initialize(name, options)
  raise "server name must be a string" if !name.is_a?(String)
  raise "server options must be a hash" if !options.is_a?(Hash)
  raise "server :role must be a sym" if options[:role] && !options[:role].is_a?(Symbol)

  @name, @options, @packages, @recipes = name, options, [], []

  # Packages
  if p = @options.delete(:packages)
    raise "server :packages must be an array" if !p.is_a?(Array)
    @packages = p
  end

  # Recipes
  if r = @options.delete(:recipes)
    raise "server :recipes must be an array" if !r.is_a?(Array)
    @recipes = r
  end
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



72
73
74
# File 'lib/teleport/config.rb', line 72

def name
  @name
end

#optionsObject (readonly)

Returns the value of attribute options.



72
73
74
# File 'lib/teleport/config.rb', line 72

def options
  @options
end

#packagesObject (readonly)

Returns the value of attribute packages.



72
73
74
# File 'lib/teleport/config.rb', line 72

def packages
  @packages
end

#recipesObject (readonly)

Returns the value of attribute recipes.



72
73
74
# File 'lib/teleport/config.rb', line 72

def recipes
  @recipes
end