/** * Test the {@link VmDynamicDao#save(BusinessEntity)} method by adding a vm_dynamic record to a template. * While this doesn't make any sense from a business logic perspective, it's perfectly legal from a database * perspective, and helps avoid dependencies on the {@link VmDynamicDao#remove(Guid)} method. */ @Override protected VmDynamic generateNewEntity() { VmDynamic newEntity = new VmDynamic(); newEntity.setId(FixturesTool.VM_TEMPLATE_RHEL5); newEntity.setStatus(VMStatus.NotResponding); return newEntity; }
public VmDynamic(VmDynamic template) { id = template.getId(); status = template.getStatus(); ip = template.getIp(); fqdn = template.getFqdn(); vmHost = template.getVmHost(); lastStartTime = template.getLastStartTime(); bootTime = template.getBootTime(); downtime = template.getDowntime(); lastStopTime = template.getLastStopTime(); guestCurUserName = template.getGuestCurrentUserName(); consoleCurrentUserName = template.getConsoleCurrentUserName(); consoleUserId = template.getConsoleUserId(); guestOs = template.getGuestOs(); migratingToVds = template.getMigratingToVds(); runOnVds = template.getRunOnVds(); appList = template.getAppList(); acpiEnabled = template.getAcpiEnable(); session = template.getSession(); vncKeyboardLayout = template.getVncKeyboardLayout(); utcDiff = template.getUtcDiff(); clientIp = template.getClientIp(); guestRequestedMemory = template.getGuestRequestedMemory(); bootSequence = template.getBootSequence(); exitStatus = template.getExitStatus(); pauseStatus = template.getPauseStatus(); guestAgentNicsHash = template.getGuestAgentNicsHash(); exitMessage = template.getExitMessage(); lastWatchdogEvent = template.getLastWatchdogEvent(); lastWatchdogAction = template.getLastWatchdogAction();
setStatus(vm.getStatus()); if (vm.getStatus().isUpOrPaused()) { setMigratingToVds(null); setRunOnVds(vdsId); setVmHost(vm.getVmHost()); setFqdn(vm.getFqdn()); if (vm.getCurrentCd() != null) { setCurrentCd(vm.getCurrentCd()); setAppList(vm.getAppList()); setGuestOs(vm.getGuestOs()); setVncKeyboardLayout(vm.getVncKeyboardLayout()); setAcpiEnable(vm.getAcpiEnable()); setGuestCurrentUserName(vm.getGuestCurrentUserName()); setUtcDiff(vm.getUtcDiff()); setExitStatus(vm.getExitStatus()); setExitMessage(vm.getExitMessage()); setExitReason(vm.getExitReason()); setClientIp(vm.getClientIp()); setPauseStatus(vm.getPauseStatus()); setLastWatchdogEvent(vm.getLastWatchdogEvent()); setGuestCpuCount(vm.getGuestCpuCount()); setGraphicsInfos(new HashMap<>(vm.getGraphicsInfos())); setGuestOsArch(vm.getGuestOsArch()); setGuestOsCodename(vm.getGuestOsCodename()); setGuestOsDistribution(vm.getGuestOsDistribution());
@Override protected void updateExistingEntity() { existingEntity.setVmHost("farkle.redhat.com"); existingEntity.setRunOnce(!existingEntity.isRunOnce()); }
@Test public void testGuestOs2() { 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.setGuestOsType(OsType.Windows); vmDynamic.setGuestOsCodename(""); vmDynamic.setGuestOsDistribution(""); vmDynamic.setGuestOsVersion("6.2.4800"); vmDynamic.setGuestOsArch(ArchitectureType.x86_64); vmDynamic.setGuestOsKernelVersion(""); vm.setDynamicData(vmDynamic); Vm map = VmMapper.map(vm, (Vm) null); assertNotNull(map.getGuestOperatingSystem()); assertEquals("Windows", map.getGuestOperatingSystem().getFamily()); assertEquals("", map.getGuestOperatingSystem().getCodename()); assertEquals("", map.getGuestOperatingSystem().getDistribution()); assertEquals("6.2.4800", map.getGuestOperatingSystem().getVersion().getFullVersion()); assertNotNull(map.getGuestOperatingSystem().getVersion().getMajor()); assertEquals(6, (long) map.getGuestOperatingSystem().getVersion().getMajor()); assertNotNull(map.getGuestOperatingSystem().getVersion().getMinor()); assertEquals(2, (long) map.getGuestOperatingSystem().getVersion().getMinor()); assertNotNull(map.getGuestOperatingSystem().getVersion().getBuild()); assertEquals(4800, (long) map.getGuestOperatingSystem().getVersion().getBuild()); assertNull(map.getGuestOperatingSystem().getVersion().getRevision()); assertEquals("x86_64", map.getGuestOperatingSystem().getArchitecture()); assertNull(map.getGuestOperatingSystem().getKernel()); }
@Override protected VM getEntity(int index) { org.ovirt.engine.core.common.businessentities.VM vm = new org.ovirt.engine.core.common.businessentities.VM(); VmDynamic vmDynamic = new VmDynamic(); vmDynamic.setConsoleCurrentUserName("admin@internal"); vmDynamic.setClientIp("1.1.1.1"); vmDynamic.setGuestCurrentUserName("Ori"); vm.setDynamicData(vmDynamic); return vm; }
@Override protected org.ovirt.engine.core.common.businessentities.VM getInverse(VmStatic to) { VmStatistics statistics = new VmStatistics(); statistics.setCpuUser(10.0); statistics.setCpuSys(20.0); VmDynamic dynamic = new VmDynamic(); dynamic.setStatus(VMStatus.Up); dynamic.setBootSequence(to.getDefaultBootSequence()); dynamic.getGraphicsInfos().put(GraphicsType.SPICE, new GraphicsInfo()); org.ovirt.engine.core.common.businessentities.VM ret = new org.ovirt.engine.core.common.businessentities.VM(to, dynamic, statistics); ret.setUsageMemPercent(50); return ret; }
private void setupHostedEngineTests(boolean isHostedEngineVm, int vmCount) { // create the VmStatic instance VmStatic vmStatic = new VmStatic(); vmStatic.setId(newVmId); vmStatic.setOrigin(isHostedEngineVm ? OriginType.MANAGED_HOSTED_ENGINE : OriginType.RHEV); vmStaticDao.save(vmStatic); // create the VmDynamic instance VmDynamic vmDynamic = new VmDynamic(); vmDynamic.setId(newVmId); vmDynamic.setStatus(VMStatus.Up); vmDynamic.setRunOnVds(existingVds.getId()); vmDynamicDao.save(vmDynamic); // update the VDS instance existingVds.setVmCount(vmCount); vdsDynamicDao.update(existingVds.getDynamicData()); } }
@Test public void testGuestTimezone() { 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.setGuestOsTimezoneName("This is not a timezone"); vmDynamic.setGuestOsTimezoneOffset(-60); vm.setDynamicData(vmDynamic); Vm map = VmMapper.map(vm, (Vm) null); assertNotNull(map.getGuestTimeZone()); assertEquals("-01:00", map.getGuestTimeZone().getUtcOffset()); assertEquals("This is not a timezone", map.getGuestTimeZone().getName()); }
@Test public void testUpdateAll() { VmDynamic existingVm2 = dao.get(FixturesTool.VM_RHEL5_POOL_51); existingEntity.setStatus(VMStatus.Down); existingVm2.setIp("111"); existingVm2.setFqdn("localhost.localdomain"); dao.updateAll(Arrays.asList(existingEntity, existingVm2)); assertEquals(existingEntity, dao.get(existingEntity.getId())); assertEquals(existingVm2, dao.get(existingVm2.getId())); }
@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.setFqdn("localhost.localdomain"); vm.setDynamicData(vmDynamic); Vm map = VmMapper.map(vm, (Vm) null); assertNotNull(map.getFqdn()); assertEquals("localhost.localdomain", map.getFqdn()); }
@Override public boolean updateConsoleUserWithOptimisticLocking(VmDynamic vm) { MapSqlParameterSource parameterSource = getCustomMapSqlParameterSource() .addValue("vm_guid", vm.getId()) .addValue("console_user_id", vm.getConsoleUserId()) .addValue("guest_cur_user_name", vm.getGuestCurrentUserName()) .addValue("console_cur_user_name", vm.getConsoleCurrentUserName()); Map<String, Object> results = getCallsHandler().executeModification("UpdateConsoleUserWithOptimisticLocking", parameterSource); return (Boolean) results.get("updated"); }
/** * Ensures updating the dynamic status aspect of the VM works. */ @Test public void testUpdateStatus() { existingEntity.setStatus(VMStatus.Down); dao.updateStatus(existingEntity.getId(), existingEntity.getStatus()); VmDynamic after = dao.get(existingEntity.getId()); assertEquals(existingEntity, after); }
private void createHostedEngineVm(Guid id) { VmStatic vmStatic = new VmStatic(); vmStatic.setId(id); vmStatic.setClusterId(FixturesTool.CLUSTER_RHEL6_ISCSI); vmStatic.setName("HostedEngine"); vmStatic.setOrigin(OriginType.HOSTED_ENGINE); vmStatic.setCpuProfileId(FixturesTool.CPU_PROFILE_1); vmStaticDao.save(vmStatic); VmDynamic vmDynamic = new VmDynamic(); vmDynamic.setId(id); vmDynamicDao.save(vmDynamic); VmStatistics vmStatistics = new VmStatistics(); vmStatistics.setId(id); vmStatisticsDao.save(vmStatistics); }
public VM() { this(new VmStatic(), new VmDynamic(), new VmStatistics()); }
@Test public void testUpdateToUnknown() { VmDynamic existingVm2 = dao.get(FixturesTool.VM_RHEL5_POOL_51); VmDynamic existingVm3 = dao.get(FixturesTool.VM_RHEL5_POOL_50); dao.updateVmsToUnknown(Arrays.asList(existingEntity.getId(), existingVm2.getId())); assertEquals(VMStatus.Unknown, dao.get(existingEntity.getId()).getStatus()); assertEquals(VMStatus.Unknown, dao.get(existingVm2.getId()).getStatus()); assertNotEquals(VMStatus.Unknown, dao.get(existingVm3.getId()).getStatus()); } }
@Test public void testGuestAgentStatus() { Guid vmId = FixturesTool.VM_RHEL5_POOL_51; VmDynamic vmDynamic = dao.get(vmId); vmDynamic.setOvirtGuestAgentStatus(GuestAgentStatus.UpdateNeeded); dao.update(vmDynamic); vmDynamic = dao.get(vmId); assertEquals(vmDynamic.getOvirtGuestAgentStatus().getValue(), GuestAgentStatus.UpdateNeeded.getValue()); }
public Map<GraphicsType, GraphicsInfo> getGraphicsInfos() { return vmDynamic.getGraphicsInfos(); }
public Guid getMigratingToVds() { return this.vmDynamic.getMigratingToVds(); }
public Guid getRunOnVds() { return this.vmDynamic.getRunOnVds(); }