Class: LumiaServer::Server
- Inherits:
-
Object
- Object
- LumiaServer::Server
- Defined in:
- lib/lumia-server/server.rb
Instance Attribute Summary collapse
-
#mods ⇒ Object
readonly
Returns the value of attribute mods.
-
#platform ⇒ Object
readonly
Returns the value of attribute platform.
-
#secrets ⇒ Object
readonly
Returns the value of attribute secrets.
Instance Method Summary collapse
- #build_secrets ⇒ Object
- #info ⇒ Object
-
#initialize(data, server_yaml) ⇒ Server
constructor
A new instance of Server.
- #install_mods ⇒ Object
- #install_platform ⇒ Object
Constructor Details
#initialize(data, server_yaml) ⇒ Server
Returns a new instance of Server.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/lumia-server/server.rb', line 15 def initialize(data, server_yaml) @platform = Platform.new(data['platform'], server_yaml) @mods = [] if data.key?('mods') data['mods'].each do |mod| @mods << Plugin.new(mod, server_yaml) end end @secrets = [] if data.key?('secrets') data['secrets'].each do |secret| @secrets << Secret.new(File.join(Dir.home, '.lumia'), secret) end end end |
Instance Attribute Details
#mods ⇒ Object (readonly)
Returns the value of attribute mods.
12 13 14 |
# File 'lib/lumia-server/server.rb', line 12 def mods @mods end |
#platform ⇒ Object (readonly)
Returns the value of attribute platform.
11 12 13 |
# File 'lib/lumia-server/server.rb', line 11 def platform @platform end |
#secrets ⇒ Object (readonly)
Returns the value of attribute secrets.
13 14 15 |
# File 'lib/lumia-server/server.rb', line 13 def secrets @secrets end |
Instance Method Details
#build_secrets ⇒ Object
58 59 60 61 62 |
# File 'lib/lumia-server/server.rb', line 58 def build_secrets secrets.each do |secret| secret.build end end |
#info ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/lumia-server/server.rb', line 31 def info puts " " puts "Server Information:" puts "-------------------" puts "Platform: #{print(platform.name, 'Unknown')} (#{print(platform.version, '0.0.0')})" puts "Plugins (#{mods.length}):" mods.each do |mod| puts " - #{print(mod.name, 'Unknown')} (#{print(mod.version, '0.0.0')})" end puts "Secrets (#{secrets.length}):" secrets.each do |secret| puts " - #{secret.source}" end puts " " end |
#install_mods ⇒ Object
52 53 54 55 56 |
# File 'lib/lumia-server/server.rb', line 52 def install_mods mods.each do |mod| mod.install end end |
#install_platform ⇒ Object
47 48 49 50 |
# File 'lib/lumia-server/server.rb', line 47 def install_platform FileUtils.mkdir_p 'build/plugins' platform.install end |