# Gradle
.gradle
buildSrc/build

# Python
*.pyc

# PyCharm
.idea
exportToHTML

# Emacs
*~
.#*

# Vagrant
.vagrant
*.box

# Ansible
ansible/*.retry

# Virtualenv
venv
venv-darwin
venv-linux

# Temp data dir for testing
tmp

# Any vi swap files
*.swp

# Protobuf output files
voltha/**/*.desc
**/*_pb2.py
**/*_pb2_grpc.py

# Editors
*.bak

# Docker
.docker-base-built

# Mac stuff
.DS_Store
**/.DS_Store

# Ignore chameleon subdirectory
chameleon

# Companion git repos used in tests
loxigen
mininet
oftest
olt-oftest
pox
openflow

# Generated docs
**/*.pdf
docs/pon-requirements/*.svg

# Files copied over during make
ofagent/protos/third_party/google
ponsim/protos/third_party/google

# Voltha CLI hostory files
.voltha_cli_history
**/.voltha_cli_history

# Vagrant logfile
*.log
