summaryrefslogtreecommitdiffstats
path: root/openstack-examples/src/main/java/com/woorea/openstack/examples/glance
diff options
context:
space:
mode:
authorChrisC <cc697w@intl.att.com>2017-01-31 13:57:24 +0100
committerChrisC <cc697w@intl.att.com>2017-01-31 14:55:11 +0100
commit2e984294ac28c6f2ede290c38164c5d536ccaf4a (patch)
tree5eba5a929b7a961c98749fa69e03cfea58e1a724 /openstack-examples/src/main/java/com/woorea/openstack/examples/glance
parent86c0f28c8ed469486b64d6422dc53e3a7bcc8adb (diff)
Initial OpenECOMP MSO OpenStack SDK lib commit
Change-Id: Ieaacb2b2c0dcc469669880e73f0cda9fa59a6c5a Signed-off-by: ChrisC <cc697w@intl.att.com>
Diffstat (limited to 'openstack-examples/src/main/java/com/woorea/openstack/examples/glance')
-rw-r--r--openstack-examples/src/main/java/com/woorea/openstack/examples/glance/GlanceListImages.java83
1 files changed, 83 insertions, 0 deletions
diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/glance/GlanceListImages.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/glance/GlanceListImages.java
new file mode 100644
index 0000000..ea687aa
--- /dev/null
+++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/glance/GlanceListImages.java
@@ -0,0 +1,83 @@
+package com.woorea.openstack.examples.glance;
+
+import com.woorea.openstack.glance.model.ImageDownload;
+import com.woorea.openstack.glance.model.ImageUpload;
+import com.woorea.openstack.keystone.utils.KeystoneTokenProvider;
+
+import com.woorea.openstack.examples.ExamplesConfiguration;
+import com.woorea.openstack.glance.Glance;
+import com.woorea.openstack.glance.model.Image;
+import com.woorea.openstack.glance.model.Images;
+import com.woorea.openstack.keystone.model.Access;
+import com.woorea.openstack.keystone.model.Access.Service;
+import com.woorea.openstack.keystone.model.Access.Service.Endpoint;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+
+public class GlanceListImages {
+
+ protected static String IMAGE_CONTENT = "Hello World!";
+
+ /**
+ * @param args
+ */
+ public static void main(String[] args) {
+ KeystoneTokenProvider keystone = new KeystoneTokenProvider(
+ ExamplesConfiguration.KEYSTONE_AUTH_URL,
+ ExamplesConfiguration.KEYSTONE_USERNAME,
+ ExamplesConfiguration.KEYSTONE_PASSWORD);
+
+ Access access = keystone.getAccessByTenant(ExamplesConfiguration.TENANT_NAME);
+
+ Service glanceService = null;
+
+ for (Service service : access.getServiceCatalog()) {
+ if (service.getType().equals("image")) {
+ glanceService = service;
+ break;
+ }
+ }
+
+ if (glanceService == null) {
+ throw new RuntimeException("Glance service not found");
+ }
+
+ for (Endpoint endpoint : glanceService.getEndpoints()) {
+ Glance glance = new Glance(endpoint.getPublicURL() + "/v1");
+ glance.setTokenProvider(keystone
+ .getProviderByTenant(ExamplesConfiguration.TENANT_NAME));
+
+ // Creating a new image
+ Image newImage = new Image();
+ newImage.setDiskFormat("raw");
+ newImage.setContainerFormat("bare");
+ newImage.setName("os-java-glance-test");
+ newImage = glance.images().create(newImage).execute();
+
+ // Uploading image
+ ImageUpload uploadImage = new ImageUpload(newImage);
+ uploadImage.setInputStream(new ByteArrayInputStream(IMAGE_CONTENT.getBytes()));
+ glance.images().upload(newImage.getId(), uploadImage).execute();
+
+ // Downloading the image and displaying the image content
+ try {
+ byte[] imgContent = new byte[IMAGE_CONTENT.length()];
+ ImageDownload downloadImage = glance.images().download(newImage.getId()).execute();
+ downloadImage.getInputStream().read(imgContent, 0, imgContent.length);
+ System.out.println(new String(imgContent));
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+
+ Images images = glance.images().list(false).execute();
+
+ for (Image image : images) {
+ System.out.println(glance.images().show(image.getId()).execute());
+ }
+
+ glance.images().delete(newImage.getId()).execute();
+ }
+ }
+
+}