# Don't add patterns to exclude files created by preferred personal tools
# (editors, IDEs, your operating system itself even). These should instead be
# maintained outside the repository, for example in a ~/.gitignore file added
# with:
#
# git config --global core.excludesfile '~/.gitignore'
AUTHORS
ChangeLog
*.pyc
__pycache__/
etc/accounts.yaml
etc/*.conf
etc/tempest.conf.sample
include/swift_objects/swift_small
include/swift_objects/swift_medium
include/swift_objects/swift_large
*.log
*.swp
*.swo
*.egg*
.tox
.venv
dist
build
.testrepository
.stestr
.idea
.project
.pydevproject
.coverage*
!.coveragerc
cover/
doc/source/_static/tempest.conf.sample
doc/source/plugins/plugin-registry.rst

# Files created by releasenotes build
releasenotes/build
