From 13a4dba09660bf9dbc39fc006191dc20083c0680 Mon Sep 17 00:00:00 2001 From: Malte Bauch <malte.bauch@stud.h-da.de> Date: Thu, 22 Dec 2022 16:45:43 +0100 Subject: [PATCH] change ensureIntendedConfiguration... to use GetModelAsFilteredCopy --- controller/nucleus/networkElementService.go | 2 +- controller/nucleus/principalNetworkDomain.go | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/controller/nucleus/networkElementService.go b/controller/nucleus/networkElementService.go index 61d302a4c..d5631cfe0 100644 --- a/controller/nucleus/networkElementService.go +++ b/controller/nucleus/networkElementService.go @@ -239,7 +239,7 @@ func (s *NetworkElementService) createNetworkElementFromStore(loadedNetworkEleme } // Use unmarshall from the network elements SBI to unmarshall ygot json in go struct. - opts := []ytypes.UnmarshalOpt{&ytypes.IgnoreReadOnlyFields{}, &ytypes.IgnoreExtraFields{}} + opts := []ytypes.UnmarshalOpt{&ytypes.IgnoreExtraFields{}} err = mne.SBI().Unmarshal([]byte(loadedNetworkElement.Model), path, mne.GetModel(), opts...) if err != nil { return nil, err diff --git a/controller/nucleus/principalNetworkDomain.go b/controller/nucleus/principalNetworkDomain.go index e5b768de7..21d99e66b 100644 --- a/controller/nucleus/principalNetworkDomain.go +++ b/controller/nucleus/principalNetworkDomain.go @@ -480,7 +480,19 @@ func (pnd *pndImplementation) ensureIntendedConfigurationIsAppliedOnNetworkEleme return err } - model, err := mne.GetModelAsString() + model, err := mne.GetModelAsFilteredCopy() + if err != nil { + return err + } + + modelAsString, err := ygot.EmitJSON(model, &ygot.EmitJSONConfig{ + Format: ygot.RFC7951, + Indent: "", + SkipValidation: true, + RFC7951Config: &ygot.RFC7951JSONConfig{ + AppendModuleName: true, + }, + }) if err != nil { return err } @@ -494,7 +506,7 @@ func (pnd *pndImplementation) ensureIntendedConfigurationIsAppliedOnNetworkEleme req.Update = []*gpb.Update{{ Path: path, Val: &gpb.TypedValue{ - Value: &gpb.TypedValue_JsonIetfVal{JsonIetfVal: []byte(model)}, + Value: &gpb.TypedValue_JsonIetfVal{JsonIetfVal: []byte(modelAsString)}, }, }} -- GitLab