class Facter::Resolvers::Solaris::Mountpoints
Private Class Methods
exclude_auto_home_mounts!()
click to toggle source
# File lib/facter/resolvers/solaris/mountpoints.rb, line 17 def exclude_auto_home_mounts! @mounts.reject! do |mount| parent = mount[:path].rpartition('/').first @auto_home_paths.include?(parent) end end
post_resolve(fact_name, _options)
click to toggle source
# File lib/facter/resolvers/solaris/mountpoints.rb, line 13 def post_resolve(fact_name, _options) @fact_list.fetch(fact_name) { read_mounts(fact_name) } end
read_mounts(fact_name)
click to toggle source
# File lib/facter/resolvers/solaris/mountpoints.rb, line 24 def read_mounts(fact_name) # rubocop:disable Metrics/AbcSize, Metrics/MethodLength @mounts = [] @auto_home_paths = [] Facter::Util::Resolvers::FilesystemHelper.read_mountpoints.each do |fs| if fs.name == 'auto_home' @auto_home_paths << fs.mount_point next end next if fs.mount_type == 'autofs' device = fs.name filesystem = fs.mount_type path = fs.mount_point options = fs.options.split(',').map(&:strip) stats = Facter::Util::Resolvers::FilesystemHelper.read_mountpoint_stats(path) size_bytes = stats.bytes_total.abs available_bytes = stats.bytes_available.abs used_bytes = stats.bytes_used.abs total_bytes = used_bytes + available_bytes capacity = Facter::Util::Resolvers::FilesystemHelper.compute_capacity(used_bytes, total_bytes) size = Facter::Util::Facts::UnitConverter.bytes_to_human_readable(size_bytes) available = Facter::Util::Facts::UnitConverter.bytes_to_human_readable(available_bytes) used = Facter::Util::Facts::UnitConverter.bytes_to_human_readable(used_bytes) @mounts << Hash[Facter::Util::Resolvers::FilesystemHelper::MOUNT_KEYS .zip(Facter::Util::Resolvers::FilesystemHelper::MOUNT_KEYS .map { |v| binding.local_variable_get(v) })] end exclude_auto_home_mounts! @fact_list[:mountpoints] = @mounts @fact_list[fact_name] end