Repository: incubator-slider Updated Branches: refs/heads/develop 860d72504 -> db0fb5795
SLIDER-571 correct determination of RM webapp url Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/db0fb579 Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/db0fb579 Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/db0fb579 Branch: refs/heads/develop Commit: db0fb5795f920adf9c856dcc68cb961cbf9c3bfe Parents: 860d725 Author: Billie Rinaldi <[email protected]> Authored: Mon Oct 27 09:26:40 2014 -0700 Committer: Billie Rinaldi <[email protected]> Committed: Mon Oct 27 09:26:40 2014 -0700 ---------------------------------------------------------------------- .../accumulo/AccumuloMonitorSSLIT.groovy | 29 +------------ .../funtest/accumulo/AccumuloSSLTestBase.groovy | 44 ++++++++++++++++++-- 2 files changed, 42 insertions(+), 31 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/db0fb579/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy ---------------------------------------------------------------------- diff --git a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy index b47689a..12f89e0 100644 --- a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy +++ b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloMonitorSSLIT.groovy @@ -22,14 +22,6 @@ import org.apache.slider.api.ClusterDescription import org.apache.slider.client.SliderClient import org.apache.slider.core.conf.ConfTree -import javax.net.ssl.KeyManager -import javax.net.ssl.SSLContext -import javax.net.ssl.TrustManager -import javax.net.ssl.X509TrustManager -import java.security.SecureRandom -import java.security.cert.CertificateException -import java.security.cert.X509Certificate - @Slf4j class AccumuloMonitorSSLIT extends AccumuloSSLTestBase { protected String templateName() { @@ -59,25 +51,6 @@ class AccumuloMonitorSSLIT extends AccumuloSSLTestBase { public void clusterLoadOperations(ClusterDescription cd, SliderClient sliderClient) { String monitorUrl = getMonitorUrl(sliderClient, getClusterName()) assert monitorUrl.startsWith("https://"), "Monitor URL didn't have expected protocol" - - SSLContext ctx = SSLContext.getInstance("SSL"); - TrustManager[] t = new TrustManager[1]; - t[0] = new DefaultTrustManager(); - ctx.init(new KeyManager[0], t, new SecureRandom()); - SSLContext.setDefault(ctx); checkMonitorPage(monitorUrl) } - - private static class DefaultTrustManager implements X509TrustManager { - @Override - public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {} - - @Override - public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {} - - @Override - public X509Certificate[] getAcceptedIssuers() { - return null; - } - } -} \ No newline at end of file +} http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/db0fb579/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy ---------------------------------------------------------------------- diff --git a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy index be19583..d3165dc 100644 --- a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy +++ b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloSSLTestBase.groovy @@ -25,6 +25,15 @@ import org.apache.hadoop.yarn.conf.YarnConfiguration import org.apache.slider.core.conf.ConfTree import org.apache.slider.funtest.framework.AgentUploads import org.junit.Before +import org.junit.BeforeClass + +import javax.net.ssl.KeyManager +import javax.net.ssl.SSLContext +import javax.net.ssl.TrustManager +import javax.net.ssl.X509TrustManager +import java.security.SecureRandom +import java.security.cert.CertificateException +import java.security.cert.X509Certificate class AccumuloSSLTestBase extends AccumuloBasicIT { protected static final File trustStoreFile = new File(TEST_APP_PKG_DIR, "truststore.jks") @@ -54,6 +63,15 @@ class AccumuloSSLTestBase extends AccumuloBasicIT { return "Test enable SSL $clusterName" } + @BeforeClass + public static void initHttps() { + SSLContext ctx = SSLContext.getInstance("SSL"); + TrustManager[] t = new TrustManager[1]; + t[0] = new DefaultTrustManager(); + ctx.init(new KeyManager[0], t, new SecureRandom()); + SSLContext.setDefault(ctx); + } + @Before public void createCerts() { Path certDir = new Path(clusterFS.homeDirectory, @@ -101,16 +119,36 @@ class AccumuloSSLTestBase extends AccumuloBasicIT { } def getNodeList(Configuration conf) { - String address = conf.get(YarnConfiguration.RM_WEBAPP_ADDRESS) + - "/ws/v1/cluster/nodes" + String address + if (YarnConfiguration.useHttps(conf)) { + address = "https://" + conf.get(YarnConfiguration.RM_WEBAPP_HTTPS_ADDRESS, + YarnConfiguration.DEFAULT_RM_WEBAPP_HTTPS_ADDRESS); + } else { + address = "http://" + conf.get(YarnConfiguration.RM_WEBAPP_ADDRESS, + YarnConfiguration.DEFAULT_RM_WEBAPP_ADDRESS); + } address = address.replace("0.0.0.0", conf.get(YarnConfiguration.RM_ADDRESS) .split(":")[0]) + address = address + "/ws/v1/cluster/nodes" def slurper = new JsonSlurper() - def result = slurper.parse(new URL("http://" + address)) + def result = slurper.parse(new URL(address)) def hosts = [] for (host in result.nodes.node) { hosts.add(host.nodeHostName) } return hosts.unique() } + + private static class DefaultTrustManager implements X509TrustManager { + @Override + public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {} + + @Override + public void checkServerTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {} + + @Override + public X509Certificate[] getAcceptedIssuers() { + return null; + } + } }
