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 }
