@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(); }
@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(); }
@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(); }
@Override public Image apply(ImageInRegion imageInRegion) { Location location = locationIndex.get().get(imageInRegion.getRegion()); checkState(location != null, "location %s not in locationIndex: %s", imageInRegion.getRegion(), locationIndex.get()); org.jclouds.openstack.nova.v2_0.domain.Image image = imageInRegion.getImage(); return new ImageBuilder().id(imageInRegion.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(); }
@Override public Image apply(ImageInRegion imageInRegion) { Location location = locationIndex.get().get(imageInRegion.getRegion()); checkState(location != null, "location %s not in locationIndex: %s", imageInRegion.getRegion(), locationIndex.get()); org.jclouds.openstack.nova.v2_0.domain.Image image = imageInRegion.getImage(); return new ImageBuilder().id(imageInRegion.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(); }
@Override public Image apply(ImageInRegion imageInRegion) { Location location = locationIndex.get().get(imageInRegion.getRegion()); checkState(location != null, "location %s not in locationIndex: %s", imageInRegion.getRegion(), locationIndex.get()); org.jclouds.openstack.nova.v2_0.domain.Image image = imageInRegion.getImage(); return new ImageBuilder().id(imageInRegion.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(); }
@Override public Image apply(final OSImage image) { final ImageBuilder builder = new ImageBuilder() .id(image.name()) .name(image.label()) .description(image.description()) .status(Image.Status.AVAILABLE) .uri(image.mediaLink()) .providerId(image.name()) .location(FluentIterable.from(locations.get()) .firstMatch(LocationPredicates.idEquals(image.location())).orNull()); final OperatingSystem.Builder osBuilder = osFamily().apply(image); return builder.operatingSystem(osBuilder.build()).build(); }
@Override public Image apply(DatasetInDatacenter datasetInDatacenter) { Location location = locationIndex.get().get(datasetInDatacenter.getDatacenter()); checkState(location != null, "location %s not in locationIndex: %s", datasetInDatacenter.getDatacenter(), locationIndex.get()); Dataset dataset = datasetInDatacenter.get(); return new ImageBuilder() .id(datasetInDatacenter.slashEncode()) .providerId(dataset.getId()) .name(dataset.getName()) .operatingSystem(imageToOs.apply(dataset)) .description(dataset.getUrn()) .version(dataset.getVersion()) .location(location) .status(Image.Status.AVAILABLE).build(); } }
@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(); } }
private TemplateBuilder newTemplateBuilder() { final Supplier<Set<? extends Image>> images = Suppliers.<Set<? extends Image>> ofInstance(ImmutableSet.<Image> of( new ImageBuilder().providerId("cc-image").name("image").id("us-east-1/cc-image").location(location) .operatingSystem(new OperatingSystem(OsFamily.UBUNTU, null, "1.0", "hvm", "ubuntu", true)) .description("description").version("1.0").defaultCredentials(LoginCredentials.builder().user("root").build()) .status(Image.Status.AVAILABLE) .build(), new ImageBuilder().providerId("normal-image").name("image").id("us-east-1/normal-image").location(location) .operatingSystem(new OperatingSystem(OsFamily.UBUNTU, null, "1.0", "paravirtual", "ubuntu", true)) .description("description").version("1.0").defaultCredentials(LoginCredentials.builder().user("root").build()) .status(Image.Status.AVAILABLE) .build())); // weird compilation error means have to cast this - see https://bugs.eclipse.org/bugs/show_bug.cgi?id=365818 @SuppressWarnings("unchecked") ImmutableMap<RegionAndName, Image> imageMap = (ImmutableMap<RegionAndName, Image>) ImagesToRegionAndIdMap.imagesToMap(images.get()); Supplier<LoadingCache<RegionAndName, ? extends Image>> imageCache = Suppliers.<LoadingCache<RegionAndName, ? extends Image>> ofInstance( CacheBuilder.newBuilder().<RegionAndName,Image>build(CacheLoader.from(Functions.forMap(imageMap)))); return newTemplateBuilder(images, imageCache); }
@Override public Image getImage(String id) { return new ImageBuilder().id(id).providerId(id).name("imageName-" + id).description("imageDescription") .version("imageVersion").operatingSystem(os).status(Image.Status.AVAILABLE).location(location).build(); } };
public void testParseVostokImage() { Set<org.jclouds.compute.domain.Image> result = convertImages("/vostok.xml"); assertEquals( Iterables.get(result, 0), new ImageBuilder() .operatingSystem( new OperatingSystem.Builder().family(OsFamily.UNRECOGNIZED).arch("paravirtual").version("") .description("vostok-builds/vostok-0.95-5622/vostok-0.95-5622.manifest.xml") .is64Bit(false).build()) .description("vostok-builds/vostok-0.95-5622/vostok-0.95-5622.manifest.xml") .defaultCredentials(LoginCredentials.builder().user("root").build()).id("us-east-1/ami-870de2ee") .providerId("ami-870de2ee").location(defaultLocation).version("5622") .userMetadata(ImmutableMap.of("owner", "133804938231", "rootDeviceType", "instance-store")) .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).build()); }
@Test public void testWhenNoHardwareOrImageMatchServerScopedIdsImageIdIsStillSet() { Hardware existingHardware = new HardwareBuilder().id("az-1.region-a.geo-1/FOOOOOOOO").providerId("FOOOOOOOO") .location(zone).build(); Image existingImage = new ImageBuilder().id("az-1.region-a.geo-1/FOOOOOOOO") .operatingSystem(OperatingSystem.builder().family(OsFamily.LINUX).description("foobuntu").build()) .providerId("FOOOOOOOO").description("foobuntu").location(zone).status(Image.Status.AVAILABLE).build(); checkHardwareAndImageStatus(null, existingHardware, "az-1.region-a.geo-1/52415800-8b69-11e0-9b19-734f6f006e54", null, existingImage); }
@Test public void testWhenNoHardwareOrImageMatchServerScopedIdsImageIdIsStillSet() { Hardware existingHardware = new HardwareBuilder().id("az-1.region-a.geo-1/FOOOOOOOO").providerId("FOOOOOOOO") .location(region).build(); Image existingImage = new ImageBuilder().id("az-1.region-a.geo-1/FOOOOOOOO") .operatingSystem(OperatingSystem.builder().family(OsFamily.LINUX).description("foobuntu").build()) .providerId("FOOOOOOOO").description("foobuntu").location(region).status(Image.Status.AVAILABLE).build(); checkHardwareAndImageStatus(null, existingHardware, "az-1.region-a.geo-1/52415800-8b69-11e0-9b19-734f6f006e54", null, existingImage); }
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 testWhenNoHardwareAndImageMatchServerScopedIdsHardwareOperatingSystemAndImageIdAreSet() { Hardware existingHardware = new HardwareBuilder().id("az-1.region-a.geo-1/52415800-8b69-11e0-9b19-734f216543fd") .providerId("52415800-8b69-11e0-9b19-734f216543fd").location(zone).build(); Image existingImage = new ImageBuilder().id("az-1.region-a.geo-1/52415800-8b69-11e0-9b19-734f6f006e54") .operatingSystem(OperatingSystem.builder().family(OsFamily.LINUX).description("foobuntu").build()) .providerId("52415800-8b69-11e0-9b19-734f6f006e54").description("foobuntu").status(Image.Status.AVAILABLE) .location(zone).build(); checkHardwareAndImageStatus(existingHardware, existingHardware, existingImage.getId(), existingImage.getOperatingSystem(), existingImage); }
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()); }
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()); }
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 testWhenNoHardwareAndImageMatchServerScopedIdsHardwareOperatingSystemAndImageIdAreSet() { Hardware existingHardware = new HardwareBuilder().id("az-1.region-a.geo-1/52415800-8b69-11e0-9b19-734f216543fd") .providerId("52415800-8b69-11e0-9b19-734f216543fd").location(region).build(); Image existingImage = new ImageBuilder().id("az-1.region-a.geo-1/52415800-8b69-11e0-9b19-734f6f006e54") .operatingSystem(OperatingSystem.builder().family(OsFamily.LINUX).description("foobuntu").build()) .providerId("52415800-8b69-11e0-9b19-734f6f006e54").description("foobuntu").status(Image.Status.AVAILABLE) .location(region).build(); checkHardwareAndImageStatus(existingHardware, existingHardware, existingImage.getId(), existingImage.getOperatingSystem(), existingImage); }