Skip to content
Snippets Groups Projects
Commit d567237b authored by Manuel Kieweg's avatar Manuel Kieweg
Browse files

Merge branch 'istaester/fix-get-device-from-cli' into 'develop'

Fix get device from cli

See merge request cocsn/gosdn!183
parents 9e548892 11b15aea
No related branches found
No related tags found
9 merge requests!246Develop,!245Develop into Master,!244Master into develop2 into master,!219Draft: Testing,!214Test pipelines,!195DO NOT MERGE 2,!194DO NOT MERGE! just for testing,!183Fix get device from cli,!138Develop
Pipeline #80268 failed
......@@ -8,8 +8,6 @@ import (
"google.golang.org/grpc/codes"
"google.golang.org/grpc/status"
"code.fbi.h-da.de/cocsn/gosdn/interfaces/device"
ppb "code.fbi.h-da.de/cocsn/api/go/gosdn/pnd"
spb "code.fbi.h-da.de/cocsn/api/go/gosdn/southbound"
"code.fbi.h-da.de/cocsn/gosdn/interfaces/networkdomain"
......@@ -211,44 +209,46 @@ func fillSbis(pnd networkdomain.NetworkDomain, all bool, sid ...string) ([]*spb.
func fillOnds(pnd networkdomain.NetworkDomain, all bool, did ...string) ([]*ppb.OrchestratedNetworkingDevice, error) {
var ondList []uuid.UUID
var onds []*ppb.OrchestratedNetworkingDevice
// all decides if a client wants all devices or only a single one
switch all {
case true:
ondList = pnd.Devices()
onds = make([]*ppb.OrchestratedNetworkingDevice, len(ondList))
default:
var err error
if len(did) == 0 {
return nil, &errors.ErrInvalidParameters{
err := &errors.ErrInvalidParameters{
Func: fillOnds,
Param: "length of 'did' cannot be '0' when 'all' is set to 'false'",
}
}
ondList, err = stringToUUID(did)
if err != nil {
log.Error(err)
return nil, status.Errorf(codes.Aborted, "%v", err)
return nil, err
}
onds = make([]*ppb.OrchestratedNetworkingDevice, 1)
}
onds := make([]*ppb.OrchestratedNetworkingDevice, len(ondList))
for i, id := range ondList {
d, err := pnd.GetDevice(id.String())
for i, id := range did {
d, err := pnd.GetDevice(id)
if err != nil {
log.Error(err)
return nil, status.Errorf(codes.Aborted, "%v", err)
}
cfg := ygot.GNMINotificationsConfig{}
dev, err := ygot.TogNMINotifications(d.(device.Device).Model(), time.Now().UnixNano(), cfg)
dev, err := ygot.TogNMINotifications(d.Model(), time.Now().UnixNano(), cfg)
if err != nil {
log.Error(err)
return nil, status.Errorf(codes.Aborted, "%v", err)
}
onds[i] = &ppb.OrchestratedNetworkingDevice{
Id: id.String(),
Name: "",
Id: id,
Name: d.Name(),
Device: dev,
}
}
return onds, nil
}
......
......@@ -224,7 +224,7 @@ func (s DeviceStore) GetDevice(id uuid.UUID, parseErrors ...error) (device.Devic
}
}
log.WithFields(log.Fields{
"uuid": id,
"uuid": foundID,
"name": d.Name(),
}).Debug("device was accessed")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment