@Test public void testCreateAndListEBSBackedImage() throws Exception { Snapshot snapshot = createSnapshot(); // List of images before... int sizeBefore = client.describeImagesInRegion(regionId).size(); // Register a new image... ebsBackedImageId = client.registerUnixImageBackedByEbsInRegion( regionId, ebsBackedImageName, snapshot.getId(), addNewBlockDevice("/dev/sda2", "myvirtual", 1).withDescription("adrian")); imagesToDeregister.add(ebsBackedImageId); final Image ebsBackedImage = getOnlyElement(client.describeImagesInRegion(regionId, imageIds(ebsBackedImageId))); assertEquals(ebsBackedImage.getName(), ebsBackedImageName); assertEquals(ebsBackedImage.getImageType(), ImageType.MACHINE); assertEquals(ebsBackedImage.getRootDeviceType(), RootDeviceType.EBS); assertEquals(ebsBackedImage.getRootDeviceName(), "/dev/sda1"); assertEquals(ebsBackedImage.getDescription(), "adrian"); assertEquals( ebsBackedImage.getEbsBlockDevices().entrySet(), ImmutableMap.of( "/dev/sda1", new Image.EbsBlockDevice(snapshot.getId(), snapshot.getVolumeSize(), true), "/dev/sda2", new Image.EbsBlockDevice(null, 1, false)) .entrySet()); // List of images after - should be one larger than before int after = client.describeImagesInRegion(regionId).size(); assertEquals(after, sizeBefore + 1); }
public void testDescribeImages() { for (String region : ec2Client.getConfiguredRegions()) { Set<? extends Image> allResults = client.describeImagesInRegion(region); assertNotNull(allResults); assert allResults.size() >= 2 : allResults.size(); Iterator<? extends Image> iterator = allResults.iterator(); String id1 = iterator.next().getId(); String id2 = iterator.next().getId(); Set<? extends Image> twoResults = client.describeImagesInRegion(region, imageIds(id1, id2)); assertNotNull(twoResults); assertEquals(twoResults.size(), 2); iterator = twoResults.iterator(); assertEquals(iterator.next().getId(), id1); assertEquals(iterator.next().getId(), id2); } }
@Override @AfterClass(groups = {"integration", "live"}) protected void tearDownContext() { for (String imageId : imagesToDeregister) client.deregisterImageInRegion(regionId, imageId); for (String snapshotId : snapshotsToDelete) ec2Client.getElasticBlockStoreServices().deleteSnapshotInRegion(regionId, snapshotId); super.tearDownContext(); }
@Override @BeforeClass(groups = {"integration", "live"}) public void setupContext() { super.setupContext(); ec2Client = view.unwrap(EC2ApiMetadata.CONTEXT_TOKEN).getApi(); runningTester = retry(new InstanceStateRunning(ec2Client), 600, 5, SECONDS); client = ec2Client.getAMIServices(); if (ebsTemplate != null) { Template template = view.getComputeService().templateBuilder().from(ebsTemplate).build(); regionId = template.getLocation().getId(); imageId = template.getImage().getProviderId(); for (Image image : client.describeImagesInRegion(regionId)) { if (ebsBackedImageName.equals(image.getName())) client.deregisterImageInRegion(regionId, image.getId()); } } }
@Test(dependsOnMethods = "testCreateAndListEBSBackedImage") public void testGetLaunchPermissionForImage() { client.getLaunchPermissionForImageInRegion(regionId, ebsBackedImageId); }
@Test(expectedExceptions = IllegalArgumentException.class) public void testDescribeImageBadId() { client.describeImagesInRegion(null, imageIds("asdaasdsa")); }
public void testDescribeImageNotExists() { assertEquals(client.describeImagesInRegion(null, imageIds("ami-cdf819a3")).size(), 0); }