You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by bi...@apache.org on 2014/12/05 22:09:59 UTC
incubator-slider git commit: SLIDER-700 added proxy component with
funtest
Repository: incubator-slider
Updated Branches:
refs/heads/develop 364eca0fa -> d91049a65
SLIDER-700 added proxy component with funtest
Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/d91049a6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/d91049a6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/d91049a6
Branch: refs/heads/develop
Commit: d91049a6527bf15144ce935f5e3ddca588d97e3b
Parents: 364eca0
Author: Billie Rinaldi <bi...@gmail.com>
Authored: Thu Dec 4 11:56:17 2014 -0800
Committer: Billie Rinaldi <bi...@gmail.com>
Committed: Fri Dec 5 12:32:15 2014 -0800
----------------------------------------------------------------------
app-packages/accumulo/appConfig-default.json | 2 +
app-packages/accumulo/configuration/proxy.xml | 64 +++++++++
app-packages/accumulo/metainfo.xml | 24 ++++
.../package/scripts/accumulo_configuration.py | 8 ++
.../accumulo/package/scripts/accumulo_proxy.py | 24 ++++
.../package/scripts/accumulo_service.py | 5 +-
app-packages/accumulo/package/scripts/params.py | 1 +
app-packages/accumulo/pom.xml | 12 ++
app-packages/accumulo/resources-default.json | 5 +
.../funtest/accumulo/AccumuloBasicIT.groovy | 46 ++++---
.../funtest/accumulo/AccumuloProxyIT.groovy | 130 +++++++++++++++++++
.../accumulo/src/test/resources/resources.json | 7 +-
.../test/resources/resources_with_client.json | 41 ------
.../test/resources/resources_with_proxy.json | 43 ++++++
14 files changed, 351 insertions(+), 61 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/appConfig-default.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/appConfig-default.json b/app-packages/accumulo/appConfig-default.json
index 9d11bae..968abcf 100644
--- a/app-packages/accumulo/appConfig-default.json
+++ b/app-packages/accumulo/appConfig-default.json
@@ -22,6 +22,8 @@
"site.client.instance.name": "${USER}-${CLUSTER_NAME}",
+ "site.proxy.port": "${ACCUMULO_PROXY.ALLOCATED_PORT}{PER_CONTAINER}",
+
"site.global.accumulo_root_password": "NOT_USED",
"site.global.ssl_cert_dir": "ssl",
"site.global.monitor_protocol": "http",
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/configuration/proxy.xml
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/configuration/proxy.xml b/app-packages/accumulo/configuration/proxy.xml
new file mode 100644
index 0000000..4db2505
--- /dev/null
+++ b/app-packages/accumulo/configuration/proxy.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
+<!--
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+-->
+
+<configuration>
+ <property>
+ <name>instance</name>
+ <value>${@//site/client/instance.name}</value>
+ <description>Accumulo Instance Name.</description>
+ </property>
+ <property>
+ <name>zookeepers</name>
+ <value>${@//site/accumulo-site/instance.zookeeper.host}</value>
+ <description>Zookeeper hosts.</description>
+ </property>
+ <property>
+ <name>port</name>
+ <value>42424</value>
+ <description>Proxy port.</description>
+ </property>
+ <property>
+ <name>protocolFactory</name>
+ <value>org.apache.thrift.protocol.TCompactProtocol$Factory</value>
+ <description>Proxy protocol factory.</description>
+ </property>
+ <property>
+ <name>tokenClass</name>
+ <value>org.apache.accumulo.core.client.security.tokens.PasswordToken</value>
+ <description>Class to use for accumulo user authentication.</description>
+ </property>
+ <property>
+ <name>maxFrameSize</name>
+ <value>16M</value>
+ <description>Max frame size.</description>
+ </property>
+ <property>
+ <name>useMockInstance</name>
+ <value>false</value>
+ <description>Only used for testing.</description>
+ </property>
+ <property>
+ <name>useMiniAccumulo</name>
+ <value>false</value>
+ <description>Only used for testing.</description>
+ </property>
+</configuration>
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/metainfo.xml
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/metainfo.xml b/app-packages/accumulo/metainfo.xml
index d3fb263..4cfaa6b 100644
--- a/app-packages/accumulo/metainfo.xml
+++ b/app-packages/accumulo/metainfo.xml
@@ -77,6 +77,10 @@
<command>ACCUMULO_TRACER-START</command>
<requires>ACCUMULO_TSERVER-STARTED</requires>
</commandOrder>
+ <commandOrder>
+ <command>ACCUMULO_PROXY-START</command>
+ <requires>ACCUMULO_TSERVER-STARTED</requires>
+ </commandOrder>
</commandOrders>
<components>
<component>
@@ -131,6 +135,21 @@
</component>
<component>
+ <name>ACCUMULO_PROXY</name>
+ <category>CLIENT</category>
+ <componentExports>
+ <componentExport>
+ <name>proxies</name>
+ <value>${THIS_HOST}:${site.proxy.port}</value>
+ </componentExport>
+ </componentExports>
+ <commandScript>
+ <script>scripts/accumulo_proxy.py</script>
+ <scriptType>PYTHON</scriptType>
+ </commandScript>
+ </component>
+
+ <component>
<name>ACCUMULO_CLIENT</name>
<category>CLIENT</category>
<commandScript>
@@ -168,6 +187,11 @@
<fileName>client.conf</fileName>
<dictionaryName>client</dictionaryName>
</configFile>
+ <configFile>
+ <type>properties</type>
+ <fileName>proxy.properties</fileName>
+ <dictionaryName>proxy</dictionaryName>
+ </configFile>
</configFiles>
</application>
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/package/scripts/accumulo_configuration.py
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/package/scripts/accumulo_configuration.py b/app-packages/accumulo/package/scripts/accumulo_configuration.py
index fb4410e..2440250 100644
--- a/app-packages/accumulo/package/scripts/accumulo_configuration.py
+++ b/app-packages/accumulo/package/scripts/accumulo_configuration.py
@@ -133,6 +133,14 @@ def setup_conf_dir(name=None): # 'master' or 'tserver' or 'monitor' or 'gc' or '
group = params.user_group
)
+ if name == "proxy":
+ # create proxy.properties file
+ PropertiesFile(params.proxy_conf,
+ properties = params.config['configurations']['proxy'],
+ owner = params.accumulo_user,
+ group = params.user_group
+ )
+
# create host files
accumulo_StaticFile( 'masters')
accumulo_StaticFile( 'slaves')
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/package/scripts/accumulo_proxy.py
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/package/scripts/accumulo_proxy.py b/app-packages/accumulo/package/scripts/accumulo_proxy.py
new file mode 100644
index 0000000..b988fbd
--- /dev/null
+++ b/app-packages/accumulo/package/scripts/accumulo_proxy.py
@@ -0,0 +1,24 @@
+#!/usr/bin/env python
+"""
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+"""
+
+from accumulo_script import AccumuloScript
+
+if __name__ == "__main__":
+ AccumuloScript('proxy').execute()
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/package/scripts/accumulo_service.py
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/package/scripts/accumulo_service.py b/app-packages/accumulo/package/scripts/accumulo_service.py
index ca21cc8..b7ce2a1 100644
--- a/app-packages/accumulo/package/scripts/accumulo_service.py
+++ b/app-packages/accumulo/package/scripts/accumulo_service.py
@@ -30,7 +30,10 @@ def accumulo_service( name,
pid_exists = format("ls {pid_file} >/dev/null 2>&1 && ps `cat {pid_file}` >/dev/null 2>&1")
if action == 'start':
- daemon_cmd = format("{daemon_script} {role} --address {params.hostname} > {log_dir}/accumulo-{accumulo_user}-{role}.out 2>{log_dir}/accumulo-{accumulo_user}-{role}.err & echo $! > {pid_file}")
+ if role == 'proxy':
+ daemon_cmd = format("{daemon_script} {role} -p {params.proxy_conf} > {log_dir}/accumulo-{accumulo_user}-{role}.out 2>{log_dir}/accumulo-{accumulo_user}-{role}.err & echo $! > {pid_file}")
+ else:
+ daemon_cmd = format("{daemon_script} {role} --address {params.hostname} > {log_dir}/accumulo-{accumulo_user}-{role}.out 2>{log_dir}/accumulo-{accumulo_user}-{role}.err & echo $! > {pid_file}")
Execute ( daemon_cmd,
not_if=pid_exists,
user=params.accumulo_user
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/package/scripts/params.py b/app-packages/accumulo/package/scripts/params.py
index 9e6e8dd..981d3e0 100644
--- a/app-packages/accumulo/package/scripts/params.py
+++ b/app-packages/accumulo/package/scripts/params.py
@@ -48,6 +48,7 @@ accumulo_root = config['configurations']['global']['app_root']
conf_dir = format("{accumulo_root}/conf")
log_dir = config['configurations']['global']['app_log_dir']
daemon_script = format("{accumulo_root}/bin/accumulo")
+proxy_conf = format("{conf_dir}/proxy.properties")
# accumulo monitor certificate properties
monitor_security_enabled = config['configurations']['global']['monitor_protocol'] == "https"
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/pom.xml
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/pom.xml b/app-packages/accumulo/pom.xml
index 611940c..8ac7f27 100644
--- a/app-packages/accumulo/pom.xml
+++ b/app-packages/accumulo/pom.xml
@@ -283,6 +283,18 @@
</dependency>
<dependency>
<groupId>org.apache.accumulo</groupId>
+ <artifactId>accumulo-proxy</artifactId>
+ <version>${accumulo.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.thrift</groupId>
+ <artifactId>libthrift</artifactId>
+ <version>0.9.1</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.accumulo</groupId>
<artifactId>accumulo-test</artifactId>
<scope>test</scope>
</dependency>
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/resources-default.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/resources-default.json b/app-packages/accumulo/resources-default.json
index f0923f2..90cbf3f 100644
--- a/app-packages/accumulo/resources-default.json
+++ b/app-packages/accumulo/resources-default.json
@@ -33,6 +33,11 @@
"yarn.role.priority": "5",
"yarn.component.instances": "1",
"yarn.memory": "256"
+ },
+ "ACCUMULO_PROXY": {
+ "yarn.role.priority": "6",
+ "yarn.component.instances": "1",
+ "yarn.memory": "128"
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy
index f1e1899..5f16d17 100644
--- a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy
+++ b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloBasicIT.groovy
@@ -26,7 +26,6 @@ import org.apache.hadoop.security.UserGroupInformation
import org.apache.hadoop.security.alias.CredentialProvider
import org.apache.hadoop.security.alias.CredentialProviderFactory
import org.apache.hadoop.registry.client.types.ServiceRecord
-import org.apache.slider.accumulo.CustomAuthenticator
import org.apache.slider.api.ClusterDescription
import org.apache.slider.client.SliderClient
import org.apache.slider.common.SliderKeys
@@ -116,6 +115,18 @@ class AccumuloBasicIT extends AccumuloAgentCommandTestBase {
return "test_accumulo_basic"
}
+ protected Map<String, Integer> getRoleMap() {
+ // must match the values in src/test/resources/resources.json
+ return [
+ "ACCUMULO_MASTER" : 1,
+ "ACCUMULO_TSERVER" : 2,
+ "ACCUMULO_MONITOR": 1,
+ "ACCUMULO_GC": 0,
+ "ACCUMULO_TRACER" : 0,
+ "ACCUMULO_PROXY" : 0
+ ];
+ }
+
@Test
public void testAccumuloClusterCreate() throws Throwable {
@@ -136,15 +147,6 @@ class AccumuloBasicIT extends AccumuloAgentCommandTestBase {
ensureApplicationIsUp(getClusterName())
- // must match the values in src/test/resources/resources.json
- Map<String, Integer> roleMap = [
- "ACCUMULO_MASTER" : 1,
- "ACCUMULO_TSERVER" : 2,
- "ACCUMULO_MONITOR": 1,
- "ACCUMULO_GC": 0,
- "ACCUMULO_TRACER" : 0
- ];
-
//get a slider client against the cluster
SliderClient sliderClient = bondToCluster(SLIDER_CONFIG, getClusterName())
ClusterDescription cd = sliderClient.clusterDescription
@@ -153,7 +155,7 @@ class AccumuloBasicIT extends AccumuloAgentCommandTestBase {
log.info("Connected via Client {}", sliderClient.toString())
//wait for the role counts to be reached
- waitForRoleCount(sliderClient, roleMap, ACCUMULO_LAUNCH_WAIT_TIME)
+ waitForRoleCount(sliderClient, getRoleMap(), ACCUMULO_LAUNCH_WAIT_TIME)
sleep(ACCUMULO_GO_LIVE_TIME)
@@ -165,18 +167,26 @@ class AccumuloBasicIT extends AccumuloAgentCommandTestBase {
return "Create a working Accumulo cluster $clusterName"
}
+ public static PublishedConfiguration getExport(SliderClient sliderClient,
+ String clusterName,
+ String exportName) {
+ String path = servicePath(currentUser(),
+ SliderKeys.APP_TYPE,
+ clusterName);
+ ServiceRecord instance = sliderClient.resolve(path)
+ RegistryRetriever retriever = new RegistryRetriever(instance)
+ PublishedConfiguration configuration = retriever.retrieveConfiguration(
+ retriever.getConfigurations(true), exportName, true)
+ return configuration
+ }
+
public static String getMonitorUrl(SliderClient sliderClient, String clusterName) {
int tries = 5
Exception caught;
while (true) {
try {
- String path = servicePath(currentUser(),
- SliderKeys.APP_TYPE,
- clusterName);
- ServiceRecord instance = sliderClient.resolve(path)
- RegistryRetriever retriever = new RegistryRetriever(instance)
- PublishedConfiguration configuration = retriever.retrieveConfiguration(
- retriever.getConfigurations(true), "quicklinks", true)
+ PublishedConfiguration configuration = getExport(sliderClient,
+ clusterName, "quicklinks")
// must match name set in metainfo.xml
String monitorUrl = configuration.entries.get("org.apache.slider.monitor")
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloProxyIT.groovy
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloProxyIT.groovy b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloProxyIT.groovy
new file mode 100644
index 0000000..730355f
--- /dev/null
+++ b/app-packages/accumulo/src/test/groovy/org/apache/slider/funtest/accumulo/AccumuloProxyIT.groovy
@@ -0,0 +1,130 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.slider.funtest.accumulo
+
+import groovy.util.logging.Slf4j
+import org.apache.accumulo.proxy.TestProxyClient
+import org.apache.accumulo.proxy.thrift.AccumuloProxy
+import org.apache.accumulo.proxy.thrift.ColumnUpdate
+import org.apache.accumulo.proxy.thrift.TimeType
+import org.apache.slider.api.ClusterDescription
+import org.apache.slider.client.SliderClient
+import org.apache.slider.core.registry.docstore.PublishedConfiguration
+
+import java.nio.ByteBuffer
+
+@Slf4j
+class AccumuloProxyIT extends AccumuloBasicIT {
+ @Override
+ protected Map<String, Integer> getRoleMap() {
+ // must match the values in src/test/resources/resources.json
+ return [
+ "ACCUMULO_MASTER" : 1,
+ "ACCUMULO_TSERVER" : 1,
+ "ACCUMULO_MONITOR": 0,
+ "ACCUMULO_GC": 0,
+ "ACCUMULO_TRACER" : 0,
+ "ACCUMULO_PROXY" : 2
+ ];
+ }
+
+ @Override
+ protected String getAppResource() {
+ return sysprop("test.app.resources.dir") + "/resources_with_proxy.json"
+ }
+
+ @Override
+ public String getClusterName() {
+ return "test_proxy";
+ }
+
+ @Override
+ public String getDescription() {
+ return "Test proxy $clusterName"
+ }
+
+ def getProxies(SliderClient sliderClient, String clusterName, int expectedNumber) {
+ int tries = 5
+ Exception caught;
+ while (true) {
+ try {
+ PublishedConfiguration configuration = getExport(sliderClient,
+ clusterName, "componentinstancedata")
+
+ def proxies = configuration.entries.values()
+ if (proxies.size() != expectedNumber)
+ throw new IllegalStateException("Didn't find all proxies")
+ return proxies
+ } catch (Exception e) {
+ caught = e;
+ log.info("Got exception trying to read quicklinks")
+ if (tries-- == 0) {
+ break
+ }
+ sleep(20000)
+ }
+ }
+ throw caught;
+ }
+
+ @Override
+ public void clusterLoadOperations(ClusterDescription cd, SliderClient sliderClient) {
+ def proxies = getProxies(sliderClient, getClusterName(), 2)
+ for (int i = 0; i < proxies.size(); i++) {
+ log.info("Checking proxy " + proxies[i])
+ def hostPort = proxies[i].split(":")
+
+ // create proxy client
+ AccumuloProxy.Client client = new TestProxyClient(hostPort[0],
+ hostPort[1].toInteger()).proxy()
+ ByteBuffer token = client.login("root",
+ Collections.singletonMap("password", PASSWORD))
+
+ // verify table list before
+ String tableName = "table" + i
+ Set<String> tablesBefore = client.listTables(token)
+ assertFalse(tablesBefore.contains(tableName))
+
+ // create table, verify its contents, write entry, verify again
+ client.createTable(token, tableName, true, TimeType.MILLIS)
+ String scanner = client.createScanner(token, tableName, null)
+ assertFalse(client.hasNext(scanner))
+ client.updateAndFlush(token, tableName, createUpdate("row1", "cf1",
+ "cq1", "val1"))
+ scanner = client.createScanner(token, tableName, null)
+ assertTrue(client.hasNext(scanner))
+ client.nextEntry(scanner)
+ assertFalse(client.hasNext(scanner))
+
+ // verify table list after
+ Set<String> tablesAfter = client.listTables(token)
+ assertTrue(tablesAfter.contains(tableName))
+ assertEquals(tablesBefore.size() + 1, tablesAfter.size())
+ }
+ }
+
+ def createUpdate(String row, String cf, String cq, String value) {
+ ColumnUpdate update = new ColumnUpdate(wrap(cf), wrap(cq));
+ update.setValue(value.getBytes());
+ return Collections.singletonMap(wrap(row), Collections.singletonList(update));
+ }
+
+ def wrap(String cf) {
+ return ByteBuffer.wrap(cf.getBytes("UTF-8"));
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/src/test/resources/resources.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/resources.json b/app-packages/accumulo/src/test/resources/resources.json
index 1c5dd97..f88a8d6 100644
--- a/app-packages/accumulo/src/test/resources/resources.json
+++ b/app-packages/accumulo/src/test/resources/resources.json
@@ -32,7 +32,12 @@
"ACCUMULO_TRACER": {
"yarn.role.priority": "5",
"yarn.component.instances": "0",
- "yarn.memory": "256"
+ "yarn.memory": "128"
+ },
+ "ACCUMULO_PROXY": {
+ "yarn.role.priority": "6",
+ "yarn.component.instances": "0",
+ "yarn.memory": "128"
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/src/test/resources/resources_with_client.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/resources_with_client.json b/app-packages/accumulo/src/test/resources/resources_with_client.json
deleted file mode 100644
index 297a232..0000000
--- a/app-packages/accumulo/src/test/resources/resources_with_client.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "schema": "http://example.org/specification/v2.0.0",
- "metadata": {
- },
- "global": {
- },
- "components": {
- "ACCUMULO_MASTER": {
- "yarn.role.priority": "1",
- "yarn.component.instances": "1",
- "yarn.memory": "256"
- },
- "slider-appmaster": {
- },
- "ACCUMULO_TSERVER": {
- "yarn.role.priority": "2",
- "yarn.component.instances": "2",
- "yarn.memory": "256"
- },
- "ACCUMULO_MONITOR": {
- "yarn.role.priority": "3",
- "yarn.component.instances": "1",
- "yarn.memory": "128"
- },
- "ACCUMULO_GC": {
- "yarn.role.priority": "4",
- "yarn.component.instances": "1",
- "yarn.memory": "128"
- },
- "ACCUMULO_TRACER": {
- "yarn.role.priority": "5",
- "yarn.component.instances": "1",
- "yarn.memory": "128"
- },
- "ACCUMULO_CLIENT": {
- "yarn.role.priority": "6",
- "yarn.component.instances": "0",
- "yarn.memory": "128"
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d91049a6/app-packages/accumulo/src/test/resources/resources_with_proxy.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/resources_with_proxy.json b/app-packages/accumulo/src/test/resources/resources_with_proxy.json
new file mode 100644
index 0000000..615782a
--- /dev/null
+++ b/app-packages/accumulo/src/test/resources/resources_with_proxy.json
@@ -0,0 +1,43 @@
+{
+ "schema": "http://example.org/specification/v2.0.0",
+ "metadata": {
+ },
+ "global": {
+ "yarn.log.include.patterns": "",
+ "yarn.log.exclude.patterns": ""
+ },
+ "components": {
+ "ACCUMULO_MASTER": {
+ "yarn.role.priority": "1",
+ "yarn.component.instances": "1",
+ "yarn.memory": "64"
+ },
+ "slider-appmaster": {
+ },
+ "ACCUMULO_TSERVER": {
+ "yarn.role.priority": "2",
+ "yarn.component.instances": "1",
+ "yarn.memory": "256"
+ },
+ "ACCUMULO_MONITOR": {
+ "yarn.role.priority": "3",
+ "yarn.component.instances": "0",
+ "yarn.memory": "64"
+ },
+ "ACCUMULO_GC": {
+ "yarn.role.priority": "4",
+ "yarn.component.instances": "0",
+ "yarn.memory": "128"
+ },
+ "ACCUMULO_TRACER": {
+ "yarn.role.priority": "5",
+ "yarn.component.instances": "0",
+ "yarn.memory": "128"
+ },
+ "ACCUMULO_PROXY": {
+ "yarn.role.priority": "6",
+ "yarn.component.instances": "2",
+ "yarn.memory": "128"
+ }
+ }
+}