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
