COPY --from=ubuntu /opt/E2Manager/main /opt/E2Manager/main
COPY --from=ubuntu /opt/E2Manager/resources/configuration.yaml /opt/E2Manager/resources/configuration.yaml
COPY --from=ubuntu /opt/E2Manager/resources/rmr.verbose /tmp/rmr.verbose
-COPY --from=ubuntu /usr/local/lib/librmr_si.so.3 /usr/local/lib/librmr_si.so.3
+COPY --from=ubuntu /usr/local/lib/librmr_si.so.4 /usr/local/lib/librmr_si.so.4
WORKDIR /opt/E2Manager
ENV LD_LIBRARY_PATH=/usr/local/lib \
echo "--> e2mgr-build-ubuntu.sh"
# Install RMR from deb packages at packagecloud.io
-rmr=rmr_3.8.2_amd64.deb
+rmr=rmr_4.0.2_amd64.deb
wget --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/$rmr/download.deb
sudo dpkg -i $rmr
rm $rmr
-rmrdev=rmr-dev_3.8.2_amd64.deb
+rmrdev=rmr-dev_4.0.2_amd64.deb
wget --content-disposition https://packagecloud.io/o-ran-sc/release/packages/debian/stretch/$rmrdev/download.deb
sudo dpkg -i $rmrdev
rm $rmrdev
# The Jenkins job requires a tag to build the Docker image.
# Global-JJB script assumes this file is in the repo root.
---
-tag: 4.4.9
+tag: 4.4.10
package converters
-
+/*
// #cgo CFLAGS: -I../3rdparty/asn1codec/inc/ -I../3rdparty/asn1codec/e2ap_engine/
// #cgo LDFLAGS: -L ../3rdparty/asn1codec/lib/ -L../3rdparty/asn1codec/e2ap_engine/ -le2ap_codec -lasncodec
// #include <asn1codec_utils.h>
return nil
}
+*/
\ No newline at end of file
package converters
-import (
- "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
-)
-
-/*
-Test permutations of eNB Load Information to protobuf
-*/
-
-type LoadInformationTestCaseName string
-
-const LoadTimestamp = 1257894000000000000
-
-const (
- SingleCellWithCellIdOnly LoadInformationTestCaseName = "SINGLE CELL WITH CELL ID ONLY" //base
- SingleCellPartiallyPopulated LoadInformationTestCaseName = "SINGLE CELL PARTIALLY POPULATED" //8
- TwoCellsFullInfo LoadInformationTestCaseName = "TWO CELLS FULLY POPULATED" //13
-)
-
-type LoadInformationTestCase struct {
- loadInformationTestCaseName LoadInformationTestCaseName
- packedUperPdu string
- packedAperPdu string
- expectedLoadInformation *entities.RanLoadInformation
-}
-
-var testCases = []LoadInformationTestCase{
- {
- loadInformationTestCaseName: SingleCellWithCellIdOnly,
- packedAperPdu: "000240140000010006400d00000740080002f8290007ab50",
- packedUperPdu: "004898000400190d0000074200017c148003d5a80000",
- expectedLoadInformation: GenerateSingleCellWithCellIdOnlyRanLoadInformation(),
- },
- {
- loadInformationTestCaseName: SingleCellPartiallyPopulated,
- packedAperPdu: "", //TODO: populate and USE
- packedUperPdu: "004b380004001961000007571e017c148003d5a8205000017c180003d5a875555003331420008007a85801f07c1f07c41f07c1e07801f2020000c680b0003220664102800d8908020000be0c4001ead4016e007ab50100002f8320067ab5005b8c1ead5070190c000000",
- expectedLoadInformation: GenerateSingleCellPartiallyPopulatedLoadInformation(),
- },
- {
- loadInformationTestCaseName: TwoCellsFullInfo,
- packedAperPdu: "", //TODO: populate and USE
- packedUperPdu: "004c07080004001980da0100075bde017c148003d5a8205000017c180003d5a875555403331420000012883a0003547400cd20002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be0c4001ead4016e007ab50100002f8320067ab5005b8c1ead5070190c00001d637805f220000f56a081400005f020000f56a1d555400ccc508002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be044001ead4016e007ab50100002f8120067ab5005b8c1ead5070190c00000",
- expectedLoadInformation: GenerateTwoCellsFullyPopulatedRanLoadInformation(),
- },
-}
+//import (
+// "gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
+//)
+//
+///*
+//Test permutations of eNB Load Information to protobuf
+//*/
+//
+//type LoadInformationTestCaseName string
+//
+//const LoadTimestamp = 1257894000000000000
+//
+//const (
+// SingleCellWithCellIdOnly LoadInformationTestCaseName = "SINGLE CELL WITH CELL ID ONLY" //base
+// SingleCellPartiallyPopulated LoadInformationTestCaseName = "SINGLE CELL PARTIALLY POPULATED" //8
+// TwoCellsFullInfo LoadInformationTestCaseName = "TWO CELLS FULLY POPULATED" //13
+//)
+//
+//type LoadInformationTestCase struct {
+// loadInformationTestCaseName LoadInformationTestCaseName
+// packedUperPdu string
+// packedAperPdu string
+// expectedLoadInformation *entities.RanLoadInformation
+//}
+//
+//var testCases = []LoadInformationTestCase{
+// {
+// loadInformationTestCaseName: SingleCellWithCellIdOnly,
+// packedAperPdu: "000240140000010006400d00000740080002f8290007ab50",
+// packedUperPdu: "004898000400190d0000074200017c148003d5a80000",
+// expectedLoadInformation: GenerateSingleCellWithCellIdOnlyRanLoadInformation(),
+// },
+// {
+// loadInformationTestCaseName: SingleCellPartiallyPopulated,
+// packedAperPdu: "", //TODO: populate and USE
+// packedUperPdu: "004b380004001961000007571e017c148003d5a8205000017c180003d5a875555003331420008007a85801f07c1f07c41f07c1e07801f2020000c680b0003220664102800d8908020000be0c4001ead4016e007ab50100002f8320067ab5005b8c1ead5070190c000000",
+// expectedLoadInformation: GenerateSingleCellPartiallyPopulatedLoadInformation(),
+// },
+// {
+// loadInformationTestCaseName: TwoCellsFullInfo,
+// packedAperPdu: "", //TODO: populate and USE
+// packedUperPdu: "004c07080004001980da0100075bde017c148003d5a8205000017c180003d5a875555403331420000012883a0003547400cd20002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be0c4001ead4016e007ab50100002f8320067ab5005b8c1ead5070190c00001d637805f220000f56a081400005f020000f56a1d555400ccc508002801ea16007c1f07c1f107c1f0781e007c80800031a02c000c88199040a00352083669190000d8908020000be044001ead4016e007ab50100002f8120067ab5005b8c1ead5070190c00000",
+// expectedLoadInformation: GenerateTwoCellsFullyPopulatedRanLoadInformation(),
+// },
+//}
//func TestExtractAndBuildRanLoadInformation(t *testing.T) {
// logger, _ := logger.InitLogger(logger.InfoLevel)
// }
//}
-func GenerateSingleCellWithCellIdOnlyRanLoadInformation() *entities.RanLoadInformation {
+/*func GenerateSingleCellWithCellIdOnlyRanLoadInformation() *entities.RanLoadInformation {
return &entities.RanLoadInformation{
LoadTimestamp: LoadTimestamp,
CellLoadInfos: []*entities.CellLoadInformation{
},
},
}
-}
+}*/
package rmrmsghandlers
-import (
+/*import (
"e2mgr/converters"
"e2mgr/e2pdus"
"e2mgr/logger"
type EnbLoadInformationNotificationHandler struct {
logger *logger.Logger
rnibDataService services.RNibDataService
- extractor converters.IEnbLoadInformationExtractor
+ //extractor converters.IEnbLoadInformationExtractor
}
func NewEnbLoadInformationNotificationHandler(logger *logger.Logger, rnibDataService services.RNibDataService, extractor converters.IEnbLoadInformationExtractor) EnbLoadInformationNotificationHandler {
}
h.logger.Infof("#EnbLoadInformationNotificationHandler.Handle - RAN name: %s - Successfully saved RAN load information to RNIB. elapsed: %f ms", request.RanName, elapsed(request.StartTime))
-}
+}*/
package rmrmsghandlers
-import (
+/*import (
"e2mgr/models"
"fmt"
"time"
loadInformationHandler.Handle(notificationRequest)
return nil
-}
+}*/
//func TestLoadInformationHandlerSuccess(t *testing.T) {
// log, err := logger.InitLogger(logger.InfoLevel)
-//// Copyright 2019 AT&T Intellectual Property
+ //// Copyright 2019 AT&T Intellectual Property
//// Copyright 2019 Nokia
////
//// Licensed under the Apache License, Version 2.0 (the "License");
x2SetupFailureResponseConverter := converters.NewX2SetupFailureResponseConverter(logger)
endcSetupResponseConverter := converters.NewEndcSetupResponseConverter(logger)
endcSetupFailureResponseConverter := converters.NewEndcSetupFailureResponseConverter(logger)
- enbLoadInformationExtractor := converters.NewEnbLoadInformationExtractor(logger)
+ //enbLoadInformationExtractor := converters.NewEnbLoadInformationExtractor(logger)
x2ResetResponseExtractor := converters.NewX2ResetResponseExtractor(logger)
// Init managers
endcSetupResponseHandler := rmrmsghandlers.NewSetupResponseNotificationHandler(logger, rnibDataService, endcSetupResponseManager, ranStatusChangeManager, rmrCgo.RIC_ENDC_X2_SETUP_RESP)
endcSetupFailureResponseHandler := rmrmsghandlers.NewSetupResponseNotificationHandler(logger, rnibDataService, endcSetupFailureResponseManager, nil, rmrCgo.RIC_ENDC_X2_SETUP_FAILURE)
ranLostConnectionHandler := rmrmsghandlers.NewRanLostConnectionHandler(logger, ranReconnectionManager)
- enbLoadInformationNotificationHandler := rmrmsghandlers.NewEnbLoadInformationNotificationHandler(logger, rnibDataService, enbLoadInformationExtractor)
+ //enbLoadInformationNotificationHandler := rmrmsghandlers.NewEnbLoadInformationNotificationHandler(logger, rnibDataService, enbLoadInformationExtractor)
x2EnbConfigurationUpdateHandler := rmrmsghandlers.NewX2EnbConfigurationUpdateHandler(logger, rmrSender)
endcConfigurationUpdateHandler := rmrmsghandlers.NewEndcConfigurationUpdateHandler(logger, rmrSender)
x2ResetResponseHandler := rmrmsghandlers.NewX2ResetResponseHandler(logger, rnibDataService, ranStatusChangeManager, x2ResetResponseExtractor)
provider.Register(rmrCgo.RIC_ENDC_X2_SETUP_RESP, endcSetupResponseHandler)
provider.Register(rmrCgo.RIC_ENDC_X2_SETUP_FAILURE, endcSetupFailureResponseHandler)
provider.Register(rmrCgo.RIC_SCTP_CONNECTION_FAILURE, ranLostConnectionHandler)
- provider.Register(rmrCgo.RIC_ENB_LOAD_INFORMATION, enbLoadInformationNotificationHandler)
+ //provider.Register(rmrCgo.RIC_ENB_LOAD_INFORMATION, enbLoadInformationNotificationHandler)
provider.Register(rmrCgo.RIC_ENB_CONF_UPDATE, x2EnbConfigurationUpdateHandler)
provider.Register(rmrCgo.RIC_ENDC_CONF_UPDATE, endcConfigurationUpdateHandler)
provider.Register(rmrCgo.RIC_X2_RESET_RESP, x2ResetResponseHandler)
{rmrCgo.RIC_ENDC_X2_SETUP_RESP, rmrmsghandlers.NewSetupResponseNotificationHandler(logger, rnibDataService, endcSetupResponseManager, ranStatusChangeManager, rmrCgo.RIC_ENDC_X2_SETUP_RESP)},
{rmrCgo.RIC_ENDC_X2_SETUP_FAILURE, rmrmsghandlers.NewSetupResponseNotificationHandler(logger, rnibDataService, endcSetupFailureResponseManager, ranStatusChangeManager, rmrCgo.RIC_ENDC_X2_SETUP_FAILURE),},
{rmrCgo.RIC_SCTP_CONNECTION_FAILURE, rmrmsghandlers.NewRanLostConnectionHandler(logger, ranDisconnectionManager)},
- {rmrCgo.RIC_ENB_LOAD_INFORMATION, rmrmsghandlers.NewEnbLoadInformationNotificationHandler(logger, rnibDataService, converters.NewEnbLoadInformationExtractor(logger))},
+ //{rmrCgo.RIC_ENB_LOAD_INFORMATION, rmrmsghandlers.NewEnbLoadInformationNotificationHandler(logger, rnibDataService, converters.NewEnbLoadInformationExtractor(logger))},
{rmrCgo.RIC_ENB_CONF_UPDATE, rmrmsghandlers.NewX2EnbConfigurationUpdateHandler(logger, rmrSender)},
{rmrCgo.RIC_ENDC_CONF_UPDATE, rmrmsghandlers.NewEndcConfigurationUpdateHandler(logger, rmrSender)},
{rmrCgo.RIC_E2_TERM_INIT, rmrmsghandlers.NewE2TermInitNotificationHandler(logger, ranDisconnectionManager, e2tInstancesManager, routingManagerClient)},