[VOL-3800] : Random ping failures seen on alpha and iskratel ONUs during sanity test
- Process gem port deletes after any active flow deletes are completed.
  On certain models of ONUs it is seen that if flow deletes and gem port
  deletes are interleaved with each other and it leaves some stale configuration
  on the ONUs. As a result any further datapath related flow configuration
  will not work predictabily - there are some invalid packet taggings.

  Since during tech profile add, we setup the gemport, tcont before
  adding the flows, it is reasonable to remove flows before deleting
  the tech profile.

Change-Id: I62dbbf046f2ea5f9df5416f99060093b930bd448
4 files changed
tree: 47a1da5082b2c3f71b43f425add7baa18ac5f893
  1. .gitignore
  2. .gitreview
  3. .golangci.yml
  4. Makefile
  5. PM_Notes.md
  6. README.md
  7. VERSION
  8. cmd/
  9. docker/
  10. go.mod
  11. go.sum
  12. internal/
  13. pkg/
  14. templates/
  15. vendor/
README.md

How to Build the Golang based OpenONU Adapter

NOTE that this is a work in progress. A functional version is yet to come.

Working with Go Dependencies

This project uses Go Modules https://github.com/golang/go/wiki/Modules to manage dependencies. As a local best pratice this project also vendors the dependencies. If you need to update dependencies please follow the Go Modules best practices and also perform the following steps before committing a patch:

go mod tidy
go mod verify
go mod vendor

Building with a Local Copy of voltha-protos or voltha-lib-go

If you want to build/test using a local copy or voltha-protos or voltha-lib-go this can be accomplished by using the environment variables LOCAL_PROTOS and LOCAL_LIB_GO. These environment variables should be set to the filesystem path where the local source is located, e.g.

LOCAL\_PROTOS=$HOME/src/voltha-protos
LOCAL\_LIB\_GO=$HOME/src/voltha-lib-go

When these environment variables are set the vendored versions of these packages will be removed from the vendor directory and replaced by coping the files from the specified locations to the vendor directory. NOTE: this means that the files in the vendor directory are no longer what is in the git repository and it will take manual git intervention to put the original files back.