Class: Jendle::Plugin
- Inherits:
-
Object
- Object
- Jendle::Plugin
- Defined in:
- lib/jendle/plugin.rb
Instance Method Summary collapse
- #apply(options) ⇒ Object
- #apply_proc(plugin) ⇒ Object
- #export(options) ⇒ Object
-
#initialize(core) ⇒ Plugin
constructor
A new instance of Plugin.
- #restart ⇒ Object
- #restore(options, source_config) ⇒ Object
Constructor Details
#initialize(core) ⇒ Plugin
Returns a new instance of Plugin.
4 5 6 7 8 |
# File 'lib/jendle/plugin.rb', line 4 def initialize(core) @core = core @client = core.client @logger = core.logger end |
Instance Method Details
#apply(options) ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/jendle/plugin.rb', line 33 def apply() File.read([:file]).lines.each do |plugin| plugin = plugin.strip apply_proc(plugin) end restart end |
#apply_proc(plugin) ⇒ Object
41 42 43 44 45 46 47 48 |
# File 'lib/jendle/plugin.rb', line 41 def apply_proc(plugin) if !(@client.plugin.list_installed.key?(plugin)) @client.plugin.install(plugin) sleep 3 else @logger.info("already installed #{plugin}") end end |
#export(options) ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/jendle/plugin.rb', line 23 def export() plugins = @client.plugin.list_installed File.open([:output],'w:utf-8') { |file| plugins.each do |k, v| file.puts k end } @logger.info("exported => #{[:output]}") end |
#restart ⇒ Object
50 51 52 53 54 55 |
# File 'lib/jendle/plugin.rb', line 50 def restart if @client.plugin.restart_required? @logger.info("restarting...") @client.system.restart(true) end end |
#restore(options, source_config) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/jendle/plugin.rb', line 10 def restore(, source_config) source_client = @core.get_client( source_config['server_ip'], source_config['username'], source_config['password'] ) plugins = source_client.plugin.list_installed plugins.each do |k, v| apply_proc(k) end restart end |