Sha256: e1b62725632d806dbcd7f7d1fddd354ae54db7c0b8ccf7947443e7bca953a46e
Contents?: true
Size: 1.14 KB
Versions: 2
Compression:
Stored size: 1.14 KB
Contents
# frozen_string_literal: true module Facter module Resolvers class Ssh < BaseResolver @log = Facter::Log.new(self) init_resolver FILE_NAMES = %w[ssh_host_rsa_key.pub ssh_host_dsa_key.pub ssh_host_ecdsa_key.pub ssh_host_ed25519_key.pub].freeze FILE_PATHS = %w[/etc/ssh /usr/local/etc/ssh /etc /usr/local/etc /etc/opt/ssh].freeze class << self private def post_resolve(fact_name) @fact_list.fetch(fact_name) { retrieve_info(fact_name) } end def retrieve_info(fact_name) ssh_list = [] FILE_PATHS.each do |file_path| next unless File.directory?(file_path) FILE_NAMES.each do |file_name| file_content = Facter::Util::FileHelper.safe_read(File.join(file_path, file_name), nil) next unless file_content key_type, key = file_content.split(' ') ssh = Facter::Util::Resolvers::SshHelper.create_ssh(key_type, key) ssh_list << ssh if ssh end end @fact_list[:ssh] = ssh_list @fact_list[fact_name] end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
facter-4.0.49 | lib/facter/resolvers/ssh.rb |
facter-4.0.48 | lib/facter/resolvers/ssh.rb |