@Override public boolean apply(VirtualMachine input) { return regionIds.get().contains(input.location()); } }));
@Override public boolean apply(VirtualMachine input) { return regionIds.get().isEmpty() || regionIds.get().contains(input.location()); } }));
@Override public Image call() throws Exception { logger.debug(">> generalizing virtal machine %s...", vmName); api.getVirtualMachineApi(resourceGroupName).generalize(vmName); org.jclouds.azurecompute.arm.domain.Image imageFromVM = api.getVirtualMachineImageApi(resourceGroupName) .createOrUpdate(cloneTemplate.getName(), vm.location(), ImageProperties.builder().sourceVirtualMachine(vmIdRef).build()); checkState(imageAvailablePredicate.create(resourceGroupName).apply(imageFromVM.name()), "Image for node %s was not created within the configured time limit", cloneTemplate.getName()); return compose(vmImageToImage, customImagetoVmImage).apply(imageFromVM); } });
@Override public Image call() throws Exception { logger.debug(">> generalizing virtal machine %s...", vmName); api.getVirtualMachineApi(resourceGroupName).generalize(vmName); org.jclouds.azurecompute.arm.domain.Image imageFromVM = api.getVirtualMachineImageApi(resourceGroupName) .createOrUpdate(cloneTemplate.getName(), vm.location(), ImageProperties.builder().sourceVirtualMachine(vmIdRef).build()); checkState(imageAvailablePredicate.create(resourceGroupName).apply(imageFromVM.name()), "Image for node %s was not created within the configured time limit", cloneTemplate.getName()); return compose(vmImageToImage, customImagetoVmImage).apply(imageFromVM); } });
@Test(dependsOnMethods = "testStart") public void testUpdate() { VirtualMachine vm = api().get(vmName); VirtualMachineProperties oldProperties = vm.properties(); StorageProfile oldStorageProfile = oldProperties.storageProfile(); DataDisk newDataDisk = DataDisk.builder() .name(vmName + "new-data-disk") .diskSizeGB("1") .lun(1) .createOption(DataDisk.DiskCreateOptionTypes.EMPTY) .build(); List<DataDisk> oldDataDisks = oldStorageProfile.dataDisks(); assertEquals(oldDataDisks.size(), 1); ImmutableList<DataDisk> newDataDisks = ImmutableList.<DataDisk> builder().addAll(oldDataDisks).add(newDataDisk).build(); StorageProfile newStorageProfile = oldStorageProfile.toBuilder().dataDisks(newDataDisks).build(); VirtualMachineProperties newProperties = oldProperties.toBuilder().storageProfile(newStorageProfile).build(); VirtualMachine newVm = vm.toBuilder().properties(newProperties).build(); vm = api().createOrUpdate(vmName, newVm.location(), newVm.properties(), newVm.tags(), newVm.plan()); assertEquals(vm.properties().storageProfile().dataDisks().size(), oldDataDisks.size() + 1); }