# 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
*.project
*.pydevproject

# 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
netconf/protos/*.proto

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

# Vagrant logfile
*.log

# gitbook artifacts
docs/manuals/user/_book
docs/manual/user/*.pdf
docs/manuals/user/node_modules/
