SLIDER-417, SLIDER-415 Enable local package building for accumulo, fix tests to 
work in secure mode


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

Branch: refs/heads/feature/SLIDER-86-windows
Commit: 3c1d9dc2fcec1a897a26388865194c99fc28e2f8
Parents: e24060b
Author: Billie Rinaldi <billie.rina...@gmail.com>
Authored: Tue Sep 9 22:14:36 2014 -0700
Committer: Billie Rinaldi <billie.rina...@gmail.com>
Committed: Tue Sep 9 22:14:36 2014 -0700

----------------------------------------------------------------------
 app-packages/accumulo/README.txt                | 17 ++--
 app-packages/accumulo/pom.xml                   | 90 ++++++++++++++++++--
 app-packages/accumulo/src/assembly/accumulo.xml |  2 +-
 .../funtest/accumulo/AccumuloBasicIT.groovy     |  7 ++
 .../accumulo/AccumuloMonitorSSLIT.groovy        |  7 +-
 .../funtest/accumulo/AccumuloSSLTestBase.groovy |  7 +-
 .../accumulo/src/test/resources/appConfig.json  | 55 ++++++++++++
 .../src/test/resources/appConfig_kerberos.json  |  8 +-
 .../test/resources/appConfig_monitor_ssl.json   |  4 +-
 .../appConfig_monitor_ssl_kerberos.json         | 57 +++++++++++++
 .../src/test/resources/appConfig_ssl.json       |  4 +-
 .../test/resources/appConfig_ssl_kerberos.json  | 59 +++++++++++++
 12 files changed, 294 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/README.txt
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/README.txt b/app-packages/accumulo/README.txt
index 634296a..f75814c 100644
--- a/app-packages/accumulo/README.txt
+++ b/app-packages/accumulo/README.txt
@@ -17,21 +17,28 @@
 
 # How to create a Slider package for Accumulo?
 
-  mvn clean package -DskipTests -Paccumulo-app-package
+  mvn clean package -DskipTests -Paccumulo-app-package-maven
+  OR
+  mvn clean package -DskipTests -Paccumulo-app-package -Dpkg.version=1.6.1 \
+    -Dpkg.name=accumulo-1.6.1-bin.tar.gz -Dpkg.src=/local/path/to/tarball
 
 App package can be found in
-  
app-packages/accumulo/target/apache-slider-accumulo-${accumulo.version}-app-package-${slider.version}.zip
+  app-packages/accumulo/target/slider-accumulo-app-package-*.zip
+
+In the first case, the version number of the app package will match the
+slider version, and in the second case it will match the pkg.version
+(intended to be the accumulo version).
 
 Verify the content using
-  zip -Tv apache-slider-accumulo-*.zip
+  zip -Tv slider-accumulo-app-package*.zip
 
 While appConfig.json and resources.json are not required for the package they
 work well as the default configuration for Slider apps. So it is advisable that
 when you create an application package for Slider, include sample/default
 resources.json and appConfig.json for a minimal Yarn cluster.
 
-The version of Accumulo used for the app package can be adjusted by adding a
-flag such as
+In the maven packaging case, the version of Accumulo used for the app package
+can be adjusted by adding a flag such as
   -Daccumulo.version=1.5.1
 
 **Note that the LICENSE.txt and NOTICE.txt that are bundled with the app

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/pom.xml
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/pom.xml b/app-packages/accumulo/pom.xml
index 548ced8..f074b01 100644
--- a/app-packages/accumulo/pom.xml
+++ b/app-packages/accumulo/pom.xml
@@ -30,17 +30,20 @@
 
   <properties>
     <work.dir>package-tmp</work.dir>
-    
<app.package.name>${project.artifactId}-${project.version}</app.package.name>
+    <app.package.name>${project.artifactId}-${pkg.version}</app.package.name>
+    <pkg.src>${project.build.directory}/${work.dir}</pkg.src>
+    <pkg.version>${project.version}</pkg.version>
+    <pkg.name>accumulo-${accumulo.version}-bin.tar.gz</pkg.name>
+    <!-- the following properties are used for testing -->
+    <app.user>yarn</app.user>
+    <app.user.group>hadoop</app.user.group>
+    <accumulo.keytab></accumulo.keytab>
+    <accumulo.principal></accumulo.principal>
   </properties>
 
   <profiles>
     <profile>
       <id>accumulo-app-package</id>
-      <activation>
-        <property>
-          <name>!skipAccumulo</name>
-        </property>
-      </activation>
       <build>
         <plugins>
           <plugin>
@@ -64,6 +67,79 @@
 
           <plugin>
             <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-antrun-plugin</artifactId>
+            <version>1.7</version>
+            <executions>
+              <execution>
+                <id>copy</id>
+                <phase>validate</phase>
+                <configuration>
+                  <target name="copy and rename file">
+                    <copy file="${pkg.src}/${pkg.name}" 
tofile="${project.build.directory}/${work.dir}/${pkg.name}" />
+                  </target>
+                </configuration>
+                <goals>
+                  <goal>run</goal>
+                </goals>
+              </execution>
+            </executions>
+          </plugin>
+
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-failsafe-plugin</artifactId>
+            <version>${maven-failsafe-plugin.version}</version>
+            <executions>
+              <execution>
+                <id>run-integration-tests</id>
+                <goals>
+                  <goal>integration-test</goal>
+                  <goal>verify</goal>
+                </goals>
+              </execution>
+            </executions>
+            <configuration>
+              <systemPropertyVariables>
+                <java.net.preferIPv4Stack>true</java.net.preferIPv4Stack>
+                <java.awt.headless>true</java.awt.headless>
+                <!-- this property must be supplied-->
+                <slider.conf.dir>${slider.conf.dir}</slider.conf.dir>
+                
<slider.bin.dir>../../slider-assembly/target/slider-${project.version}-all/slider-${project.version}</slider.bin.dir>
+                <test.app.pkg.dir>target</test.app.pkg.dir>
+                <test.app.pkg.file>${app.package.name}.zip</test.app.pkg.file>
+                
<test.app.resource>target/test-config/resources.json</test.app.resource>
+                
<test.app.template>target/test-config/appConfig.json</test.app.template>
+              </systemPropertyVariables>
+            </configuration>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
+      <id>accumulo-app-package-maven</id>
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-assembly-plugin</artifactId>
+            <configuration>
+              <descriptor>src/assembly/accumulo.xml</descriptor>
+              <appendAssemblyId>false</appendAssemblyId>
+              <finalName>${project.artifactId}-${pkg.version}</finalName>
+            </configuration>
+            <executions>
+              <execution>
+                <id>build-app-package</id>
+                <phase>package</phase>
+                <goals>
+                  <goal>single</goal>
+                </goals>
+              </execution>
+            </executions>
+          </plugin>
+
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-dependency-plugin</artifactId>
             <version>${maven-dependency-plugin.version}</version>
             <executions>
@@ -106,7 +182,7 @@
                 <test.app.pkg.dir>target</test.app.pkg.dir>
                 <test.app.pkg.file>${app.package.name}.zip</test.app.pkg.file>
                 
<test.app.resource>target/test-config/resources.json</test.app.resource>
-                
<test.app.template>target/${app.package.name}/appConfig.json</test.app.template>
+                
<test.app.template>target/test-config/appConfig.json</test.app.template>
               </systemPropertyVariables>
             </configuration>
           </plugin>

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/assembly/accumulo.xml
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/assembly/accumulo.xml 
b/app-packages/accumulo/src/assembly/accumulo.xml
index ca39d53..c45cad7 100644
--- a/app-packages/accumulo/src/assembly/accumulo.xml
+++ b/app-packages/accumulo/src/assembly/accumulo.xml
@@ -42,7 +42,7 @@
       <fileMode>0755</fileMode>
     </file>
     <file>
-      
<source>${project.build.directory}/${work.dir}/accumulo-${accumulo.version}-bin.tar.gz</source>
+      <source>${project.build.directory}/${work.dir}/${pkg.name}</source>
       <outputDirectory>package/files</outputDirectory>
       <filtered>false</filtered>
       <fileMode>0755</fileMode>

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/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 dc9b1aa..81f7b58 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
@@ -28,6 +28,7 @@ import org.apache.slider.accumulo.CustomAuthenticator
 import org.apache.slider.api.ClusterDescription
 import org.apache.slider.client.SliderClient
 import org.apache.slider.common.SliderKeys
+import org.apache.slider.common.tools.SliderUtils
 import org.apache.slider.core.conf.ConfTree
 import org.apache.slider.core.persist.ConfTreeSerDeser
 import org.apache.slider.core.registry.docstore.PublishedConfiguration
@@ -46,6 +47,12 @@ class AccumuloBasicIT extends AccumuloAgentCommandTestBase {
   protected static final String TRUST_PASS = "trustpass"
   protected ConfTree tree
 
+  AccumuloBasicIT() {
+    if (SliderUtils.isHadoopClusterSecure(SLIDER_CONFIG)) {
+      APP_TEMPLATE = "target/test-config/appConfig_kerberos.json"
+    }
+  }
+
   @Before
   public void createKeyStore() {
     ConfTreeSerDeser c = new ConfTreeSerDeser()

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/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 b5dd77e..3cabfd7 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
@@ -20,6 +20,7 @@ package org.apache.slider.funtest.accumulo
 import groovy.util.logging.Slf4j
 import org.apache.slider.api.ClusterDescription
 import org.apache.slider.client.SliderClient
+import org.apache.slider.common.tools.SliderUtils
 
 import javax.net.ssl.KeyManager
 import javax.net.ssl.SSLContext
@@ -32,7 +33,11 @@ import java.security.cert.X509Certificate
 @Slf4j
 class AccumuloMonitorSSLIT extends AccumuloSSLTestBase {
   AccumuloMonitorSSLIT() {
-    APP_TEMPLATE = "target/test-config/appConfig_monitor_ssl.json"
+    if (SliderUtils.isHadoopClusterSecure(SLIDER_CONFIG)) {
+      APP_TEMPLATE = "target/test-config/appConfig_monitor_ssl_kerberos.json"
+    } else {
+      APP_TEMPLATE = "target/test-config/appConfig_monitor_ssl.json"
+    }
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/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 8a1b0d2..eca7da3 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
@@ -22,6 +22,7 @@ import org.apache.accumulo.core.conf.Property
 import org.apache.hadoop.conf.Configuration
 import org.apache.hadoop.fs.Path
 import org.apache.hadoop.yarn.conf.YarnConfiguration
+import org.apache.slider.common.tools.SliderUtils
 import org.apache.slider.funtest.framework.AgentUploads
 import org.junit.Before
 
@@ -30,7 +31,11 @@ class AccumuloSSLTestBase extends AccumuloBasicIT {
   File clientKeyStoreFile = new File(TEST_APP_PKG_DIR, "keystore.jks")
 
   AccumuloSSLTestBase() {
-    APP_TEMPLATE = "target/test-config/appConfig_ssl.json"
+    if (SliderUtils.isHadoopClusterSecure(SLIDER_CONFIG)) {
+      APP_TEMPLATE = "target/test-config/appConfig_ssl_kerberos.json"
+    } else {
+      APP_TEMPLATE = "target/test-config/appConfig_ssl.json"
+    }
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig.json 
b/app-packages/accumulo/src/test/resources/appConfig.json
new file mode 100644
index 0000000..c113d4a
--- /dev/null
+++ b/app-packages/accumulo/src/test/resources/appConfig.json
@@ -0,0 +1,55 @@
+{
+  "schema": "http://example.org/specification/v2.0.0";,
+  "metadata": {
+  },
+  "global": {
+    "application.def": "${app.package.name}.zip",
+    "java_home": "/usr/lib/jvm/java",
+    "site.global.app_user": "${app.user}",
+    "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
+    "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
+    "site.global.app_root": 
"${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
+    "site.global.tserver_heapsize": "256m",
+    "site.global.master_heapsize": "128m",
+    "site.global.monitor_heapsize": "64m",
+    "site.global.gc_heapsize": "64m",
+    "site.global.other_heapsize": "128m",
+    "site.global.hadoop_prefix": "/usr/lib/hadoop",
+    "site.global.hadoop_conf_dir": "/etc/hadoop/conf",
+    "site.global.zookeeper_home": "/usr/lib/zookeeper",
+    "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
+    "site.global.accumulo_root_password": "NOT_USED",
+    "site.global.user_group": "${app.user.group}",
+    "site.global.security_enabled": "false",
+    "site.global.ssl_cert_dir": "ssl",
+    "site.global.monitor_protocol": "http",
+    "site.accumulo-site.instance.volumes": "${DEFAULT_DATA_DIR}/data",
+    "site.accumulo-site.instance.zookeeper.host": "${ZK_HOST}",
+    "site.accumulo-site.instance.security.authenticator": 
"org.apache.slider.accumulo.CustomAuthenticator",
+    "site.accumulo-site.general.security.credential.provider.paths": 
"jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks",
+    "site.accumulo-site.tserver.memory.maps.native.enabled": "false",
+    "site.accumulo-site.tserver.memory.maps.max": "80M",
+    "site.accumulo-site.tserver.cache.data.size": "7M",
+    "site.accumulo-site.tserver.cache.index.size": "20M",
+    "site.accumulo-site.trace.user": "root",
+    "site.accumulo-site.tserver.sort.buffer.size": "50M",
+    "site.accumulo-site.tserver.walog.max.size": "40M",
+    "site.accumulo-site.master.port.client": "0",
+    "site.accumulo-site.trace.port.client": "0",
+    "site.accumulo-site.tserver.port.client": "0",
+    "site.accumulo-site.gc.port.client": "0",
+    "site.accumulo-site.monitor.port.client": 
"${ACCUMULO_MONITOR.ALLOCATED_PORT}",
+    "site.accumulo-site.monitor.port.log4j": "0",
+    "site.accumulo-site.master.replication.coordinator.port": "0",
+    "site.accumulo-site.replication.receipt.service.port": "0",
+    "site.accumulo-site.general.classpaths": 
"$ACCUMULO_HOME/lib/accumulo-server.jar,\n$ACCUMULO_HOME/lib/accumulo-core.jar,\n$ACCUMULO_HOME/lib/accumulo-start.jar,\n$ACCUMULO_HOME/lib/accumulo-fate.jar,\n$ACCUMULO_HOME/lib/accumulo-proxy.jar,\n$ACCUMULO_HOME/lib/[^.].*.jar,\n$ZOOKEEPER_HOME/zookeeper[^.].*.jar,\n$HADOOP_CONF_DIR,\n$HADOOP_PREFIX/[^.].*.jar,\n$HADOOP_PREFIX/lib/[^.].*.jar,\n$HADOOP_PREFIX/share/hadoop/common/.*.jar,\n$HADOOP_PREFIX/share/hadoop/common/lib/.*.jar,\n$HADOOP_PREFIX/share/hadoop/hdfs/.*.jar,\n$HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar,\n$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,\n/usr/lib/hadoop/.*.jar,\n/usr/lib/hadoop/lib/.*.jar,\n/usr/lib/hadoop-hdfs/.*.jar,\n/usr/lib/hadoop-mapreduce/.*.jar,\n/usr/lib/hadoop-yarn/.*.jar,"
+  },
+  "credentials": {
+    "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks": 
["root.initial.password", "instance.secret", "trace.token.property.password"]
+  },
+  "components": {
+    "slider-appmaster": {
+      "jvm.heapsize": "256M"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_kerberos.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig_kerberos.json 
b/app-packages/accumulo/src/test/resources/appConfig_kerberos.json
index b1bff37..d6f849c 100644
--- a/app-packages/accumulo/src/test/resources/appConfig_kerberos.json
+++ b/app-packages/accumulo/src/test/resources/appConfig_kerberos.json
@@ -5,7 +5,7 @@
   "global": {
     "application.def": "${app.package.name}.zip",
     "java_home": "/usr/lib/jvm/java",
-    "site.global.app_user": "accumulo",
+    "site.global.app_user": "${app.user}",
     "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
     "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
     "site.global.app_root": 
"${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
@@ -19,7 +19,7 @@
     "site.global.zookeeper_home": "/usr/lib/zookeeper",
     "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
     "site.global.accumulo_root_password": "NOT_USED",
-    "site.global.user_group": "accumulo",
+    "site.global.user_group": "${app.user.group}",
     "site.global.security_enabled": "false",
     "site.global.ssl_cert_dir": "ssl",
     "site.global.monitor_protocol": "http",
@@ -27,8 +27,8 @@
     "site.accumulo-site.instance.zookeeper.host": "${ZK_HOST}",
     "site.accumulo-site.instance.security.authenticator": 
"org.apache.slider.accumulo.CustomAuthenticator",
     "site.accumulo-site.general.security.credential.provider.paths": 
"jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks",
-    "site.accumulo-site.general.kerberos.keytab": 
"/etc/security/keytabs/accumulo.service.keytab",
-    "site.accumulo-site.general.kerberos.principal": 
"accumulo/_h...@example.com",
+    "site.accumulo-site.general.kerberos.keytab": "${accumulo.keytab}",
+    "site.accumulo-site.general.kerberos.principal": "${accumulo.principal}",
     "site.accumulo-site.tserver.memory.maps.native.enabled": "false",
     "site.accumulo-site.tserver.memory.maps.max": "80M",
     "site.accumulo-site.tserver.cache.data.size": "7M",

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json
----------------------------------------------------------------------
diff --git 
a/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json 
b/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json
index 61a9bb1..d860e96 100644
--- a/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json
+++ b/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl.json
@@ -5,7 +5,7 @@
   "global": {
     "application.def": "${app.package.name}.zip",
     "java_home": "/usr/lib/jvm/java",
-    "site.global.app_user": "yarn",
+    "site.global.app_user": "${app.user}",
     "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
     "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
     "site.global.app_root": 
"${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
@@ -19,7 +19,7 @@
     "site.global.zookeeper_home": "/usr/lib/zookeeper",
     "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
     "site.global.accumulo_root_password": "NOT_USED",
-    "site.global.user_group": "hadoop",
+    "site.global.user_group": "${app.user.group}",
     "site.global.security_enabled": "false",
     "site.global.ssl_cert_dir": "ssl",
     "site.global.monitor_protocol": "https",

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl_kerberos.json
----------------------------------------------------------------------
diff --git 
a/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl_kerberos.json 
b/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl_kerberos.json
new file mode 100644
index 0000000..1357c4e
--- /dev/null
+++ 
b/app-packages/accumulo/src/test/resources/appConfig_monitor_ssl_kerberos.json
@@ -0,0 +1,57 @@
+{
+  "schema": "http://example.org/specification/v2.0.0";,
+  "metadata": {
+  },
+  "global": {
+    "application.def": "${app.package.name}.zip",
+    "java_home": "/usr/lib/jvm/java",
+    "site.global.app_user": "${app.user}",
+    "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
+    "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
+    "site.global.app_root": 
"${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
+    "site.global.tserver_heapsize": "256m",
+    "site.global.master_heapsize": "128m",
+    "site.global.monitor_heapsize": "64m",
+    "site.global.gc_heapsize": "64m",
+    "site.global.other_heapsize": "128m",
+    "site.global.hadoop_prefix": "/usr/lib/hadoop",
+    "site.global.hadoop_conf_dir": "/etc/hadoop/conf",
+    "site.global.zookeeper_home": "/usr/lib/zookeeper",
+    "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
+    "site.global.accumulo_root_password": "NOT_USED",
+    "site.global.user_group": "${app.user.group}",
+    "site.global.security_enabled": "false",
+    "site.global.ssl_cert_dir": "ssl",
+    "site.global.monitor_protocol": "https",
+    "site.accumulo-site.instance.volumes": "${DEFAULT_DATA_DIR}/data",
+    "site.accumulo-site.instance.zookeeper.host": "${ZK_HOST}",
+    "site.accumulo-site.instance.security.authenticator": 
"org.apache.slider.accumulo.CustomAuthenticator",
+    "site.accumulo-site.general.security.credential.provider.paths": 
"jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks",
+    "site.accumulo-site.general.kerberos.keytab": "${accumulo.keytab}",
+    "site.accumulo-site.general.kerberos.principal": "${accumulo.principal}",
+    "site.accumulo-site.tserver.memory.maps.native.enabled": "false",
+    "site.accumulo-site.tserver.memory.maps.max": "80M",
+    "site.accumulo-site.tserver.cache.data.size": "7M",
+    "site.accumulo-site.tserver.cache.index.size": "20M",
+    "site.accumulo-site.trace.user": "root",
+    "site.accumulo-site.tserver.sort.buffer.size": "50M",
+    "site.accumulo-site.tserver.walog.max.size": "40M",
+    "site.accumulo-site.master.port.client": "0",
+    "site.accumulo-site.trace.port.client": "0",
+    "site.accumulo-site.tserver.port.client": "0",
+    "site.accumulo-site.gc.port.client": "0",
+    "site.accumulo-site.monitor.port.client": 
"${ACCUMULO_MONITOR.ALLOCATED_PORT}",
+    "site.accumulo-site.monitor.port.log4j": "0",
+    "site.accumulo-site.master.replication.coordinator.port": "0",
+    "site.accumulo-site.replication.receipt.service.port": "0",
+    "site.accumulo-site.general.classpaths": 
"$ACCUMULO_HOME/lib/accumulo-server.jar,\n$ACCUMULO_HOME/lib/accumulo-core.jar,\n$ACCUMULO_HOME/lib/accumulo-start.jar,\n$ACCUMULO_HOME/lib/accumulo-fate.jar,\n$ACCUMULO_HOME/lib/accumulo-proxy.jar,\n$ACCUMULO_HOME/lib/[^.].*.jar,\n$ZOOKEEPER_HOME/zookeeper[^.].*.jar,\n$HADOOP_CONF_DIR,\n$HADOOP_PREFIX/[^.].*.jar,\n$HADOOP_PREFIX/lib/[^.].*.jar,\n$HADOOP_PREFIX/share/hadoop/common/.*.jar,\n$HADOOP_PREFIX/share/hadoop/common/lib/.*.jar,\n$HADOOP_PREFIX/share/hadoop/hdfs/.*.jar,\n$HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar,\n$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,\n/usr/lib/hadoop/.*.jar,\n/usr/lib/hadoop/lib/.*.jar,\n/usr/lib/hadoop-hdfs/.*.jar,\n/usr/lib/hadoop-mapreduce/.*.jar,\n/usr/lib/hadoop-yarn/.*.jar,"
+  },
+  "credentials": {
+    "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks": 
["root.initial.password", "instance.secret", "trace.token.property.password", 
"monitor.ssl.keyStorePassword", "monitor.ssl.trustStorePassword"]
+  },
+  "components": {
+    "slider-appmaster": {
+      "jvm.heapsize": "256M"
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_ssl.json
----------------------------------------------------------------------
diff --git a/app-packages/accumulo/src/test/resources/appConfig_ssl.json 
b/app-packages/accumulo/src/test/resources/appConfig_ssl.json
index e46d40e..b0bc981 100644
--- a/app-packages/accumulo/src/test/resources/appConfig_ssl.json
+++ b/app-packages/accumulo/src/test/resources/appConfig_ssl.json
@@ -5,7 +5,7 @@
   "global": {
     "application.def": "${app.package.name}.zip",
     "java_home": "/usr/lib/jvm/java",
-    "site.global.app_user": "yarn",
+    "site.global.app_user": "${app.user}",
     "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
     "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
     "site.global.app_root": 
"${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
@@ -19,7 +19,7 @@
     "site.global.zookeeper_home": "/usr/lib/zookeeper",
     "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
     "site.global.accumulo_root_password": "NOT_USED",
-    "site.global.user_group": "hadoop",
+    "site.global.user_group": "${app.user.group}",
     "site.global.security_enabled": "false",
     "site.global.ssl_cert_dir": "ssl",
     "site.global.monitor_protocol": "http",

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/3c1d9dc2/app-packages/accumulo/src/test/resources/appConfig_ssl_kerberos.json
----------------------------------------------------------------------
diff --git 
a/app-packages/accumulo/src/test/resources/appConfig_ssl_kerberos.json 
b/app-packages/accumulo/src/test/resources/appConfig_ssl_kerberos.json
new file mode 100644
index 0000000..8072446
--- /dev/null
+++ b/app-packages/accumulo/src/test/resources/appConfig_ssl_kerberos.json
@@ -0,0 +1,59 @@
+{
+  "schema": "http://example.org/specification/v2.0.0";,
+  "metadata": {
+  },
+  "global": {
+    "application.def": "${app.package.name}.zip",
+    "java_home": "/usr/lib/jvm/java",
+    "site.global.app_user": "${app.user}",
+    "site.global.app_log_dir": "${AGENT_LOG_ROOT}",
+    "site.global.app_pid_dir": "${AGENT_WORK_ROOT}/app/run",
+    "site.global.app_root": 
"${AGENT_WORK_ROOT}/app/install/accumulo-${accumulo.version}",
+    "site.global.tserver_heapsize": "256m",
+    "site.global.master_heapsize": "128m",
+    "site.global.monitor_heapsize": "64m",
+    "site.global.gc_heapsize": "64m",
+    "site.global.other_heapsize": "128m",
+    "site.global.hadoop_prefix": "/usr/lib/hadoop",
+    "site.global.hadoop_conf_dir": "/etc/hadoop/conf",
+    "site.global.zookeeper_home": "/usr/lib/zookeeper",
+    "site.global.accumulo_instance_name": "${USER}-${CLUSTER_NAME}",
+    "site.global.accumulo_root_password": "NOT_USED",
+    "site.global.user_group": "${app.user.group}",
+    "site.global.security_enabled": "false",
+    "site.global.ssl_cert_dir": "ssl",
+    "site.global.monitor_protocol": "http",
+    "site.accumulo-site.instance.volumes": "${DEFAULT_DATA_DIR}/data",
+    "site.accumulo-site.instance.zookeeper.host": "${ZK_HOST}",
+    "site.accumulo-site.instance.security.authenticator": 
"org.apache.slider.accumulo.CustomAuthenticator",
+    "site.accumulo-site.instance.rpc.ssl.enabled": "true",
+    "site.accumulo-site.instance.rpc.ssl.clientAuth": "true",
+    "site.accumulo-site.general.security.credential.provider.paths": 
"jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks",
+    "site.accumulo-site.general.kerberos.keytab": "${accumulo.keytab}",
+    "site.accumulo-site.general.kerberos.principal": "${accumulo.principal}",
+    "site.accumulo-site.tserver.memory.maps.native.enabled": "false",
+    "site.accumulo-site.tserver.memory.maps.max": "80M",
+    "site.accumulo-site.tserver.cache.data.size": "7M",
+    "site.accumulo-site.tserver.cache.index.size": "20M",
+    "site.accumulo-site.trace.user": "root",
+    "site.accumulo-site.tserver.sort.buffer.size": "50M",
+    "site.accumulo-site.tserver.walog.max.size": "40M",
+    "site.accumulo-site.master.port.client": "0",
+    "site.accumulo-site.trace.port.client": "0",
+    "site.accumulo-site.tserver.port.client": "0",
+    "site.accumulo-site.gc.port.client": "0",
+    "site.accumulo-site.monitor.port.client": 
"${ACCUMULO_MONITOR.ALLOCATED_PORT}",
+    "site.accumulo-site.monitor.port.log4j": "0",
+    "site.accumulo-site.master.replication.coordinator.port": "0",
+    "site.accumulo-site.replication.receipt.service.port": "0",
+    "site.accumulo-site.general.classpaths": 
"$ACCUMULO_HOME/lib/accumulo-server.jar,\n$ACCUMULO_HOME/lib/accumulo-core.jar,\n$ACCUMULO_HOME/lib/accumulo-start.jar,\n$ACCUMULO_HOME/lib/accumulo-fate.jar,\n$ACCUMULO_HOME/lib/accumulo-proxy.jar,\n$ACCUMULO_HOME/lib/[^.].*.jar,\n$ZOOKEEPER_HOME/zookeeper[^.].*.jar,\n$HADOOP_CONF_DIR,\n$HADOOP_PREFIX/[^.].*.jar,\n$HADOOP_PREFIX/lib/[^.].*.jar,\n$HADOOP_PREFIX/share/hadoop/common/.*.jar,\n$HADOOP_PREFIX/share/hadoop/common/lib/.*.jar,\n$HADOOP_PREFIX/share/hadoop/hdfs/.*.jar,\n$HADOOP_PREFIX/share/hadoop/mapreduce/.*.jar,\n$HADOOP_PREFIX/share/hadoop/yarn/.*.jar,\n/usr/lib/hadoop/.*.jar,\n/usr/lib/hadoop/lib/.*.jar,\n/usr/lib/hadoop-hdfs/.*.jar,\n/usr/lib/hadoop-mapreduce/.*.jar,\n/usr/lib/hadoop-yarn/.*.jar,"
+  },
+  "credentials": {
+    "jceks://hdfs/user/${USER}/accumulo-${CLUSTER_NAME}.jceks": 
["root.initial.password", "instance.secret", "trace.token.property.password", 
"rpc.javax.net.ssl.keyStorePassword", "rpc.javax.net.ssl.trustStorePassword"]
+  },
+  "components": {
+    "slider-appmaster": {
+      "jvm.heapsize": "256M"
+    }
+  }
+}

Reply via email to