Refine search
@Override public Image apply(org.jclouds.deltacloud.domain.Image from) { ImageBuilder builder = new ImageBuilder(); builder.id(from.getHref().toASCIIString()); builder.providerId(from.getId()); builder.uri(from.getHref()); builder.name(from.getName()); builder.description(from.getDescription()); builder.operatingSystem(imageToOperatingSystem.apply(from)); builder.status(Status.AVAILABLE); return builder.build(); } }
public Image apply(org.jclouds.rimuhosting.miro.domain.Image from) { ImageBuilder builder = new ImageBuilder(); builder.ids(from.getId() + ""); builder.name(from.getDescription()); builder.description(from.getDescription()); builder.operatingSystem(parseOs(from)); builder.status(Status.AVAILABLE); return builder.build(); }
@Override public Image apply(VCloudExpressVAppTemplate from) { ImageBuilder builder = new ImageBuilder(); builder.ids(from.getHref().toASCIIString()); builder.uri(from.getHref()); builder.name(from.getName()); builder.location(findLocationForResource.apply(checkNotNull(parent, "parent"))); builder.description(from.getDescription() != null ? from.getDescription() : from.getName()); builder.operatingSystem(parseOs(from)); builder.defaultCredentials(credentialsProvider.execute(from)); return builder.build(); }
public static ImageBuilder fromImage(Image image) { return new ImageBuilder().providerId(image.getProviderId()).name(image.getName()).id(image.getId()).location( image.getLocation()).uri(image.getUri()).userMetadata(image.getUserMetadata()).tags(image.getTags()) .version(image.getVersion()).description(image.getDescription()).operatingSystem( image.getOperatingSystem()).status(image.getStatus()).backendStatus(image.getBackendStatus()) .defaultCredentials(image.getDefaultCredentials()); }
@Test public void testNewWindowsName() throws Exception { ReviseParsedImage rpi = new AWSEC2ReviseParsedImage(osVersionMap); Image from = newImage("amazon", "Windows_Server-2008-R2_SP1-English-64Bit-Base-2012.03.13"); OperatingSystem.Builder osBuilder = OperatingSystem.builder().description("test"); ImageBuilder builder = new ImageBuilder().id("1").operatingSystem(osBuilder.build()).status( org.jclouds.compute.domain.Image.Status.AVAILABLE).description("test"); OsFamily family = OsFamily.WINDOWS; rpi.reviseParsedImage(from, builder, family, osBuilder); OperatingSystem os = osBuilder.build(); assertEquals(os.getFamily(), OsFamily.WINDOWS); assertEquals(os.getVersion(), "2008"); assertEquals(builder.build().getVersion(), "2012.03.13"); }
Image expected = new ImageBuilder() .ids(image.id()) .name(image.name()) .location(location) .status(Image.Status.AVAILABLE) .operatingSystem(OperatingSystem.builder() .description("UBUNTU") .family(OsFamily.UBUNTU) .version("14.04") .is64Bit(false) .build()) .userMetadata(ImmutableMap.of("provisionableType", "image")) .build(); assertEquals(actual, expected);
@Test public void createByCloningAddsDefaultImageCredentials() throws InterruptedException, ExecutionException { LoginCredentials credentials = LoginCredentials.builder().user("jclouds").password("pass").build(); ImageCacheSupplier imageCache = createMock(ImageCacheSupplier.class); ImageExtension delegate = createMock(ImageExtension.class); AddDefaultCredentialsToImage credsToImage = createMock(AddDefaultCredentialsToImage.class); Map<String, Credentials> credentialStore = Collections.emptyMap(); ImageTemplate template = new CloneImageTemplateBuilder().name("test").nodeId("node1").build(); Image result = new ImageBuilder().id("test") .operatingSystem(OperatingSystem.builder().description("test").build()).status(Status.AVAILABLE).build(); expect(delegate.createImage(template)).andReturn(immediateFuture(result)); expect(credsToImage.apply(result)).andReturn( ImageBuilder.fromImage(result).defaultCredentials(credentials).build()); replay(delegate, credsToImage); Future<Image> image = new DelegatingImageExtension(imageCache, delegate, credsToImage, credentialStore) .createImage(template); assertEquals(image.get().getDefaultCredentials(), credentials); verify(delegate, credsToImage); } }
@Test public void createByCloningAddsNodeCredentials() throws InterruptedException, ExecutionException { Credentials credentials = LoginCredentials.builder().user("jclouds").password("pass").build(); ImageCacheSupplier imageCache = createMock(ImageCacheSupplier.class); ImageExtension delegate = createMock(ImageExtension.class); AddDefaultCredentialsToImage credsToImage = createMock(AddDefaultCredentialsToImage.class); Map<String, Credentials> credentialStore = ImmutableMap.of("node#node1", credentials); ImageTemplate template = new CloneImageTemplateBuilder().name("test").nodeId("node1").build(); Image result = new ImageBuilder().id("test") .operatingSystem(OperatingSystem.builder().description("test").build()).status(Status.AVAILABLE).build(); expect(delegate.createImage(template)).andReturn(immediateFuture(result)); replay(delegate, credsToImage); Future<Image> image = new DelegatingImageExtension(imageCache, delegate, credsToImage, credentialStore) .createImage(template); assertEquals(image.get().getDefaultCredentials(), credentials); verify(delegate, credsToImage); }
@Test public void createByCloningDoesNothingIfImageHasCredentials() throws InterruptedException, ExecutionException { LoginCredentials credentials = LoginCredentials.builder().user("jclouds").password("pass").build(); ImageCacheSupplier imageCache = createMock(ImageCacheSupplier.class); ImageExtension delegate = createMock(ImageExtension.class); AddDefaultCredentialsToImage credsToImage = createMock(AddDefaultCredentialsToImage.class); ImageTemplate template = new CloneImageTemplateBuilder().name("test").nodeId("node1").build(); Image result = new ImageBuilder().id("test") .operatingSystem(OperatingSystem.builder().description("test").build()).status(Status.AVAILABLE) .defaultCredentials(credentials).build(); expect(delegate.createImage(template)).andReturn(immediateFuture(result)); replay(delegate, credsToImage); Future<Image> image = new DelegatingImageExtension(imageCache, delegate, credsToImage, null) .createImage(template); // Verify that the exact same instance is returned unmodified assertTrue(image.get() == result); verify(delegate, credsToImage); }
@Test public void testRegisterNewImage() { ImageCacheSupplier imageCache = new ImageCacheSupplier(Suppliers.<Set<? extends Image>> ofInstance(images), 60, Atomics.<AuthorizationException> newReference(), Providers.of(getImageStrategy)); assertEquals(imageCache.get().size(), 1); imageCache.registerImage(ImageBuilder.fromImage(image).id("newimage").build()); assertEquals(imageCache.get().size(), 2); }
/** * Ensures that an explicitly set null Image description results in no errors. */ public void testNullDescription() { Image img = new ImageBuilder().id("test-id") .description(null) .status(Status.AVAILABLE) .operatingSystem(new OperatingSystem(OsFamily.CLOUD_LINUX, null, null, null, "os-description", true)) .build(); assertNull(img.getDescription()); } }
@Override public Image apply(DiskImage from) { checkNotNull(from, "disk image"); ImageBuilder builder = new ImageBuilder(); builder.ids(from.getId()); builder.name(from.getName()); builder.description(from.getDescription()); // in fgcp, if the image is listed it is available builder.status(Status.AVAILABLE); OperatingSystem os = diskImageToOperatingSystem.apply(from); builder.operatingSystem(os); String user = os.getFamily() == OsFamily.WINDOWS ? "Administrator" : "root"; builder.defaultCredentials(LoginCredentials.builder().identity(user).noPassword().build()); return builder.build(); } }
public void testUserMetadataContains() { Image first = Iterables.get(computeService.listImages(), 0); first = ImageBuilder.fromImage(first).userMetadata(ImmutableMap.of("foo", "bar")).build(); assert ImagePredicates.userMetadataContains("foo", "bar").apply(first); Image second = Iterables.get(computeService.listImages(), 1); second = ImageBuilder.fromImage(second).userMetadata(ImmutableMap.of("foo", "baz")).build(); assert !ImagePredicates.userMetadataContains("foo", "bar").apply(second); }
@Override public ImageBuilder addTypeMetadata(ImageBuilder builder) { return builder.userMetadata(ImmutableMap.of(KEY_PROVISIONABLE_TYPE, Provisionable.Type.IMAGE.toString())); } }
@Test public void testOldWindowsName() throws Exception { ReviseParsedImage rpi = new AWSEC2ReviseParsedImage(osVersionMap); Image from = newImage("amazon", "Windows-2008R2-SP1-English-Base-2012.01.12"); OperatingSystem.Builder osBuilder = OperatingSystem.builder().description("test"); ImageBuilder builder = new ImageBuilder().id("1").operatingSystem(osBuilder.build()).status( org.jclouds.compute.domain.Image.Status.AVAILABLE).description("test"); OsFamily family = OsFamily.WINDOWS; rpi.reviseParsedImage(from, builder, family, osBuilder); OperatingSystem os = osBuilder.build(); assertEquals(os.getFamily(), OsFamily.WINDOWS); assertEquals(os.getVersion(), "2008"); assertEquals(builder.build().getVersion(), "2012.01.12"); }
public static ImageBuilder fromImage(Image image) { return new ImageBuilder().providerId(image.getProviderId()).name(image.getName()).id(image.getId()).location( image.getLocation()).uri(image.getUri()).userMetadata(image.getUserMetadata()).tags(image.getTags()) .version(image.getVersion()).description(image.getDescription()).operatingSystem( image.getOperatingSystem()).status(image.getStatus()).backendStatus(image.getBackendStatus()) .defaultCredentials(image.getDefaultCredentials()); }
@Override public Image apply(DiskImage from) { checkNotNull(from, "disk image"); ImageBuilder builder = new ImageBuilder(); builder.ids(from.getId()); builder.name(from.getName()); builder.description(from.getDescription()); // in fgcp, if the image is listed it is available builder.status(Status.AVAILABLE); OperatingSystem os = diskImageToOperatingSystem.apply(from); builder.operatingSystem(os); String user = os.getFamily() == OsFamily.WINDOWS ? "Administrator" : "root"; builder.defaultCredentials(LoginCredentials.builder().identity(user).noPassword().build()); return builder.build(); } }
public void testUserMetadataContains() { Image first = Iterables.get(computeService.listImages(), 0); first = ImageBuilder.fromImage(first).userMetadata(ImmutableMap.of("foo", "bar")).build(); assert ImagePredicates.userMetadataContains("foo", "bar").apply(first); Image second = Iterables.get(computeService.listImages(), 1); second = ImageBuilder.fromImage(second).userMetadata(ImmutableMap.of("foo", "baz")).build(); assert !ImagePredicates.userMetadataContains("foo", "bar").apply(second); }
@Override public ImageBuilder addTypeMetadata(ImageBuilder builder) { return builder.userMetadata(ImmutableMap.of(KEY_PROVISIONABLE_TYPE, Provisionable.Type.SNAPSHOT.toString())); } }
@Override public Image apply(ImageInZone imageInZone) { Location location = locationIndex.get().get(imageInZone.getZone()); checkState(location != null, "location %s not in locationIndex: %s", imageInZone.getZone(), locationIndex.get()); org.jclouds.openstack.nova.v2_0.domain.Image image = imageInZone.getImage(); return new ImageBuilder().id(imageInZone.slashEncode()).providerId(image.getId()).name(image.getName()) .userMetadata(image.getMetadata()).operatingSystem(imageToOs.apply(image)).description(image.getName()) .location(location).status(toPortableImageStatus.get(image.getStatus())).build(); }