[VOL-1349] EPON OLT adapter (package A)
Change-Id: Id110f270b0acfb7fbda0ff79ff85bb8182af4b92
diff --git a/Makefile b/Makefile
index bef775a..97af1eb 100644
--- a/Makefile
+++ b/Makefile
@@ -29,7 +29,7 @@
DOCKER_REGISTRY ?=
DOCKER_REPOSITORY ?=
DOCKER_TAG ?= ${VERSION}
-ADAPTER_IMAGENAME := ${DOCKER_REGISTRY}${DOCKER_REPOSITORY}voltha-eponolt-adapter:1.0.0
+ADAPTER_IMAGENAME := ${DOCKER_REGISTRY}${DOCKER_REPOSITORY}voltha-eponolt-adapter:1.1.0
TYPE ?= minimal
## Docker labels. Only set ref and commit date if committed
@@ -117,7 +117,7 @@
test: ## Run unit tests
@mkdir -p ./tests/results
- @${GO} test -mod=vendor -v -coverprofile ./tests/results/go-test-coverage.out -covermode count ./... 2>&1 | tee ./tests/results/go-test-results.out ;\
+ @${GO} test -mod=vendor -timeout 60m -v -coverprofile ./tests/results/go-test-coverage.out -covermode count ./... 2>&1 | tee ./tests/results/go-test-results.out ;\
RETURN=$$? ;\
${GO_JUNIT_REPORT} < ./tests/results/go-test-results.out > ./tests/results/go-test-results.xml ;\
${GOCOVER_COBERTURA} < ./tests/results/go-test-coverage.out > ./tests/results/go-test-coverage.xml ;\
diff --git a/README.md b/README.md
index e434115..e53a41d 100644
--- a/README.md
+++ b/README.md
@@ -1,67 +1,66 @@
-# EPON OLT adapter
-
-The EPON OLT adapter connects the VOLTHA
-core to an OLT device
-running the OLT hardware to support IEEE standard PON (SIEPON* package B).
-
-*IEEE P1904.1 Service Interoperability in Ethernet Passive Optical Network
-> NOTE: This adapter has been verified with the following combinations:
-> * [VOLTHA 2.5](https://docs.voltha.org/voltha-2.5/release_notes/voltha_2.5.html)
-> * Tibit MicroPlug OLT (Firmware R1.3.0)
-> * [Technology profile for EPON](https://github.com/opencord/voltha-lib-go/blob/master/pkg/techprofile/SingleQueueEponProfile.json)
-> * MD5 is implemented as IEEE802.1X authentication.
-
-## Development `make` targets
-
-The `Makefile` contains many commands that are useful in development:
-
-```
-build : Alias for 'docker build'
-clean : Removes any local filesystem artifacts generated by a build
-distclean : Removes any local filesystem artifacts generated by a build or test run
-docker-build-profile : Build eponolt adapter docker image with profiling enabled
-docker-build : Build eponolt adapter docker image
-docker-kind-load : Load docker images into a KinD cluster
-docker-push : Push the docker images to an external repository
-help : Print help for each Makefile target
-lint-dockerfile : Perform static analysis on Dockerfile
-lint-mod : Verify the Go dependencies
-lint : Run all lint targets
-local-lib-go : Copies a local version of the voltha-lib-go dependency into the vendor directory
-local-protos : Copies a local version of the voltha-protos dependency into the vendor directory
-mod-update : Update go mod files
-sca : Runs static code analysis with the golangci-lint tool
-test : Run unit tests
-```
-
-Some highlights:
-
-- It's recommended that you run the `lint`, `sca`, and `test` targets before
- submitting code changes.
-
-- The `docker-*` targets for building and pushing Docker images depend on the
- variables `DOCKER_REGISTRY`, `DOCKER_REPOSITORY`, and `DOCKER_TAG` as
- [described in the CORD
- documentation](https://guide.opencord.org/developer/test_release_software.html#publish-docker-container-images-to-public-dockerhub-job-docker-publish)
-
-- If you make changes the dependencies in the `go.mod` file, you will need to
- run `make mod-update` to update the `go.sum` and `vendor` directory.
-
-### Building with a Local Copy of `voltha-protos` or `voltha-lib-go`
-
-If you want to build/test using a local copy of the `voltha-protos` or
-`voltha-lib-go` libraries 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.:
-
-```bash
-export LOCAL_PROTOS=/path/to/voltha-protos
-export LOCAL_LIB_GO=/path/to/voltha-lib-go
-```
-
-Then run `make local-protos` and/or `make local-lib-go` as is appropriate to
-copy them into the `vendor` directory.
-
-> NOTE: That the files in the `vendor` directory are no longer what is in the
-> most recent commit, and it will take manual `git` intervention to put the
-> original files back.
+# EPON OLT adapter
+
+The EPON OLT adapter connects the VOLTHA
+core to an OLT device
+running the OLT hardware to support IEEE standard PON (SIEPON* package A and B).
+
+*IEEE P1904.1 Service Interoperability in Ethernet Passive Optical Network
+> NOTE: This adapter has been verified with the following combinations:
+> * [VOLTHA 2.5](https://docs.voltha.org/voltha-2.5/release_notes/voltha_2.5.html)
+> * Tibit MicroPlug OLT (Firmware R1.3.X-XXX)
+> * [Technology profile for EPON](https://github.com/opencord/voltha-lib-go/blob/master/pkg/techprofile/SingleQueueEponProfile.json)
+
+## Development `make` targets
+
+The `Makefile` contains many commands that are useful in development:
+
+```
+build : Alias for 'docker build'
+clean : Removes any local filesystem artifacts generated by a build
+distclean : Removes any local filesystem artifacts generated by a build or test run
+docker-build-profile : Build eponolt adapter docker image with profiling enabled
+docker-build : Build eponolt adapter docker image
+docker-kind-load : Load docker images into a KinD cluster
+docker-push : Push the docker images to an external repository
+help : Print help for each Makefile target
+lint-dockerfile : Perform static analysis on Dockerfile
+lint-mod : Verify the Go dependencies
+lint : Run all lint targets
+local-lib-go : Copies a local version of the voltha-lib-go dependency into the vendor directory
+local-protos : Copies a local version of the voltha-protos dependency into the vendor directory
+mod-update : Update go mod files
+sca : Runs static code analysis with the golangci-lint tool
+test : Run unit tests
+```
+
+Some highlights:
+
+- It's recommended that you run the `lint`, `sca`, and `test` targets before
+ submitting code changes.
+
+- The `docker-*` targets for building and pushing Docker images depend on the
+ variables `DOCKER_REGISTRY`, `DOCKER_REPOSITORY`, and `DOCKER_TAG` as
+ [described in the CORD
+ documentation](https://guide.opencord.org/developer/test_release_software.html#publish-docker-container-images-to-public-dockerhub-job-docker-publish)
+
+- If you make changes the dependencies in the `go.mod` file, you will need to
+ run `make mod-update` to update the `go.sum` and `vendor` directory.
+
+### Building with a Local Copy of `voltha-protos` or `voltha-lib-go`
+
+If you want to build/test using a local copy of the `voltha-protos` or
+`voltha-lib-go` libraries 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.:
+
+```bash
+export LOCAL_PROTOS=/path/to/voltha-protos
+export LOCAL_LIB_GO=/path/to/voltha-lib-go
+```
+
+Then run `make local-protos` and/or `make local-lib-go` as is appropriate to
+copy them into the `vendor` directory.
+
+> NOTE: That the files in the `vendor` directory are no longer what is in the
+> most recent commit, and it will take manual `git` intervention to put the
+> original files back.
\ No newline at end of file
diff --git a/VERSION b/VERSION
index 3eefcb9..9084fa2 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.0.0
+1.1.0
diff --git a/internal/pkg/core/l2oam/msg_after_keep_alive.go b/internal/pkg/core/l2oam/msg_after_keep_alive.go
index 4772e11..f93ee5c 100644
--- a/internal/pkg/core/l2oam/msg_after_keep_alive.go
+++ b/internal/pkg/core/l2oam/msg_after_keep_alive.go
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
+
package l2oam
import (
diff --git a/internal/pkg/core/l2oam/msg_generic_action_create_req.go b/internal/pkg/core/l2oam/msg_generic_action_create_req.go
index 766d1a1..8e99a75 100644
--- a/internal/pkg/core/l2oam/msg_generic_action_create_req.go
+++ b/internal/pkg/core/l2oam/msg_generic_action_create_req.go
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
+
package l2oam
import (
diff --git a/internal/pkg/core/l2oam/msg_pcscompu_tibitcom.go b/internal/pkg/core/l2oam/msg_pcscompu_tibitcom.go
index 80e7d18..5c1b212 100644
--- a/internal/pkg/core/l2oam/msg_pcscompu_tibitcom.go
+++ b/internal/pkg/core/l2oam/msg_pcscompu_tibitcom.go
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
+
package l2oam
import (
diff --git a/internal/pkg/core/l2oam/msg_set_request_saved.go b/internal/pkg/core/l2oam/msg_set_request_saved.go
index 6869a79..5c4f190 100644
--- a/internal/pkg/core/l2oam/msg_set_request_saved.go
+++ b/internal/pkg/core/l2oam/msg_set_request_saved.go
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
+
package l2oam
import (
diff --git a/internal/pkg/core/l2oam_device.go b/internal/pkg/core/l2oam_device.go
index 76b548f..6e1455b 100644
--- a/internal/pkg/core/l2oam_device.go
+++ b/internal/pkg/core/l2oam_device.go
@@ -3314,9 +3314,10 @@
if (l2oam.OnuPkgType == l2oam.OnuPkgTypeA) && (packet.IsOnuPkgA()) {
logger.Info(context.Background(), fmt.Sprintf("[%s] recieveKeepAlive() Pkg type A.", d.getDeviceName()))
if d.keepAliveResponse != nil {
- d.keepAliveResponse <- "PkgTypeError"
+ //d.keepAliveResponse <- "PkgTypeError"
+ d.keepAliveResponse <- "success"
}
- // d.Base.recieveKeepAlive(etherPacket)
+ d.Base.recieveKeepAlive(etherPacket)
d.PkgType = l2oam.OnuPkgTypeA
} else if (l2oam.OnuPkgType == l2oam.OnuPkgTypeB) && (packet.IsOnuPkgB()) {
logger.Info(context.Background(), fmt.Sprintf("[%s] recieveKeepAlive() Pkg type B.", d.getDeviceName()))
diff --git a/internal/pkg/core/l2oam_oltctl.go b/internal/pkg/core/l2oam_oltctl.go
index 10f9f76..4126ee2 100644
--- a/internal/pkg/core/l2oam_oltctl.go
+++ b/internal/pkg/core/l2oam_oltctl.go
@@ -13,6 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
package core
import (