Clone this repo:

Branches

  1. 3999210 [VOL-4308] Deprecating repo due to stale state by Andrea Campanella · 3 years, 3 months ago master
  2. 20b1efc Adding Code of Conduct by Matteo Scandolo · 5 years ago
  3. 379ae25 seba-365 - implemented dep by Don Newton · 6 years ago
  4. 276cd1f SEBA-349 GRPC added xos proto files by Don Newton · 6 years ago
  5. 1652067 seba-365 tweaking to match mongodb driver refactor by Don Newton · 6 years ago

DEPRECATED

No Maintenance Intended

This codebase is tale and not used anymore in SEBA/VOLTHA projects, thus is going to be removed after the VOLTHA 2.8 release LTS support ends in December 2022.

AbstractOLT

AbstractOLT provides a mapping service from AT&T's, and potentially other's, provisioning platform to SEBA/Voltha. It presents a facade of the hardware that resembles a 16 slot / with 16 PON ports each. Internally it maps PON ports on the abstractOLT to PON ports on physical OLT chasssis.

Dependencies

go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway
go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger
go get -u github.com/golang/protobuf/protoc-gen-go

Retrieving code

go get gerrit.opencord.org/abstract-olt/cmd/AbstractOLT

Makefile

make clean # clears all generated and compiler output.
make dep # pulls any go dependencies.
make api # generates grpc code and swagger files
make server # compiles AbstractOLT into bin directory
make client # compiles a test client which exercises some of the server api functions
make all # builds everything
make docker # builds a docker container with the AbstractOLT and client in /app

Certificates

Before running you will need to create a cert directory under bin and generate ssl certificates

cd bin
mkdir cert
openssl genrsa -out cert/server.key 2048
openssl req -new -x509 -sha256 -key cert/server.key -out cert/server.crt -days 3650
openssl req -new -sha256 -key cert/server.key -out cert/server.csr
openssl x509 -req -sha256 -in cert/server.csr -signkey cert/server.key -out cert/server.crt -days 3650

Running

cd bin
./AbstractOLT # or
./AbstractOLT -d # for debug logging

This will create/append an AbstractOLT.log file in the current directory that will contain some runtime information