The chefignore file is used to tell knife which cookbook files in the chef-repo should be ignored when uploading data to the Chef server. The type of data that should be ignored includes swap files, version control data, build output data, and so on. .
The chefignore file can be located in any subdirectory of a chef-repo: /, /cookbooks, /cookbooks/COOKBOOK_NAME/, roles, etc. It should contain sections similar to the following:
Example of chefignore
# Ignore editor swap files *~ *.sw[a-z] # Ignore top-level Subversion data */.svn/* # Ignore all files in a directory files/default/subdirectory/* files/default/subdirectory/** # OS generated files # ###################### .DS_Store Icon? nohup.out ehthumbs.db Thumbs.db # SASS # ######## .sass-cache # EDITORS # ########### \#* .#* *~ *.sw[a-z] *.bak REVISION TAGS* tmtags *_flymake.* *_flymake *.tmproj .project .settings mkmf.log ## COMPILED ## ############## a.out *.o *.pyc *.so *.com *.class *.dll *.exe */rdoc/ # Testing # ########### .watchr .rspec spec/* spec/fixtures/* test/* features/* examples/* Guardfile Procfile .kitchen* .rubocop.yml # SCM # ####### .git */.git .gitignore .gitmodules .gitconfig .gitattributes .svn */.bzr/* */.hg/* */.svn/* # Berkshelf # ############# Berksfile Berksfile.lock cookbooks/* tmp # Cookbooks # ############# CONTRIBUTING* CHANGELOG* TESTING* # Strainer # ############ Colanderfile Strainerfile .colander .strainer # Vagrant # ########### .vagrant Vagrantfile # Travis # ########## .travis.yml
Reference
https://docs.chef.io/chef_repo.html#chefignore-files