summaryrefslogtreecommitdiffstats
path: root/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java
diff options
context:
space:
mode:
Diffstat (limited to 'openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java')
-rw-r--r--openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java76
1 files changed, 76 insertions, 0 deletions
diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java
new file mode 100644
index 0000000..ee9fe44
--- /dev/null
+++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java
@@ -0,0 +1,76 @@
+package com.woorea.openstack.examples.heat;
+
+/*
+ * Modifications copyright (c) 2017 AT&T Intellectual Property
+ */
+
+import com.woorea.openstack.examples.ExamplesConfiguration;
+import com.woorea.openstack.heat.Heat;
+import com.woorea.openstack.heat.model.CreateStackParam;
+import com.woorea.openstack.heat.model.Stack;
+import com.woorea.openstack.keystone.model.Access;
+import com.woorea.openstack.keystone.utils.KeystoneTokenProvider;
+import com.woorea.openstack.keystone.utils.KeystoneUtils;
+
+import java.util.Collections;
+
+public class HeatListStacks {
+
+ private static String TEMPLATE = "{\n" +
+ " \"HeatTemplateFormatVersion\": \"2012-12-12\",\n" +
+ " \"Parameters\": {},\n" +
+ " \"Mappings\": {},\n" +
+ " \"Resources\": {\n" +
+ " \"my-test-server\": {\n" +
+ " \"Type\": \"OS::Nova::Server\",\n" +
+ " \"Properties\": {\n" +
+ " \"flavor\": \"m1.small\",\n" +
+ " \"image\": \"centos:latest\"\n" +
+ " }\n" +
+ " }\n" +
+ " }\n" +
+ "}";
+
+ /**
+ * @param args
+ */
+ public static void main(String[] args) throws InterruptedException {
+ KeystoneTokenProvider keystone = new KeystoneTokenProvider(
+ ExamplesConfiguration.KEYSTONE_ENDPOINT,
+ ExamplesConfiguration.KEYSTONE_USERNAME,
+ ExamplesConfiguration.KEYSTONE_PASSWORD
+ );
+
+ Access access = keystone.getAccessByTenant(ExamplesConfiguration.TENANT_NAME);
+
+ String endpointURL = KeystoneUtils.findEndpointURL(access.getServiceCatalog(), "orchestration", null, "public");
+
+
+ Heat heat = new Heat(endpointURL);
+ heat.setTokenProvider(keystone
+ .getProviderByTenant(ExamplesConfiguration.TENANT_NAME));
+
+ CreateStackParam param = new CreateStackParam();
+ param.setStackName("helloWorld");
+ param.setTimeoutMinutes(1);
+ param.setParameters(Collections.<String, Object>emptyMap());
+ param.setTemplate(TEMPLATE);
+
+ System.out.printf("Create: " + heat.getStacks().create(param).execute());
+ Thread.sleep(3000);
+
+ for (Stack s : heat.getStacks().list().execute()) {
+ System.out.println(s.getDescription());
+ System.out.println(s.getId());
+ System.out.println(s.getStackName());
+ System.out.println(s.getStackStatus());
+ System.out.println(s.getCreationTime());
+ System.out.println(s.getUpdatedTime());
+ System.out.println(s.getLinks());
+
+ System.out.println(heat.getStacks().byName(s.getStackName()).execute());
+
+
+ }
+ }
+}