SLIDER-1107 remove unneeded changes from this branch
diff --git a/slider-agent/src/main/python/agent/YarnDockerManager.py b/slider-agent/src/main/python/agent/YarnDockerManager.py
index 4ae19ab..abdb2fb 100644
--- a/slider-agent/src/main/python/agent/YarnDockerManager.py
+++ b/slider-agent/src/main/python/agent/YarnDockerManager.py
@@ -55,7 +55,8 @@
         self.container_id = command['hostLevelParams']['container_id']
 
     if command['roleCommand'] == 'INSTALL':
-      # do nothing
+      with Environment(self.workroot) as env:
+        self.install_container(command, env)
       returncode = 0; out = ''; err = ''
     if command['roleCommand'] == 'START':
       returncode, out, err = self.start_container(command)    
@@ -129,6 +130,40 @@
         return command['configurations']['global'][keyName]
     return None
 
+  def install_container(self, command, env):
+    try:
+      configFiles = self.extract_config_files_from_command(command)
+      for configFile in configFiles:
+        properties = self.extract_config_file_properties_from_command(command, configFile)
+        fileName = configFile['fileName']
+        dir = self.get_config_file_global(command, configFile, 'destDir')
+        if dir is None:
+          dir = self.workroot
+        logger.info("creating config file " + str(configFile) + " in directory "+str(dir))
+        Directory(dir, recursive = True)
+        if configFile['type'] == 'properties':
+          PropertiesFile(fileName,
+                         dir=dir,
+                         properties=properties)
+        elif configFile['type'] == 'env':
+          content = self.get_config_file_global(command, configFile, 'content', useEnv=False)
+          if content is not None:
+            File(os.path.join(dir, fileName),
+                 content=InlineTemplate(content, **properties))
+        elif configFile['type'] == 'template':
+          templateFile = self.get_config_file_global(command, configFile, 'templateFile')
+          if templateFile is not None:
+            with open(templateFile,"r") as fp:
+              fileContent = fp.read()
+            File(os.path.join(dir, fileName),
+                 content=InlineTemplate(fileContent, **properties))
+        elif configFile['type'] == 'xml':
+          XmlConfig(fileName,
+                    conf_dir=dir,
+                    configurations=properties)
+    except:
+      traceback.print_exc()
+
   def start_container(self, command):
     #extracting param needed by docker run from the command passed from AM
     startCommand = self.extract_config_from_command(command, 'docker.startCommand')
diff --git a/slider-agent/src/main/python/resource_management/core/shell.py b/slider-agent/src/main/python/resource_management/core/shell.py
index e717ae4..f21dbbf 100644
--- a/slider-agent/src/main/python/resource_management/core/shell.py
+++ b/slider-agent/src/main/python/resource_management/core/shell.py
@@ -31,8 +31,10 @@
 from resource_management.core.logger import Logger
 import time
 
-APPLICATION_STD_OUTPUT_LOG_FILE = 'application.log'
-APPLICATION_STD_ERROR_LOG_FILE = 'application.err'
+APPLICATION_STD_OUTPUT_LOG_FILE_PREFIX = 'application-'
+APPLICATION_STD_OUTPUT_LOG_FILE_FILE_TYPE = '.log'
+APPLICATION_STD_ERROR_LOG_FILE_PREFIX = 'application-'
+APPLICATION_STD_ERROR_LOG_FILE_FILE_TYPE = '.err'
 
 def checked_call(command, logoutput=False, 
          cwd=None, env=None, preexec_fn=None, user=None, wait_for_finish=True, timeout=None, pid_file=None, poll_after=None):
@@ -67,9 +69,15 @@
   """
   command = ["/bin/bash","--login","-c", command]
   #adding redirecting stdout stderr to file
-  stdoutFile = open(APPLICATION_STD_OUTPUT_LOG_FILE, 'w+')
-  stderrFile = open(APPLICATION_STD_ERROR_LOG_FILE, 'w+')
+  outfilename = APPLICATION_STD_OUTPUT_LOG_FILE_PREFIX + \
+                    str(pid_file_name) + APPLICATION_STD_OUTPUT_LOG_FILE_FILE_TYPE
+          
+  errfilename = APPLICATION_STD_ERROR_LOG_FILE_PREFIX + \
+                    str(pid_file_name) + APPLICATION_STD_ERROR_LOG_FILE_FILE_TYPE
 
+  stdoutFile = open(outfilename, 'w')
+  stderrFile = open(errfilename, 'w')
+  
   proc = subprocess.Popen(command, stdout = stdoutFile, stderr = stderrFile, universal_newlines = True,
                           cwd=cwd, env=env, shell=False,
                           preexec_fn=preexec_fn)
@@ -134,4 +142,4 @@
   for char in command:
     if char not in valid:
       return "'" + command.replace("'", "'\"'\"'") + "'"
-  return command
+  return command
\ No newline at end of file
diff --git a/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfiguration.java b/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfiguration.java
index 477f7d3..50b522f 100644
--- a/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfiguration.java
+++ b/slider-core/src/main/java/org/apache/slider/core/registry/docstore/PublishedConfiguration.java
@@ -85,6 +85,7 @@
     putValues(ConfigHelper.resolveConfiguration(keysource, valuesource));
   }
 
+  
   /**
    * Is the configuration empty. This means either that it has not
    * been given any values, or it is stripped down copy set down over the
diff --git a/slider-funtest/src/test/groovy/org/apache/slider/funtest/misc/AMConfigPublishingIT.groovy b/slider-funtest/src/test/groovy/org/apache/slider/funtest/misc/AMConfigPublishingIT.groovy
index de3ea3e..e84ada6 100644
--- a/slider-funtest/src/test/groovy/org/apache/slider/funtest/misc/AMConfigPublishingIT.groovy
+++ b/slider-funtest/src/test/groovy/org/apache/slider/funtest/misc/AMConfigPublishingIT.groovy
@@ -20,11 +20,7 @@
 
 import groovy.transform.CompileStatic
 import groovy.util.logging.Slf4j
-import org.apache.hadoop.fs.Path
-import org.apache.slider.api.ClusterDescription
-import org.apache.slider.client.SliderClient
 import org.apache.slider.common.SliderExitCodes
-import org.apache.slider.common.SliderKeys
 import org.apache.slider.common.params.Arguments
 import org.apache.slider.common.params.SliderActions
 import org.apache.slider.common.tools.SliderUtils