Vinzenz Feenstra has uploaded a new change for review.

Change subject: FQDN extension
......................................................................

FQDN extension

Change-Id: I1e7f8e46c6a71ccbfe9af9bf85271d7294b03526
Signed-off-by: Vinzenz Feenstra <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VmDynamic.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VmDynamicDAODbFacadeImpl.java
M 
backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/VmDynamicDAOTest.java
M 
backend/manager/modules/restapi/interface/definition/src/main/resources/api.xsd
M 
backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/VmMapperTest.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsProperties.java
M packaging/dbscripts/create_dwh_views.sql
M packaging/dbscripts/create_views.sql
A packaging/dbscripts/upgrade/03_03_0690_add_fqdn_to_vm_dynamic.sql
M packaging/dbscripts/vms_sp.sql
14 files changed, 55 insertions(+), 5 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/09/17709/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
index 6683dc7..0ebf692 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java
@@ -692,6 +692,7 @@
         tempVar.setStatus(VMStatus.Down);
         tempVar.setVmHost("");
         tempVar.setVmIp("");
+        tempVar.setVmFQDN("");
         
tempVar.setDisplayType(getParameters().getVmStaticData().getDefaultDisplayType());
         VmDynamic vmDynamic = tempVar;
         DbFacade.getInstance().getVmDynamicDao().save(vmDynamic);
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
index f545d89..0584b65 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportVmCommand.java
@@ -1067,6 +1067,7 @@
         tempVar.setStatus(VMStatus.ImageLocked);
         tempVar.setVmHost("");
         tempVar.setVmIp("");
+        tempVar.setVmFQDN("");
         
tempVar.setAppList(getParameters().getVm().getDynamicData().getAppList());
         getVmDynamicDAO().save(tempVar);
         getCompensationContext().snapshotNewEntity(tempVar);
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
index 673f3ec..9410c87 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
@@ -413,6 +413,14 @@
         this.vmDynamic.setVmIp(value);
     }
 
+    public String getVmFQDN() {
+        return this.vmDynamic.getVmFQDN();
+    }
+
+    public void setVmFQDN(String fqdn) {
+        this.vmDynamic.setVmFQDN(fqdn);
+    }
+
     public String getVmHost() {
         String vmHost = this.vmDynamic.getVmHost();
         if (!StringHelper.isNullOrEmpty(this.getVmIp())) {
@@ -1181,6 +1189,7 @@
         setDisplaySecurePort(vm.getDisplaySecurePort());
         setVmHost(vm.getVmHost());
         setVmIp(vm.getVmIp());
+        setVmFQDN(vm.getVmFQDN());
 
         // if (!string.IsNullOrEmpty(vm.app_list))
         // {
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VmDynamic.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VmDynamic.java
index 627e8f9..83983ea 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VmDynamic.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VmDynamic.java
@@ -13,6 +13,7 @@
     private Guid id = Guid.Empty;
     private VMStatus status = VMStatus.Down;
     private String vmIp;
+    private String vmFQDN;
     private String vmHost;
     private Integer vmPid;
     private Date lastStartTime;
@@ -83,6 +84,7 @@
         result = prime * result + ((utcDiff == null) ? 0 : utcDiff.hashCode());
         result = prime * result + ((vmHost == null) ? 0 : vmHost.hashCode());
         result = prime * result + ((vmIp == null) ? 0 : vmIp.hashCode());
+        result = prime * result + ((vmFQDN == null) ? 0 : vmFQDN.hashCode());
         result = prime * result + ((lastStartTime == null) ? 0 : 
lastStartTime.hashCode());
         result = prime * result + ((vmPid == null) ? 0 : vmPid.hashCode());
         result = prime * result + (lastWatchdogEvent == null ? 0 : 
lastWatchdogEvent.hashCode());
@@ -133,6 +135,7 @@
                 && ObjectUtils.objectsEqual(utcDiff, other.utcDiff)
                 && ObjectUtils.objectsEqual(vmHost, other.vmHost)
                 && ObjectUtils.objectsEqual(vmIp, other.vmIp)
+                && ObjectUtils.objectsEqual(vmFQDN, other.vmFQDN)
                 && ObjectUtils.objectsEqual(lastStartTime, other.lastStartTime)
                 && ObjectUtils.objectsEqual(vmPid, other.vmPid)
                 && ObjectUtils.objectsEqual(lastWatchdogEvent, 
other.lastWatchdogEvent)
@@ -294,6 +297,14 @@
         this.vmHost = value;
     }
 
+    public String getVmFQDN() {
+        return this.vmFQDN;
+    }
+
+    public void setVmFQDN(String fqdn) {
+        this.vmFQDN = fqdn;
+    }
+
     public String getVmIp() {
         return this.vmIp;
     }
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VmDynamicDAODbFacadeImpl.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VmDynamicDAODbFacadeImpl.java
index 36a17bb..8a9b8ba 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VmDynamicDAODbFacadeImpl.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/VmDynamicDAODbFacadeImpl.java
@@ -86,6 +86,7 @@
                 .addValue("status", vm.getStatus())
                 .addValue("vm_host", vm.getVmHost())
                 .addValue("vm_ip", vm.getVmIp())
+                .addValue("vm_fqdn", vm.getVmFQDN())
                 .addValue("last_start_time", vm.getLastStartTime())
                 .addValue("vm_pid", vm.getVmPid())
                 .addValue("display", vm.getDisplay())
@@ -136,6 +137,7 @@
                 entity.setId(getGuidDefaultEmpty(rs, "vm_guid"));
                 entity.setVmHost(rs.getString("vm_host"));
                 entity.setVmIp(rs.getString("vm_ip"));
+                entity.setVmFQDN(rs.getString("vm_fqdn"));
                 entity.setLastStartTime(DbFacadeUtils.fromDate(rs
                         .getTimestamp("last_start_time")));
                 entity.setVmPid((Integer) rs.getObject("vm_pid"));
diff --git 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/VmDynamicDAOTest.java
 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/VmDynamicDAOTest.java
index 52314eb..0424b7e 100644
--- 
a/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/VmDynamicDAOTest.java
+++ 
b/backend/manager/modules/dal/src/test/java/org/ovirt/engine/core/dao/VmDynamicDAOTest.java
@@ -118,6 +118,7 @@
         VmDynamic existingVm2 = dao.get(new 
Guid("77296e00-0cad-4e5a-9299-008a7b6f4356"));
         existingVm.setStatus(VMStatus.Down);
         existingVm2.setVmIp("111");
+        existingVm2.setVmFQDN("localhost.localdomain");
 
         dao.updateAll(Arrays.asList(new VmDynamic[] { existingVm, existingVm2 
}));
 
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 65d57f4..0db3e2e 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
@@ -2266,6 +2266,7 @@
   <xs:complexType name="GuestInfo">
     <xs:sequence>
       <xs:element ref="ips" minOccurs="0" maxOccurs="1"/>
+      <xs:element name="fqdn" type="xs:string" minOccurs="0" maxOccurs="1"/>
     </xs:sequence>
   </xs:complexType>
 
diff --git 
a/backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/VmMapperTest.java
 
b/backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/VmMapperTest.java
index 9485c3a..7d2c016 100644
--- 
a/backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/VmMapperTest.java
+++ 
b/backend/manager/modules/restapi/types/src/test/java/org/ovirt/engine/api/restapi/types/VmMapperTest.java
@@ -153,6 +153,18 @@
     }
 
     @Test
+    public void testGuestFQDN() {
+        org.ovirt.engine.core.common.businessentities.VM vm = new 
org.ovirt.engine.core.common.businessentities.VM();
+        VmDynamic vmDynamic = new VmDynamic();
+        vmDynamic.setStatus(VMStatus.Up);
+        vmDynamic.setVmFQDN("localhost.localdomain");
+        vm.setDynamicData(vmDynamic);
+        OsTypeMockUtils.mockOsTypes();
+        VM map = VmMapper.map(vm, null);
+        assertNotNull(map.getGuestInfo().getFqdn());
+        assertEquals(map.getGuestInfo().getFqdn(), "localhost.localdomain");
+    }
+    @Test
     public void testGustIps() {
         org.ovirt.engine.core.common.businessentities.VM vm = new 
org.ovirt.engine.core.common.businessentities.VM();
         VmDynamic vmDynamic = new VmDynamic();
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java
index fe56565..73dedef 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsBrokerObjectsBuilder.java
@@ -193,6 +193,13 @@
 
         initAppsList(xmlRpcStruct, vm);
         vm.setGuestOs(AssignStringValue(xmlRpcStruct, VdsProperties.guest_os));
+        if (xmlRpcStruct.containsKey(VdsProperties.VM_FQDN)) {
+            vm.setVmFQDN(AssignStringValue(xmlRpcStruct, 
VdsProperties.VM_FQDN));
+            if (vm.getVmFQDN() != null) {
+                vm.setVmFQDN(vm.getVmFQDN().trim());
+            }
+        }
+
         vm.setVmIp(AssignStringValue(xmlRpcStruct, VdsProperties.VM_IP));
         if (vm.getVmIp() != null) {
             if (vm.getVmIp().startsWith("127.0.")) {
diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsProperties.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsProperties.java
index 52ce57f..0deab00 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsProperties.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/vdsbroker/VdsProperties.java
@@ -175,6 +175,7 @@
     // vm configuration (i.e. VmDynamic)
     public static final String guest_cur_user_name = "username";
     public static final String VM_IP = "guestIPs";
+    public static final String VM_FQDN = "fqdn";
     public static final String vm_usage_mem_percent = "memUsage";
     public static final String vm_host = "guestName";
     public static final String app_list = "appsList";
diff --git a/packaging/dbscripts/create_dwh_views.sql 
b/packaging/dbscripts/create_dwh_views.sql
index 64146f1..b68311f 100644
--- a/packaging/dbscripts/create_dwh_views.sql
+++ b/packaging/dbscripts/create_dwh_views.sql
@@ -269,6 +269,7 @@
        cast(c.cpu_user as smallint) as user_cpu_usage_percent,
        c.disks_usage,
        b.vm_ip,
+       b.vm_fqdn,
        b.client_ip as vm_client_ip,
        b.console_cur_user_name as current_user_name,
        b.run_on_vds as currently_running_on_host
diff --git a/packaging/dbscripts/create_views.sql 
b/packaging/dbscripts/create_views.sql
index bd064fe..59058e5 100644
--- a/packaging/dbscripts/create_views.sql
+++ b/packaging/dbscripts/create_views.sql
@@ -565,7 +565,7 @@
                       vm_static.default_display_type as default_display_type, 
vm_static.priority as priority,vm_static.iso_path as iso_path, vm_static.origin 
as origin, vds_groups.compatibility_version as vds_group_compatibility_version,
                       vm_static.initrd_url as initrd_url, vm_static.kernel_url 
as kernel_url, vm_static.kernel_params as kernel_params, 
vm_dynamic.pause_status as pause_status, vm_dynamic.exit_message as 
exit_message, vm_dynamic.exit_status as exit_status,vm_static.migration_support 
as migration_support,vm_static.predefined_properties as 
predefined_properties,vm_static.userdefined_properties as 
userdefined_properties,vm_static.min_allocated_mem as min_allocated_mem,  
vm_dynamic.hash as hash, vm_static.cpu_pinning as cpu_pinning, 
vm_static.db_generation as db_generation, vm_static.host_cpu_flags as 
host_cpu_flags,
                       vm_static.tunnel_migration as tunnel_migration, 
vm_static.vnc_keyboard_layout as vnc_keyboard_layout, 
vm_static.is_run_and_pause as is_run_and_pause, vm_static.created_by_user_id as 
created_by_user_id,
-                      vm_dynamic.last_watchdog_event as last_watchdog_event, 
vm_dynamic.last_watchdog_action as last_watchdog_action
+                      vm_dynamic.last_watchdog_event as last_watchdog_event, 
vm_dynamic.last_watchdog_action as last_watchdog_action, vm_dynamic.vm_fqdn as 
vm_fqdn
 FROM         vm_static INNER JOIN
 vm_dynamic ON vm_static.vm_guid = vm_dynamic.vm_guid INNER JOIN
 vm_static AS vm_templates ON vm_static.vmt_guid = vm_templates.vm_guid INNER 
JOIN
@@ -587,7 +587,7 @@
             vms.dedicated_vm_for_vds, vms.fail_back, 
vms.default_boot_sequence, vms.vm_type,
             vms.vds_group_name, vms.storage_pool_id, vms.storage_pool_name,
             vms.vds_group_description, vms.vmt_name, vms.vmt_mem_size_mb, 
vms.vmt_os, vms.vmt_creation_date,
-            vms.vmt_child_count, vms.vmt_num_of_sockets, 
vms.vmt_cpu_per_socket, vms.vmt_description, vms.status, vms.vm_ip,
+            vms.vmt_child_count, vms.vmt_num_of_sockets, 
vms.vmt_cpu_per_socket, vms.vmt_description, vms.status, vms.vm_ip, vms.vm_fqdn,
             vms.vm_host, vms.vmt_num_of_sockets * vms.vmt_cpu_per_socket AS 
vmt_num_of_cpus, vms.vm_pid,
             vms.last_start_time, vms.guest_cur_user_name, 
vms.console_cur_user_name, vms.guest_last_login_time, vms.console_user_id,
             vms.guest_last_logout_time, vms.guest_os, vms.run_on_vds, 
vms.migrating_to_vds, vms.app_list, vms.display,
diff --git a/packaging/dbscripts/upgrade/03_03_0690_add_fqdn_to_vm_dynamic.sql 
b/packaging/dbscripts/upgrade/03_03_0690_add_fqdn_to_vm_dynamic.sql
new file mode 100644
index 0000000..09164c7
--- /dev/null
+++ b/packaging/dbscripts/upgrade/03_03_0690_add_fqdn_to_vm_dynamic.sql
@@ -0,0 +1 @@
+select fn_db_add_column('vm_dynamic', 'vm_fqdn', 'TEXT NOT NULL DEFAULT ''''');
diff --git a/packaging/dbscripts/vms_sp.sql b/packaging/dbscripts/vms_sp.sql
index 92b4600..45b05aa 100644
--- a/packaging/dbscripts/vms_sp.sql
+++ b/packaging/dbscripts/vms_sp.sql
@@ -220,6 +220,7 @@
        v_vm_guid UUID,
        v_vm_host VARCHAR(255) ,
        v_vm_ip VARCHAR(255) ,
+       v_vm_fqdn VARCHAR(255) ,
        v_last_start_time TIMESTAMP WITH TIME ZONE ,
        v_vm_pid INTEGER ,
        v_display INTEGER ,
@@ -244,8 +245,8 @@
 RETURNS VOID
    AS $procedure$
 BEGIN
-INSERT INTO vm_dynamic(app_list, guest_cur_user_name, console_cur_user_name, 
guest_last_login_time, guest_last_logout_time, console_user_id, guest_os, 
migrating_to_vds, RUN_ON_VDS, status, vm_guid, vm_host, vm_ip, last_start_time, 
vm_pid, display, acpi_enable, session, display_ip, display_type, kvm_enable, 
boot_sequence, display_secure_port, utc_diff, last_vds_run_on, client_ip, 
guest_requested_memory, 
hibernation_vol_handle,exit_status,pause_status,exit_message, 
guest_agent_nics_hash, last_watchdog_event, last_watchdog_action)
-       VALUES(v_app_list, v_guest_cur_user_name, v_console_cur_user_name, 
v_guest_last_login_time, v_guest_last_logout_time, v_console_user_id, 
v_guest_os, v_migrating_to_vds, v_run_on_vds, v_status, v_vm_guid, v_vm_host, 
v_vm_ip, v_last_start_time, v_vm_pid, v_display, v_acpi_enable, v_session, 
v_display_ip, v_display_type, v_kvm_enable, v_boot_sequence, 
v_display_secure_port, v_utc_diff, v_last_vds_run_on, v_client_ip, 
v_guest_requested_memory, v_hibernation_vol_handle, v_exit_status, 
v_pause_status, v_exit_message, v_guest_agent_nics_hash, v_last_watchdog_event, 
v_last_watchdog_action);
+INSERT INTO vm_dynamic(app_list, guest_cur_user_name, console_cur_user_name, 
guest_last_login_time, guest_last_logout_time, console_user_id, guest_os, 
migrating_to_vds, RUN_ON_VDS, status, vm_guid, vm_host, vm_ip, last_start_time, 
vm_pid, display, acpi_enable, session, display_ip, display_type, kvm_enable, 
boot_sequence, display_secure_port, utc_diff, last_vds_run_on, client_ip, 
guest_requested_memory, 
hibernation_vol_handle,exit_status,pause_status,exit_message, 
guest_agent_nics_hash, last_watchdog_event, last_watchdog_action, vm_fqdn)
+       VALUES(v_app_list, v_guest_cur_user_name, v_console_cur_user_name, 
v_guest_last_login_time, v_guest_last_logout_time, v_console_user_id, 
v_guest_os, v_migrating_to_vds, v_run_on_vds, v_status, v_vm_guid, v_vm_host, 
v_vm_ip, v_last_start_time, v_vm_pid, v_display, v_acpi_enable, v_session, 
v_display_ip, v_display_type, v_kvm_enable, v_boot_sequence, 
v_display_secure_port, v_utc_diff, v_last_vds_run_on, v_client_ip, 
v_guest_requested_memory, v_hibernation_vol_handle, v_exit_status, 
v_pause_status, v_exit_message, v_guest_agent_nics_hash, v_last_watchdog_event, 
v_last_watchdog_action, v_vm_fqdn);
 END; $procedure$
 LANGUAGE plpgsql;
 
@@ -266,6 +267,7 @@
        v_vm_guid UUID,
        v_vm_host VARCHAR(255) ,
        v_vm_ip VARCHAR(255) ,
+       v_vm_fqdn VARCHAR(255) ,
        v_last_start_time TIMESTAMP WITH TIME ZONE ,
        v_vm_pid INTEGER ,
        v_display INTEGER ,
@@ -300,7 +302,7 @@
       guest_last_logout_time = v_guest_last_logout_time,
       console_user_id = v_console_user_id,
       guest_os = v_guest_os,migrating_to_vds = v_migrating_to_vds,RUN_ON_VDS = 
v_run_on_vds,
-      status = v_status,vm_host = v_vm_host,vm_ip = v_vm_ip,
+      status = v_status,vm_host = v_vm_host,vm_ip = v_vm_ip,vm_fqdn = 
v_vm_fqdn,
       last_start_time = v_last_start_time,
       vm_pid = v_vm_pid,display = v_display,acpi_enable = v_acpi_enable,
       session = v_session,display_ip = v_display_ip,


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

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

Reply via email to