You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ra...@apache.org on 2015/08/21 09:10:05 UTC

[52/52] [abbrv] stratos git commit: Adding network resource to GCE, removing default inbound ports

Adding network resource to GCE, removing default inbound ports


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/92ff7e9b
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/92ff7e9b
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/92ff7e9b

Branch: refs/heads/master
Commit: 92ff7e9b5800d578a37d6aa82551d60fbdd66529
Parents: 897edde
Author: Akila Perera <ra...@gmail.com>
Authored: Fri Aug 21 12:38:43 2015 +0530
Committer: Akila Perera <ra...@gmail.com>
Committed: Fri Aug 21 12:38:43 2015 +0530

----------------------------------------------------------------------
 .../cloud/controller/iaases/gce/GCEIaas.java    | 24 +++++++----
 ...licationInstanceCreatedMessageProcessor.java | 42 ++++++++++----------
 2 files changed, 37 insertions(+), 29 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/92ff7e9b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/gce/GCEIaas.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/gce/GCEIaas.java b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/gce/GCEIaas.java
index 7b60b71..5cb2934 100644
--- a/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/gce/GCEIaas.java
+++ b/components/org.apache.stratos.cloud.controller/src/main/java/org/apache/stratos/cloud/controller/iaases/gce/GCEIaas.java
@@ -64,6 +64,7 @@ import static org.jclouds.util.Predicates2.retry;
 public class GCEIaas extends JcloudsIaas {
     private static final Log log = LogFactory.getLog(GCEIaas.class);
     public static final int MAX_WAIT_TIME = 60; // seconds
+    public static final String GCE_NETWORK_PROPERTY = "networkURI";
 
     public GCEIaas(IaasProvider iaasProvider) {
         super(iaasProvider);
@@ -134,9 +135,6 @@ public class GCEIaas extends JcloudsIaas {
         boolean blockUntilRunning = Boolean.parseBoolean(iaasInfo.getProperty("autoAssignIp"));
         template.getOptions().as(GoogleComputeEngineTemplateOptions.class).blockUntilRunning(blockUntilRunning);
 
-        // this is required in order to avoid creation of additional security groups by Jclouds.
-        template.getOptions().as(GoogleComputeEngineTemplateOptions.class).inboundPorts(22, 80, 8080, 443, 8243);
-
         if (zone != null) {
             templateBuilder.locationId(zone);
             log.debug("setting location to " + zone);
@@ -151,19 +149,29 @@ public class GCEIaas extends JcloudsIaas {
                         .length()), iaasInfo.getProperties().get(propertyKey));
                 template.getOptions().as(GoogleComputeEngineTemplateOptions.class).userMetadata(keyValuePairTagsMap);
             }
-            log.info("usermeta data key:" + propertyKey + " value: " + iaasInfo.getProperties().get(propertyKey));
+            log.info("User defined property [key]" + propertyKey + ", [value] " +
+                    iaasInfo.getProperties().get(propertyKey));
         }
 
         if (iaasInfo.getNetworkInterfaces() != null) {
             List<String> networks = new ArrayList<String>(iaasInfo.getNetworkInterfaces().length);
             for (NetworkInterface ni : iaasInfo.getNetworkInterfaces()) {
                 networks.add(ni.getNetworkUuid());
-                log.info("using network interface " + ni.getNetworkUuid());
             }
             template.getOptions().as(GoogleComputeEngineTemplateOptions.class).networks(networks);
-            log.info("using network interface " + networks);
+            log.info("Using network interfaces: " + networks);
         }
 
+        if (iaasInfo.getProperty(GCEIaas.GCE_NETWORK_PROPERTY) != null) {
+            try {
+                URI networkURI = new URI(iaasInfo.getProperty(GCEIaas.GCE_NETWORK_PROPERTY));
+                template.getOptions().as(GoogleComputeEngineTemplateOptions.class).network(networkURI);
+                log.info("Using GCE network: " + networkURI.toString());
+            }
+            catch (Exception e) {
+                log.error("Error while adding the network", e);
+            }
+        }
         // set Template
         iaasInfo.setTemplate(template);
     }
@@ -408,10 +416,10 @@ public class GCEIaas extends JcloudsIaas {
     }
 
     @Override
-    public String getGroupName(MemberContext memberContext, byte[] payload){
+    public String getGroupName(MemberContext memberContext, byte[] payload) {
         String clusterId = memberContext.getClusterId();
         String str = clusterId.length() > 10 ? clusterId.substring(0, 10) : clusterId.substring(0, clusterId.length());
-        String group = getIaasProvider().getName().substring(0, 4) + "-"  + str.replaceAll("[^a-z0-9-]", "");
+        String group = "stratos-" + str.replaceAll("[^a-z0-9-]", "");
         return group.toLowerCase();
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/92ff7e9b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/application/ApplicationInstanceCreatedMessageProcessor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/application/ApplicationInstanceCreatedMessageProcessor.java b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/application/ApplicationInstanceCreatedMessageProcessor.java
index 314a915..e56d7bf 100644
--- a/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/application/ApplicationInstanceCreatedMessageProcessor.java
+++ b/components/org.apache.stratos.messaging/src/main/java/org/apache/stratos/messaging/message/processor/application/ApplicationInstanceCreatedMessageProcessor.java
@@ -40,18 +40,14 @@ public class ApplicationInstanceCreatedMessageProcessor extends MessageProcessor
 
     @Override
     public boolean process(String type, String message, Object object) {
-
         Applications applications = (Applications) object;
-
         if (ApplicationInstanceCreatedEvent.class.getName().equals(type)) {
-
             if (!applications.isInitialized()) {
                 return false;
             }
-
-
-            ApplicationInstanceCreatedEvent event = (ApplicationInstanceCreatedEvent) MessagingUtil.jsonToObject(message,
-                    ApplicationInstanceCreatedEvent.class);
+            ApplicationInstanceCreatedEvent event =
+                    (ApplicationInstanceCreatedEvent) MessagingUtil.jsonToObject(message,
+                            ApplicationInstanceCreatedEvent.class);
             if (event == null) {
                 log.error("Unable to convert the JSON message to ApplicationInstanceCreatedEvent");
                 return false;
@@ -60,17 +56,18 @@ public class ApplicationInstanceCreatedMessageProcessor extends MessageProcessor
             ApplicationsUpdater.acquireWriteLockForApplications();
             try {
                 return doProcess(event, applications);
-
-            } finally {
+            }
+            finally {
                 ApplicationsUpdater.releaseWriteLockForApplications();
             }
-
         } else {
             if (nextProcessor != null) {
                 // ask the next processor to take care of the message.
                 return nextProcessor.process(type, message, applications);
             } else {
-                throw new RuntimeException(String.format("Failed to process message using available message processors: [type] %s [body] %s", type, message));
+                throw new RuntimeException(String.format(
+                        "Failed to process message using available message processors: [type] %s [body] %s", type,
+                        message));
             }
         }
     }
@@ -78,13 +75,18 @@ public class ApplicationInstanceCreatedMessageProcessor extends MessageProcessor
     private boolean doProcess(ApplicationInstanceCreatedEvent event, Applications applications) {
 
         // check if required properties are available
-        if (event.getApplicationInstance() == null) {
-            String errorMsg = "Application instance object of application instance created event is invalid";
+        if (event.getApplicationInstance() == null || event.getApplicationId() == null) {
+            String errorMsg = "Application instance object of ApplicationInstanceCreatedEvent is invalid. " +
+                    "[ApplicationId] " + event.getApplicationId() + ", [ApplicationInstance] " +
+                    event.getApplicationInstance();
+            log.error(errorMsg);
+            throw new RuntimeException(errorMsg);
+        }
+        if (applications == null) {
+            String errorMsg = "Error! Applications object is null";
             log.error(errorMsg);
             throw new RuntimeException(errorMsg);
-
         }
-
         ApplicationInstance applicationInstance = event.getApplicationInstance();
 
         if (applicationInstance.getInstanceId() == null || applicationInstance.getInstanceId().isEmpty()) {
@@ -97,15 +99,13 @@ public class ApplicationInstanceCreatedMessageProcessor extends MessageProcessor
         // check if an Application instance with same name exists in applications instance
         if (null != applications.getApplication(event.getApplicationId()).
                 getInstanceByNetworkPartitionId(applicationInstance.getNetworkPartitionId())) {
-
-            log.warn("Application instance with id [ " + applicationInstance.getInstanceId() + " ] already exists");
-
+            log.warn("Application instance [AppInstanceId] " + applicationInstance.getInstanceId() + " already exists");
         } else {
             // add application instance to Application Topology
-            applications.getApplication(event.getApplicationId()).addInstance(applicationInstance.getInstanceId(), applicationInstance);
+            applications.getApplication(event.getApplicationId())
+                    .addInstance(applicationInstance.getInstanceId(), applicationInstance);
         }
-
         notifyEventListeners(event);
         return true;
     }
-}
+}
\ No newline at end of file