Sha256: bba64f2f5b781f5cc1643e3bc6ffb886b233236ca58b4a45abd8fad178344179

Contents?: true

Size: 889 Bytes

Versions: 42

Compression:

Stored size: 889 Bytes

Contents

# This file is loaded by the autoloader, and it does not find the data function support unless required relative
#
require 'yaml'

module Puppet::DataProviders
  class YamlDataProviderFactory < Puppet::Plugins::DataProviders::FileBasedDataProviderFactory
    def create(name, paths, parent_data_provider)
      YamlDataProvider.new(name, paths, parent_data_provider)
    end

    def path_extension
      '.yaml'
    end
  end

  class YamlDataProvider < Puppet::Plugins::DataProviders::PathBasedDataProvider
    def initialize_data(path, lookup_invocation)
      data = YAML.load_file(path)
      HieraConfig.symkeys_to_string(data.nil? ? {} : data)
    rescue YAML::SyntaxError => ex
      # Psych errors includes the absolute path to the file, so no need to add that
      # to the message
      raise Puppet::DataBinding::LookupError, "Unable to parse #{ex.message}"
    end
  end
end

Version data entries

42 entries across 42 versions & 2 rubygems

Version Path
puppet-retrospec-1.5.0 vendor/gems/puppet-4.5.2/lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-retrospec-1.4.1 vendor/gems/puppet-4.5.2/lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-retrospec-1.4.0 vendor/gems/puppet-4.5.2/lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-retrospec-1.3.2 vendor/gems/puppet-4.5.2/lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-retrospec-1.3.1 vendor/gems/puppet-4.5.2/lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-retrospec-1.3.0 vendor/gems/puppet-4.5.2/lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.7.1 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.7.1-x86-mingw32 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.7.1-x64-mingw32 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.7.1-universal-darwin lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-retrospec-1.2.1 vendor/gems/puppet-4.5.2/lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-retrospec-1.2.0 vendor/gems/puppet-4.5.2/lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.7.0 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.7.0-x86-mingw32 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.7.0-x64-mingw32 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.7.0-universal-darwin lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.6.2 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.6.2-x86-mingw32 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.6.2-x64-mingw32 lib/puppet/data_providers/yaml_data_provider_factory.rb
puppet-4.6.2-universal-darwin lib/puppet/data_providers/yaml_data_provider_factory.rb