VOL-1381 and VOL-1091 Add feature to collect PMmetrics of OLT, this will collect Tx and Rx and posts to kafka. This commit is also related to changes of commit 72b25abd4e804596413558ef10f098c2262dd65d voltha-go
Updated review comments

Updated with code optimization
Updated with dep files
Updated fix for sanity test
Updated with gomod changes

Change-Id: I899e855812a6eda812c64664a9154321cdb16876
34 files changed
tree: 21f1e1ba2aeefc4acf1ac1b1a3426171681b8339
  1. .gitignore
  2. .gitreview
  3. .golangci.yml
  4. Makefile
  5. README.md
  6. VERSION
  7. adaptercore/
  8. compose/
  9. config/
  10. docker/
  11. go.mod
  12. go.sum
  13. main.go
  14. main_test.go
  15. mocks/
  16. vendor/
README.md

How to Build the Golang based OpenOLT Adapter

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.