Class: Hedra::PluginCLI

Inherits:
Thor
  • Object
show all
Defined in:
lib/hedra/cli.rb

Instance Method Summary collapse

Instance Method Details

#install(path) ⇒ Object



25
26
27
28
29
30
31
32
# File 'lib/hedra/cli.rb', line 25

def install(path)
  manager = PluginManager.new
  manager.install(path)
  puts "Plugin installed: #{path}"
rescue StandardError => e
  warn "Failed to install plugin: #{e.message}"
  exit 1
end

#listObject



12
13
14
15
16
17
18
19
20
21
22
# File 'lib/hedra/cli.rb', line 12

def list
  manager = PluginManager.new
  plugins = manager.list_plugins

  if plugins.empty?
    puts 'No plugins installed.'
  else
    puts 'Installed plugins:'
    plugins.each { |p| puts "  - #{p}" }
  end
end

#remove(name) ⇒ Object



35
36
37
38
39
40
41
42
# File 'lib/hedra/cli.rb', line 35

def remove(name)
  manager = PluginManager.new
  manager.remove(name)
  puts "Plugin removed: #{name}"
rescue StandardError => e
  warn "Failed to remove plugin: #{e.message}"
  exit 1
end