Sha256: e6d38c72232aa7b6256645c2d6101d5126e5c5949d8796753e8dcf533be0dc1d

Contents?: true

Size: 717 Bytes

Versions: 8

Compression:

Stored size: 717 Bytes

Contents

# frozen_string_literal: true

require_relative '../../../puppet/node/facts'
require_relative '../../../puppet/indirector/json'
require_relative '../../../puppet/indirector/fact_search'

class Puppet::Node::Facts::Json < Puppet::Indirector::JSON
  desc "Store client facts as flat files, serialized using JSON, or
    return deserialized facts from disk."

  include Puppet::Indirector::FactSearch

  def search(request)
    node_names = []
    Dir.glob(json_dir_path).each do |file|
      facts = load_json_from_file(file, '')
      if facts && node_matches?(facts, request.options)
        node_names << facts.name
      end
    end
    node_names
  end

  private

  def json_dir_path
    self.path("*")
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
puppet-8.5.1 lib/puppet/indirector/facts/json.rb
puppet-8.5.1-x86-mingw32 lib/puppet/indirector/facts/json.rb
puppet-8.5.1-x64-mingw32 lib/puppet/indirector/facts/json.rb
puppet-8.5.1-universal-darwin lib/puppet/indirector/facts/json.rb
puppet-8.5.0 lib/puppet/indirector/facts/json.rb
puppet-8.5.0-x86-mingw32 lib/puppet/indirector/facts/json.rb
puppet-8.5.0-x64-mingw32 lib/puppet/indirector/facts/json.rb
puppet-8.5.0-universal-darwin lib/puppet/indirector/facts/json.rb