@Test(groups = "live", dependsOnMethods = "testListImage") public void testGetImage() { assertEquals(image, api().get(image.selfLink())); }
private void assertImageEquals(Image result) { assertEquals(result.name(), IMAGE_NAME); assertEquals(result.sourceType(), "RAW"); assertEquals(result.selfLink(), getImageUrl(IMAGE_NAME) ); } }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.selfLink().toString()) .providerId(image.id()) .name(image.name()) .providerId(image.id()) .description(image.description()) .status(Status.AVAILABLE) .uri(image.selfLink()); if (image.deprecated() != null) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.deprecated().state().name())); if (image.deprecated().state() == State.DELETED){ builder.status(Status.DELETED); } } builder.version(image.name().substring(image.name().lastIndexOf('-') + 1)); builder.operatingSystem(nameToOperatingSystem.apply(image.name())); return builder.build(); } }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.selfLink().toString()) .providerId(image.id()) .name(image.name()) .providerId(image.id()) .description(image.description()) .status(Status.AVAILABLE) .uri(image.selfLink()); if (image.deprecated() != null) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.deprecated().state().name())); if (image.deprecated().state() == State.DELETED){ builder.status(Status.DELETED); } } builder.version(image.name().substring(image.name().lastIndexOf('-') + 1)); builder.operatingSystem(nameToOperatingSystem.apply(image.name())); return builder.build(); } }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.selfLink().toString()) .providerId(image.id()) .name(image.name()) .providerId(image.id()) .description(image.description()) .status(Status.AVAILABLE) .uri(image.selfLink()); if (image.deprecated() != null) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.deprecated().state().name())); if (image.deprecated().state() == State.DELETED){ builder.status(Status.DELETED); } } builder.version(image.name().substring(image.name().lastIndexOf('-') + 1)); builder.operatingSystem(nameToOperatingSystem.apply(image.name())); return builder.build(); } }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.selfLink().toString()) .providerId(image.id()) .name(image.name()) .providerId(image.id()) .description(image.description()) .status(Status.AVAILABLE) .uri(image.selfLink()); if (image.deprecated() != null) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.deprecated().state().name())); if (image.deprecated().state() == State.DELETED){ builder.status(Status.DELETED); } } builder.version(image.name().substring(image.name().lastIndexOf('-') + 1)); builder.operatingSystem(nameToOperatingSystem.apply(image.name())); return builder.build(); } }
@Override protected GoogleComputeEngineApi create(Properties props, Iterable<Module> modules) { GoogleComputeEngineApi api = super.create(props, modules); reset_windows_password = injector.getInstance(Key.get(new TypeLiteral<Function<Map<String, ?>, String>>() {})); List<Image> list = api.images().listInProject("windows-cloud", filter("name eq windows-server-2012.*")).next(); URI imageUri = FluentIterable.from(list) .filter(new Predicate<Image>() { @Override public boolean apply(Image input) { // filter out all deprecated images return !(input.deprecated() != null && input.deprecated().state() != null); } }) .first() .get() .selfLink(); instance = NewInstance.create( INSTANCE_NAME, getDefaultMachineTypeUrl(), getNetworkUrl(INSTANCE_NETWORK_NAME), null, imageUri ); return api; }
.hostname(input.name()) .location(zone) .imageId(image.isPresent() ? image.get().selfLink().toString() : null) .hardware(hardware) .status(input.status() != null ? toPortableNodeStatus.get(input.status()) : Status.UNRECOGNIZED)
.hostname(input.name()) .location(zone) .imageId(image.isPresent() ? image.get().selfLink().toString() : null) .hardware(hardware) .status(input.status() != null ? toPortableNodeStatus.get(input.status()) : Status.UNRECOGNIZED)
.hostname(input.name()) .location(zone) .imageId(image != null ? image.selfLink().toString() : null) .hardware(hardware) .status(input.status() != null ? toPortableNodeStatus.get(input.status()) : Status.UNRECOGNIZED)
public void testWellFormedImageName() { GoogleComputeEngineImageToImage imageToImage = new GoogleComputeEngineImageToImage(new ImageNameToOperatingSystem()); Image image = image("ubuntu-12-04-v123123", null); org.jclouds.compute.domain.Image transformed = imageToImage.apply(image); assertEquals(transformed.getName(), image.name()); assertEquals(transformed.getId(), image.selfLink().toString()); assertEquals(transformed.getProviderId(), image.id()); assertSame(transformed.getOperatingSystem().getFamily(), OsFamily.UBUNTU); assertEquals(transformed.getOperatingSystem().getVersion(), "12.04"); }
public void testArbitraryImageName() { GoogleComputeEngineImageToImage imageToImage = new GoogleComputeEngineImageToImage(new ImageNameToOperatingSystem()); Image image = image("arbitratyname", null); org.jclouds.compute.domain.Image transformed = imageToImage.apply(image); assertEquals(transformed.getName(), image.name()); assertEquals(transformed.getId(), image.selfLink().toString()); assertEquals(transformed.getProviderId(), image.id()); assertSame(transformed.getOperatingSystem().getFamily(), OsFamily.LINUX); }
public void testDeleted(){ GoogleComputeEngineImageToImage imageToImage = new GoogleComputeEngineImageToImage(new ImageNameToOperatingSystem()); Deprecated deprecated = Deprecated.create( State.DELETED, // state URI.create("http://baseurl/projects/centos-cloud/global/images/centos-6-2-v20120326test"), // replacement "2014-07-16T22:16:13.468Z", // deprecated "2015-07-16T22:16:13.468Z", // obsolete "2016-07-16T22:16:13.468Z"); // deleted Image image = image("test-deprecated", deprecated); org.jclouds.compute.domain.Image transformed = imageToImage.apply(image); assertEquals(transformed.getName(), image.name()); assertEquals(transformed.getId(), image.selfLink().toString()); assertEquals(transformed.getProviderId(), image.id()); assertSame(transformed.getOperatingSystem().getFamily(), OsFamily.LINUX); assertEquals(transformed.getUserMetadata().get("deprecatedState"), image.deprecated().state().name()); assertEquals(transformed.getStatus(), Status.DELETED); }
@Override protected GoogleComputeEngineApi create(Properties props, Iterable<Module> modules) { GoogleComputeEngineApi api = super.create(props, modules); List<Image> list = api.images().listInProject("centos-cloud", filter("name eq centos.*")).next(); URI imageUri = FluentIterable.from(list) .filter(new Predicate<Image>() { @Override public boolean apply(Image input) { // filter out all deprecated images return !(input.deprecated() != null && input.deprecated().state() != null); } }) .first() .get() .selfLink(); NewInstance newInstance = NewInstance.create( INSTANCE_NAME, // name getDefaultMachineTypeUrl(), // machineType getNetworkUrl(INSTANCE_NETWORK_NAME), // network null, // subnetwork imageUri); // need to insert the network first assertOperationDoneSuccessfully(api.networks().createLegacy(INSTANCE_NETWORK_NAME, IPV4_RANGE)); assertOperationDoneSuccessfully(api.instancesInZone(DEFAULT_ZONE_NAME).create(newInstance)); instance = api.instancesInZone(DEFAULT_ZONE_NAME).get(INSTANCE_NAME); assertNotNull(instance); return api; }
.first() .get() .selfLink();
.first().get().selfLink();