SLIDER-459. Environment variable for containers do not expand correctly
Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/43f9a94a Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/43f9a94a Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/43f9a94a Branch: refs/heads/feature/SLIDER-158_slider_diagnostic_option Commit: 43f9a94ad364f691069723667983f1b0ed285a55 Parents: 772759c Author: Sumit Mohanty <[email protected]> Authored: Thu Sep 25 23:55:23 2014 -0700 Committer: Sumit Mohanty <[email protected]> Committed: Thu Sep 25 23:55:23 2014 -0700 ---------------------------------------------------------------------- slider-agent/src/main/python/agent/ProcessHelper.py | 5 +++-- slider-agent/src/main/python/agent/main.py | 13 +++++++++---- .../org/apache/slider/providers/agent/AgentKeys.java | 2 +- .../slider/providers/agent/AgentProviderService.java | 2 +- 4 files changed, 14 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/43f9a94a/slider-agent/src/main/python/agent/ProcessHelper.py ---------------------------------------------------------------------- diff --git a/slider-agent/src/main/python/agent/ProcessHelper.py b/slider-agent/src/main/python/agent/ProcessHelper.py index 467c4d8..81737f4 100644 --- a/slider-agent/src/main/python/agent/ProcessHelper.py +++ b/slider-agent/src/main/python/agent/ProcessHelper.py @@ -24,11 +24,12 @@ import traceback import sys import posixpath from shell import getTempFiles +import Constants logger = logging.getLogger() -if 'AGENT_WORK_ROOT' in os.environ: - pidfile = os.path.realpath(posixpath.join(os.environ['AGENT_WORK_ROOT'], "infra", "run", "agent.pid")) +if Constants.AGENT_WORK_ROOT in os.environ: + pidfile = os.path.realpath(posixpath.join(os.environ[Constants.AGENT_WORK_ROOT], "infra", "run", "agent.pid")) else: pidfile = None http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/43f9a94a/slider-agent/src/main/python/agent/main.py ---------------------------------------------------------------------- diff --git a/slider-agent/src/main/python/agent/main.py b/slider-agent/src/main/python/agent/main.py index a8fc4e1..48d84cd 100644 --- a/slider-agent/src/main/python/agent/main.py +++ b/slider-agent/src/main/python/agent/main.py @@ -43,7 +43,7 @@ formatstr = "%(levelname)s %(asctime)s %(filename)s:%(lineno)d - %(message)s" agentPid = os.getpid() configFileRelPath = "infra/conf/agent.ini" -logFileName = "agent.log" +logFileName = "slider-agent.log" SERVER_STATUS_URL="https://{0}:{1}{2}" @@ -185,9 +185,14 @@ def main(): parser.add_option("--debug", dest="debug", help="Agent debug hint", default="") (options, args) = parser.parse_args() - if not 'AGENT_WORK_ROOT' in os.environ: - parser.error("AGENT_WORK_ROOT environment variable must be set.") - options.root_folder = os.environ['AGENT_WORK_ROOT'] + if not Constants.AGENT_WORK_ROOT in os.environ and not 'PWD' in os.environ: + parser.error("AGENT_WORK_ROOT environment variable or PWD must be set.") + if Constants.AGENT_WORK_ROOT in os.environ: + options.root_folder = os.environ[Constants.AGENT_WORK_ROOT] + else: + # some launch environments do not end up setting all environment variables + options.root_folder = os.environ['PWD'] + if not 'AGENT_LOG_ROOT' in os.environ: parser.error("AGENT_LOG_ROOT environment variable must be set.") options.log_folder = os.environ['AGENT_LOG_ROOT'] http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/43f9a94a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentKeys.java ---------------------------------------------------------------------- diff --git a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentKeys.java b/slider-core/src/main/java/org/apache/slider/providers/agent/AgentKeys.java index 1da99b0..c271e8e 100644 --- a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentKeys.java +++ b/slider-core/src/main/java/org/apache/slider/providers/agent/AgentKeys.java @@ -91,7 +91,7 @@ public interface AgentKeys { String CREATE_DEF_ZK_NODE = "create.default.zookeeper.node"; String HEARTBEAT_MONITOR_INTERVAL = "heartbeat.monitor.interval"; String AGENT_INSTANCE_DEBUG_DATA = "agent.instance.debug.data"; - String AGENT_OUT_FILE = "agent.out"; + String AGENT_OUT_FILE = "slider-agent.out"; } http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/43f9a94a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentProviderService.java ---------------------------------------------------------------------- diff --git a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentProviderService.java b/slider-core/src/main/java/org/apache/slider/providers/agent/AgentProviderService.java index f37150e..647c6a8 100644 --- a/slider-core/src/main/java/org/apache/slider/providers/agent/AgentProviderService.java +++ b/slider-core/src/main/java/org/apache/slider/providers/agent/AgentProviderService.java @@ -253,7 +253,7 @@ public class AgentProviderService extends AbstractProviderService implements String workDir = ApplicationConstants.Environment.PWD.$(); launcher.setEnv("AGENT_WORK_ROOT", workDir); log.info("AGENT_WORK_ROOT set to {}", workDir); - String logDir = ApplicationConstants.Environment.LOG_DIRS.$(); + String logDir = ApplicationConstants.LOG_DIR_EXPANSION_VAR; launcher.setEnv("AGENT_LOG_ROOT", logDir); log.info("AGENT_LOG_ROOT set to {}", logDir); if (System.getenv(HADOOP_USER_NAME) != null) {
