Sha256: bd34a55c7a8841604936805f93966b10f6a91c95a8fe2f98703cc60b9e3701fd

Contents?: true

Size: 744 Bytes

Versions: 103

Compression:

Stored size: 744 Bytes

Contents

require "inspec/resources/file"

module FileReader
  def read_file_content(path, allow_empty = false)
    # these are currently ResourceSkipped to maintain consistency with the resource
    # pre-refactor (which used skip_resource). These should likely be changed to
    # ResourceFailed during a major version bump.
    file = inspec.file(path)
    unless file.file?
      raise Inspec::Exceptions::ResourceSkipped, "Can't find file: #{path}"
    end

    raw_content = file.content
    if raw_content.nil?
      raise Inspec::Exceptions::ResourceSkipped, "Can't read file: #{path}"
    end

    if !allow_empty && raw_content.empty?
      raise Inspec::Exceptions::ResourceSkipped, "File is empty: #{path}"
    end

    raw_content
  end
end

Version data entries

103 entries across 103 versions & 2 rubygems

Version Path
inspec-4.7.24 lib/inspec/utils/file_reader.rb
inspec-core-4.7.18 lib/inspec/utils/file_reader.rb
inspec-4.7.18 lib/inspec/utils/file_reader.rb