diff --git a/service/lib/agama/product_reader.rb b/service/lib/agama/product_reader.rb index 6f07cab05b..453e9a23b6 100644 --- a/service/lib/agama/product_reader.rb +++ b/service/lib/agama/product_reader.rb @@ -43,11 +43,13 @@ def initialize(logger: nil) @logger = logger || ::Logger.new($stdout) end + # Loads products definitions + # + # It supports a product per file or multiple products in a single file. def load_products glob = File.join(default_path, "*.{yaml,yml}") Dir.glob(glob).each_with_object([]) do |path, result| - # support also single product file - products = load_file(path) + products = YAML.safe_load_file(path) products = [products] unless products.is_a?(Array) result.concat(products) end @@ -58,9 +60,5 @@ def load_products def default_path Dir.exist?(GIT_DIR) ? GIT_PATH : SYSTEM_PATH end - - def load_file(path) - YAML.safe_load(File.read(path.to_s)) - end end end