# class Chef::Cookbook::Chefignore

### Constants

COMMENTS_AND_WHITESPACE

### Attributes

ignores[R]

### Public Class Methods

new(ignore_file_or_repo) click to toggle source

    # File lib/chef/cookbook/chefignore.rb, line 27
    def initialize(ignore_file_or_repo)
      # Check the 'ignore_file_or_repo' path first and then look in the parent directory
      # to handle both the chef repo cookbook layout and a standalone cookbook
      @ignore_file = find_ignore_file(ignore_file_or_repo)
      @ignore_file = find_ignore_file(File.dirname(ignore_file_or_repo)) unless readable_file_or_symlink?(@ignore_file)

      @ignores = parse_ignore_file
    end

### Public Instance Methods

ignored?(file_name) click to toggle source

    # File lib/chef/cookbook/chefignore.rb, line 42
    def ignored?(file_name)
      @ignores.any? {|glob| File.fnmatch?(glob, file_name)}
    end

remove_ignores_from(file_list) click to toggle source

    # File lib/chef/cookbook/chefignore.rb, line 36
    def remove_ignores_from(file_list)
      Array(file_list).inject([]) do |unignored, file|
        ignored?(file) ? unignored : unignored << file
      end
    end