Juan Hernandez has uploaded a new change for review. Change subject: restapi: Don't override potentially existing configuration ......................................................................
restapi: Don't override potentially existing configuration Currently the mapping method that populates the configuration of a VM (the OVF configuration, for example) doesn't take into account that it may already contain other values, like cloud-init or sysprep configuration. As a result the existing configuration is completely replaced, and a wrong result is returned to the user. This patch changes that mapping method so that it uses the existing configuration should it exist. Change-Id: Ica89aac29e19e959f0a44402f2715f18de984c1f Bug-Url: https://bugzilla.redhat.com/1218316 Signed-off-by: Juan Hernandez <juan.hernan...@redhat.com> --- M backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/VmMapper.java 1 file changed, 13 insertions(+), 5 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/06/40506/1 diff --git a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/VmMapper.java b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/VmMapper.java index ffef9e3..ce41d41 100644 --- a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/VmMapper.java +++ b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/VmMapper.java @@ -657,11 +657,19 @@ } } - public static VM map(String configuration, ConfigurationType type, VM vm) { - vm.setInitialization(new Initialization()); - vm.getInitialization().setConfiguration(new Configuration()); - vm.getInitialization().getConfiguration().setData(configuration); - vm.getInitialization().getConfiguration().setType(type.value()); + public static VM map(String data, ConfigurationType type, VM vm) { + Initialization initialization = vm.getInitialization(); + if (initialization == null) { + initialization = new Initialization(); + vm.setInitialization(initialization); + } + Configuration configuration = initialization.getConfiguration(); + if (configuration == null) { + configuration = new Configuration(); + initialization.setConfiguration(configuration); + } + configuration.setData(data); + configuration.setType(type.value()); return vm; } -- To view, visit https://gerrit.ovirt.org/40506 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ica89aac29e19e959f0a44402f2715f18de984c1f Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Juan Hernandez <juan.hernan...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches