Module: Installation::Console::Plugins
- Extended by:
- Yast::Logger
- Defined in:
- src/lib/installation/console/plugins.rb,
src/lib/installation/console/plugins/console_button.rb
Overview
helper module for loading the console plugins
Defined Under Namespace
Classes: ConsoleButton, ConsoleButtonPlugin
Class Method Summary collapse
-
.load_plugins ⇒ Object
load all console plugins from lib/installation/console/plugins subdirectory.
Class Method Details
.load_plugins ⇒ Object
load all console plugins from lib/installation/console/plugins subdirectory
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'src/lib/installation/console/plugins.rb', line 24 def self.load_plugins # use Yast.y2paths to honor the Y2DIR setting plugin_paths = Yast.y2paths.map { |p| File.join(p, "lib/installation/console/plugins") } plugin_paths.select { |p| File.directory?(p) } plugins = plugin_paths.each_with_object([]) do |p, obj| # find all *.rb files obj.concat(Dir[File.join(p, "*.rb")]) end log.debug "All found plugins: #{plugins.inspect}" # remove the duplicates, this ensures the Y2DIR precedence plugins.uniq! do |f| File.basename(f) end plugins.each do |p| log.info "Loading plugin #{p}" require p end end |