Tomas Jelinek has uploaded a new change for review.

Change subject: restapi: [WIP] copy template permissions REST part
......................................................................

restapi: [WIP] copy template permissions REST part

WIP because the tests are missing

When creating a VM from a template it is possible to
specify the template.copy_permissions boolean parameter
to copy the template permissions to the newly created
VM.

Change-Id: I64a0bc3d30cf5ccfb08efe1d02e1c9466d01fe66
Signed-off-by: Tomas Jelinek <[email protected]>
---
M 
backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
M 
backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
3 files changed, 8 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/99/16199/1

diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
index 0df3464..21921fc 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
@@ -1939,6 +1939,7 @@
           <xs:element name="high_availability" type="HighAvailability" 
minOccurs="0"/>
           <xs:element name="display" type="Display" minOccurs="0" 
maxOccurs="1"/>
           <xs:element name="stateless" type="xs:boolean" minOccurs="0"/>
+          <xs:element name="copy_permissions" type="xs:boolean" minOccurs="0"/>
           <xs:element name="delete_protected" type="xs:boolean" minOccurs="0"/>
           <xs:element name="timezone" type="xs:string" minOccurs="0" 
maxOccurs="1"/>
           <xs:element ref="domain" minOccurs="0" maxOccurs="1"/>
diff --git 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
index 13441d0..e6eb56f 100644
--- 
a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
+++ 
b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml
@@ -125,6 +125,7 @@
           vm.domain.name: xs:string
           vm.description: xs:string
           vm.stateless: xs:boolean
+          vm.template.copy_permissions: xs:boolean
           vm.delete_protected: xs:boolean
           vm.cpu.mode: xs:string
           vm.cpu.topology.sockets: xs:int
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
index 39d9074..e9a57ea 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java
@@ -230,6 +230,9 @@
             params.setBalloonEnabled(vm.getMemoryPolicy().isBallooning());
         }
         params.setMakeCreatorExplicitOwner(shouldMakeCreatorExplicitOwner());
+        if (vm.isSetTemplate() && vm.getTemplate().isSetCopyPermissions()) {
+            
params.setCopyTemplatePermissions(vm.getTemplate().isCopyPermissions());
+        }
         return performCreate(VdcActionType.AddVmFromTemplate,
                                params,
                                new 
QueryIdResolver<Guid>(VdcQueryType.GetVmByVmId, IdQueryParameters.class));
@@ -277,6 +280,9 @@
         params.setStorageDomainId(storageDomainId);
         params.setDiskInfoDestinationMap(getDisksToClone(vm.getDisks(), 
templateId));
         params.setMakeCreatorExplicitOwner(shouldMakeCreatorExplicitOwner());
+        if (vm.isSetTemplate() && vm.getTemplate().isSetCopyPermissions()) {
+            
params.setCopyTemplatePermissions(vm.getTemplate().isCopyPermissions());
+        }
         return performCreate(VdcActionType.AddVm,
                                params,
                                new 
QueryIdResolver<Guid>(VdcQueryType.GetVmByVmId, IdQueryParameters.class));


-- 
To view, visit http://gerrit.ovirt.org/16199
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I64a0bc3d30cf5ccfb08efe1d02e1c9466d01fe66
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Tomas Jelinek <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to