Volume findVolumeWithId(final String id) { return findVolumeWithId(client, id); }
protected Volume createPreferredVolumeFromDisk() { AsyncCreateResponse job = client.getVolumeClient().createVolumeFromDiskOfferingInZone(prefix + "-jclouds-volume", getPreferredDiskOffering().getId(), zoneId); assertTrue(jobComplete.apply(job.getJobId())); logger.info("created volume " + job.getId()); return findVolumeWithId(job.getId()); }
public void testCreateVolumeFromSnapshotInZoneAndDeleteVolume() { logger.info("testCreateVolumeFromSnapshotInZoneAndDeleteVolume (takes ~3m)"); assertNotNull(getPreferredSnapshot()); AsyncCreateResponse job = client.getVolumeClient().createVolumeFromSnapshotInZone(prefix + "-jclouds-volume", getPreferredSnapshot().getId(), zoneId); assertTrue(jobComplete.apply(job.getJobId())); Volume volume = findVolumeWithId(job.getId()); checkVolume(volume); client.getVolumeClient().deleteVolume(volume.getId()); }
/** test requires that a VM exist */ public void testCreateVolumeFromDiskofferingInZoneAndAttachVolumeToVirtualMachineAndDetachAndDelete() { logger.info("testCreateVolumeFromDiskofferingInZoneAndAttachVolumeToVirtualMachineAndDetachAndDelete"); final Volume volume = createPreferredVolumeFromDisk(); try { checkVolume(volume); VirtualMachine virtualMachine = getPreferredVirtualMachine(); logger.info("attaching volume %s to vm %s", volume, virtualMachine); AsyncCreateResponse job = client.getVolumeClient().attachVolume(volume.getId(), virtualMachine.getId()); assertTrue(jobComplete.apply(job.getJobId())); Volume attachedVolume = findVolumeWithId(volume.getId()); checkVolume(attachedVolume); assertEquals(virtualMachine.getId(), attachedVolume.getVirtualMachineId()); assertNotNull(attachedVolume.getAttached()); logger.info("detaching volume %s from vm %s", volume, virtualMachine); job = client.getVolumeClient().detachVolume(volume.getId()); assertTrue(jobComplete.apply(job.getJobId())); Volume detachedVolume = findVolumeWithId(volume.getId()); checkVolume(detachedVolume); assertNull(detachedVolume.getAttached()); } finally { client.getVolumeClient().deleteVolume(volume.getId()); } }
/** Test requires a custom disk offering to be available */ public void testCreateVolumeFromCustomDiskOffering() { final int size = 1; DiskOffering offering = null; for (DiskOffering candidate : client.getOfferingClient().listDiskOfferings()) { if (candidate.isCustomized()) { offering = candidate; break; } } assertNotNull("No custom disk offering found!", offering); AsyncCreateResponse job = client.getVolumeClient().createVolumeFromCustomDiskOfferingInZone( prefix + "-jclouds-volume", offering.getId(), zoneId, size); assertTrue(jobComplete.apply(job.getJobId())); logger.info("created volume "+job.getId()); Volume volume = findVolumeWithId(job.getId()); try { checkVolume(volume); assertEquals(volume.getSize(), size * 1024 * 1024 * 1024); } finally { client.getVolumeClient().deleteVolume(volume.getId()); } }