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); } }
@Test(expectedExceptions = AWSResponseException.class) public void testDescribeImagesWithInvalidFilter() { // Just run in the first region - no need to take the time on all of them. String region = getFirst(ec2Api.getConfiguredRegions(), null); assertNotNull(region, "region should not be null"); Set<? extends Image> allResults = client.describeImagesInRegion(region); assertNotNull(allResults); assertTrue(allResults.size() >= 2); String id1 = allResults.iterator().next().getId(); Set<? extends Image> filterResult = client.describeImagesInRegionWithFilter(region, ImmutableMultimap.<String, String>builder() .put("invalid-filter-id", id1) .build()); assertNotNull(filterResult); assertEquals(filterResult.size(), 1); assertEquals(filterResult.iterator().next().getId(), id1); }
public void testDescribeImages() { // Just run in the first region - no need to take the time on all of them. String region = getFirst(ec2Api.getConfiguredRegions(), null); assertNotNull(region, "region should not be null"); Set<? extends Image> allResults = client.describeImagesInRegion(region); assertNotNull(allResults); assertTrue(allResults.size() >= 2); 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); }
@Test public void testDescribeImagesWithFilter() { // Just run in the first region - no need to take the time on all of them. String region = getFirst(ec2Api.getConfiguredRegions(), null); assertNotNull(region, "region should not be null"); Set<? extends Image> allResults = client.describeImagesInRegion(region); assertNotNull(allResults); assertTrue(allResults.size() >= 2); String id1 = allResults.iterator().next().getId(); Set<? extends Image> filterResult = client.describeImagesInRegionWithFilter(region, ImmutableMultimap.<String, String>builder() .put("image-id", id1) .build()); assertNotNull(filterResult); assertEquals(filterResult.size(), 1); assertEquals(filterResult.iterator().next().getId(), id1); }
@Test(enabled = false, dependsOnMethods = { "testAMIFromBundle" }) public void testInstanceFromEBS() throws Exception { System.out.printf("%d: %s creating instance from ebs-backed ami%n", System.currentTimeMillis(), ebsImage.getId()); ebsInstance = createInstance(ebsImage.getId()); client.getInstanceServices().stopInstancesInRegion(ebsInstance.getRegion(), true, ebsInstance.getId()); System.out.printf("%d: %s awaiting instance to stop %n", System.currentTimeMillis(), ebsInstance.getId()); stoppedTester.apply(ebsInstance); tryToChangeStuff(); System.out.printf("%d: %s awaiting instance to start %n", System.currentTimeMillis(), ebsInstance.getId()); client.getInstanceServices().startInstancesInRegion(ebsInstance.getRegion(), ebsInstance.getId()); ebsInstance = blockUntilWeCanSshIntoInstance(ebsInstance); }
public void testFilterWhenResponseIs2xx() { HttpResponse filterResponse = HttpResponse.builder().statusCode(200) .payload(payloadFromResourceWithContentType("/describe_images.xml", "text/xml")).build(); EC2Api apiWhenExist = requestsSendResponses(describeRegionsRequest, describeRegionsResponse, filter, filterResponse); Image image = getOnlyElement(apiWhenExist.getAMIApi().get().describeImagesInRegionWithFilter("us-east-1", ImmutableMultimap.<String, String>builder() .put("owner-id", "206029621532") .build())); assertEquals(image.getId(), "ami-be3adfd7"); }
@Test(enabled = false, dependsOnMethods = { "testAMIFromBundle" }) public void testInstanceFromEBS() throws Exception { System.out.printf("%d: %s creating instance from ebs-backed ami%n", System.currentTimeMillis(), ebsImage.getId()); ebsInstance = createInstance(ebsImage.getId()); client.getInstanceApi().get().stopInstancesInRegion(ebsInstance.getRegion(), true, ebsInstance.getId()); System.out.printf("%d: %s awaiting instance to stop %n", System.currentTimeMillis(), ebsInstance.getId()); stoppedTester.apply(ebsInstance); tryToChangeStuff(); System.out.printf("%d: %s awaiting instance to start %n", System.currentTimeMillis(), ebsInstance.getId()); client.getInstanceApi().get().startInstancesInRegion(ebsInstance.getRegion(), ebsInstance.getId()); ebsInstance = blockUntilWeCanSshIntoInstance(ebsInstance); }
@Override public void reviseParsedImage(org.jclouds.ec2.domain.Image from, ImageBuilder builder, OsFamily family, OperatingSystem.Builder osBuilder) { Image image = Image.builder().id(from.getId()).name(from.getName()).build(); OperatingSystem os = imageToOs.apply(image); osBuilder.description(os.getDescription()); osBuilder.family(os.getFamily()); osBuilder.name(os.getName()); osBuilder.is64Bit(os.is64Bit()); osBuilder.version(os.getVersion()); // arch is accurate already } }
builder.providerId(from.getId()); builder.id(from.getRegion() + "/" + from.getId()); builder.name(from.getName()); builder.description(from.getDescription() != null ? from.getDescription() : from.getImageLocation()); logger.error("unknown region %s for image %s; not in %s", from.getRegion(), from.getId(), locations); builder.location(new LocationBuilder().scope(LocationScope.REGION).id(from.getRegion()).description( from.getRegion()).parent(defaultLocation.get()).build());
@Override public void reviseParsedImage(org.jclouds.ec2.domain.Image from, ImageBuilder builder, OsFamily family, OperatingSystem.Builder osBuilder) { Image image = Image.builder().id(from.getId()).name(from.getName()).build(); OperatingSystem os = imageToOs.apply(image); osBuilder.description(os.getDescription()); osBuilder.family(os.getFamily()); osBuilder.name(os.getName()); osBuilder.is64Bit(os.is64Bit()); osBuilder.version(os.getVersion()); // arch is accurate already } }
@Override public void reviseParsedImage(org.jclouds.ec2.domain.Image from, ImageBuilder builder, OsFamily family, OperatingSystem.Builder osBuilder) { Image image = Image.builder().id(from.getId()).name(from.getName()).build(); OperatingSystem os = imageToOs.apply(image); osBuilder.description(os.getDescription()); osBuilder.family(os.getFamily()); osBuilder.name(os.getName()); osBuilder.is64Bit(os.is64Bit()); osBuilder.version(os.getVersion()); // arch is accurate already } }
builder.providerId(from.getId()); builder.id(from.getRegion() + "/" + from.getId()); builder.name(from.getName()); builder.description(from.getDescription() != null ? from.getDescription() : from.getImageLocation()); logger.error("unknown region %s for image %s; not in %s", from.getRegion(), from.getId(), locations); builder.location(new LocationBuilder().scope(LocationScope.REGION).id(from.getRegion()).description( from.getRegion()).parent(defaultLocation.get()).build());
@Override @BeforeClass(groups = { "integration", "live" }) public void setupContext() { super.setupContext(); ec2Api = view.unwrapApi(EC2Api.class); runningTester = retry(new InstanceStateRunning(ec2Api), 600, 5, SECONDS); client = ec2Api.getAMIApi().get(); if (ebsTemplate != null) { Template template = view.getComputeService().templateBuilder().from(ebsTemplate).build(); regionId = template.getLocation().getId(); imageId = template.getImage().getProviderId(); for (Image image : client.describeImagesInRegionWithFilter(regionId, ImmutableMultimap.<String, String>builder() .put("name", ebsBackedImageName).build())) { if (ebsBackedImageName.equals(image.getName())) client.deregisterImageInRegion(regionId, image.getId()); } } }
"ebsboot-" + image.getId(), snapshot.getId(), withKernelId(image.getKernelId()).withRamdisk(image.getRamdiskId()).withDescription(description)
@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()); } } }