Tomcat: support disabling direct connection

Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/d32693af
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/d32693af
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/d32693af

Branch: refs/heads/master
Commit: d32693af4b8dd233097449259f4cd552fef584bb
Parents: c3d7591
Author: Aled Sage <[email protected]>
Authored: Tue Nov 24 13:24:10 2015 +0000
Committer: Aled Sage <[email protected]>
Committed: Tue Nov 24 13:53:47 2015 +0000

----------------------------------------------------------------------
 .../webapp/tomcat/TomcatServerEc2LiveTest.java  | 36 +++++++++++++++++++-
 1 file changed, 35 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/d32693af/software/webapp/src/test/java/org/apache/brooklyn/entity/webapp/tomcat/TomcatServerEc2LiveTest.java
----------------------------------------------------------------------
diff --git 
a/software/webapp/src/test/java/org/apache/brooklyn/entity/webapp/tomcat/TomcatServerEc2LiveTest.java
 
b/software/webapp/src/test/java/org/apache/brooklyn/entity/webapp/tomcat/TomcatServerEc2LiveTest.java
index 3d59610..3553f75 100644
--- 
a/software/webapp/src/test/java/org/apache/brooklyn/entity/webapp/tomcat/TomcatServerEc2LiveTest.java
+++ 
b/software/webapp/src/test/java/org/apache/brooklyn/entity/webapp/tomcat/TomcatServerEc2LiveTest.java
@@ -18,24 +18,32 @@
  */
 package org.apache.brooklyn.entity.webapp.tomcat;
 
-import static com.google.common.base.Preconditions.checkNotNull;
 import static org.testng.Assert.assertNotNull;
 
 import org.apache.brooklyn.api.entity.EntitySpec;
 import org.apache.brooklyn.api.location.Location;
+import org.apache.brooklyn.core.entity.Attributes;
+import org.apache.brooklyn.core.entity.EntityAsserts;
+import org.apache.brooklyn.core.entity.lifecycle.Lifecycle;
+import org.apache.brooklyn.core.location.cloud.CloudLocationConfig;
 import org.apache.brooklyn.entity.AbstractEc2LiveTest;
 import org.apache.brooklyn.test.Asserts;
 import org.apache.brooklyn.test.HttpTestUtils;
 import org.apache.brooklyn.test.support.TestResourceUnavailableException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.testng.annotations.Test;
 
 import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableMap;
 
 /**
  * A simple test of installing+running on AWS-EC2, using various OS distros 
and versions. 
  */
 public class TomcatServerEc2LiveTest extends AbstractEc2LiveTest {
 
+    private static final Logger LOG = 
LoggerFactory.getLogger(TomcatServerEc2LiveTest.class);
+
     public String getTestWar() {
         
TestResourceUnavailableException.throwIfResourceUnavailable(getClass(), 
"/hello-world.war");
         return "classpath://hello-world.war";
@@ -62,6 +70,32 @@ public class TomcatServerEc2LiveTest extends 
AbstractEc2LiveTest {
             }});
     }
     
+    @Test(groups = {"Live"})
+    public void testWithOnlyPort22() throws Exception {
+        // 
CentOS-6.3-x86_64-GA-EBS-02-85586466-5b6c-4495-b580-14f72b4bcf51-ami-bb9af1d2.1
+        jcloudsLocation = mgmt.getLocationRegistry().resolve(LOCATION_SPEC, 
ImmutableMap.of(
+                "tags", ImmutableList.of(getClass().getName()),
+                "imageId", "us-east-1/ami-a96b01c0", 
+                "hardwareId", SMALL_HARDWARE_ID));
+
+        final TomcatServer server = 
app.createAndManageChild(EntitySpec.create(TomcatServer.class)
+                
.configure(TomcatServer.PROVISIONING_PROPERTIES.subKey(CloudLocationConfig.INBOUND_PORTS.getName()),
 ImmutableList.of(22))
+                .configure(TomcatServer.USE_JMX, false)
+                .configure(TomcatServer.OPEN_IPTABLES, true)
+//                .configure(TomcatServer.PRE_INSTALL_COMMAND, 
BashCommands.sudo("yum upgrade -y ca-certificates --disablerepo=epel"))
+                .configure("war", getTestWar()));
+        
+        app.start(ImmutableList.of(jcloudsLocation));
+        
+        EntityAsserts.assertAttributeEqualsEventually(server, 
Attributes.SERVICE_UP, true);
+        EntityAsserts.assertAttributeEqualsEventually(server, 
Attributes.SERVICE_STATE_ACTUAL, Lifecycle.RUNNING);
+        
+        String url = server.getAttribute(TomcatServer.ROOT_URL);
+        assertNotNull(url);
+        
+        assertViaSshLocalUrlListeningEventually(server, url);
+    }
+    
     @Test(enabled=false)
     public void testDummy() {} // Convince testng IDE integration that this 
really does have test methods  
 }

Reply via email to