AMBARI-22402. PERF stack: Deploy fails due to common hooks being used instead of one specific to PERF (aonishuk)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/3dca5607 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/3dca5607 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/3dca5607 Branch: refs/heads/branch-3.0-perf Commit: 3dca5607d736f5d70ef0a48898c2e009fd60b50a Parents: c9936ad Author: Andrew Onishuk <[email protected]> Authored: Mon Nov 27 15:06:24 2017 +0200 Committer: Andrew Onishuk <[email protected]> Committed: Mon Nov 27 15:06:24 2017 +0200 ---------------------------------------------------------------------- .../ambari/server/actionmanager/ExecutionCommandWrapper.java | 7 +++++-- .../java/org/apache/ambari/server/agent/HeartbeatMonitor.java | 3 +-- .../org/apache/ambari/server/configuration/Configuration.java | 7 +++++++ .../server/controller/internal/UpgradeResourceProvider.java | 3 +-- .../java/org/apache/ambari/server/stack/StackManager.java | 5 ----- contrib/utils/perf/deploy-gce-perf-cluster.py | 1 + 6 files changed, 15 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/3dca5607/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java index a0c5f26..7b693cd 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ExecutionCommandWrapper.java @@ -20,7 +20,6 @@ package org.apache.ambari.server.actionmanager; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.HOOKS_FOLDER; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.SERVICE_PACKAGE_FOLDER; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.VERSION; -import static org.apache.ambari.server.stack.StackManager.DEFAULT_HOOKS_FOLDER; import java.util.HashMap; import java.util.Map; @@ -34,6 +33,7 @@ import org.apache.ambari.server.agent.AgentCommand.AgentCommandType; import org.apache.ambari.server.agent.CommandRepository; import org.apache.ambari.server.agent.ExecutionCommand; import org.apache.ambari.server.api.services.AmbariMetaInfo; +import org.apache.ambari.server.configuration.Configuration; import org.apache.ambari.server.controller.spi.SystemException; import org.apache.ambari.server.orm.dao.HostRoleCommandDAO; import org.apache.ambari.server.orm.entities.OperatingSystemEntity; @@ -93,6 +93,9 @@ public class ExecutionCommandWrapper { @Inject private AmbariMetaInfo ambariMetaInfo; + @Inject + private Configuration configuration; + @AssistedInject public ExecutionCommandWrapper(@Assisted String jsonExecutionCommand) { this.jsonExecutionCommand = jsonExecutionCommand; @@ -304,7 +307,7 @@ public class ExecutionCommandWrapper { stackId.getStackVersion()); if (!commandParams.containsKey(HOOKS_FOLDER)) { - commandParams.put(HOOKS_FOLDER, DEFAULT_HOOKS_FOLDER); + commandParams.put(HOOKS_FOLDER,configuration.getProperty(Configuration.HOOKS_FOLDER)); } if (!commandParams.containsKey(SERVICE_PACKAGE_FOLDER)) { http://git-wip-us.apache.org/repos/asf/ambari/blob/3dca5607/ambari-server/src/main/java/org/apache/ambari/server/agent/HeartbeatMonitor.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/agent/HeartbeatMonitor.java b/ambari-server/src/main/java/org/apache/ambari/server/agent/HeartbeatMonitor.java index c13df6b..d51364e 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/agent/HeartbeatMonitor.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/agent/HeartbeatMonitor.java @@ -25,7 +25,6 @@ import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.SCRIPT_TY import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.SERVICE_PACKAGE_FOLDER; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.STACK_NAME; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.STACK_VERSION; -import static org.apache.ambari.server.stack.StackManager.DEFAULT_HOOKS_FOLDER; import java.util.ArrayList; import java.util.Collection; @@ -341,7 +340,7 @@ public class HeartbeatMonitor implements Runnable { commandParams.put(COMMAND_TIMEOUT, commandTimeout); commandParams.put(SERVICE_PACKAGE_FOLDER, serviceInfo.getServicePackageFolder()); - commandParams.put(HOOKS_FOLDER, DEFAULT_HOOKS_FOLDER); + commandParams.put(HOOKS_FOLDER, configuration.getProperty(Configuration.HOOKS_FOLDER)); // Fill host level params Map<String, String> hostLevelParams = statusCmd.getHostLevelParams(); hostLevelParams.put(JDK_LOCATION, ambariManagementController.getJdkResourceUrl()); http://git-wip-us.apache.org/repos/asf/ambari/blob/3dca5607/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java b/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java index a53aebd..ea44a90 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java @@ -2045,6 +2045,13 @@ public class Configuration { "server.task.timeout", 1200); /** + * A location of hooks folder relative to resources folder. + */ + @Markdown(description = "A location of hooks folder relative to resources folder.") + public static final ConfigurationProperty<String> HOOKS_FOLDER = new ConfigurationProperty<>( + "stack.hooks.folder", "stack-hooks"); + + /** * The location on the Ambari Server where custom actions are defined. */ @Markdown(description = "The location on the Ambari Server where custom actions are defined.") http://git-wip-us.apache.org/repos/asf/ambari/blob/3dca5607/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java index e4dd441..c5303cc 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeResourceProvider.java @@ -19,7 +19,6 @@ package org.apache.ambari.server.controller.internal; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.HOOKS_FOLDER; import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.SERVICE_PACKAGE_FOLDER; -import static org.apache.ambari.server.stack.StackManager.DEFAULT_HOOKS_FOLDER; import java.text.MessageFormat; import java.util.ArrayList; @@ -977,7 +976,7 @@ public class UpgradeResourceProvider extends AbstractControllerResourceProvider effectiveStackId.getStackVersion(), serviceName); commandParams.put(SERVICE_PACKAGE_FOLDER, serviceInfo.getServicePackageFolder()); - commandParams.put(HOOKS_FOLDER, DEFAULT_HOOKS_FOLDER); + commandParams.put(HOOKS_FOLDER, s_configuration.getProperty(Configuration.HOOKS_FOLDER)); } } http://git-wip-us.apache.org/repos/asf/ambari/blob/3dca5607/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java b/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java index eb6737a..b11ecab 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/stack/StackManager.java @@ -79,11 +79,6 @@ public class StackManager { public static final String COMMON_SERVICES = "common-services"; /** - * Prefix used for common stack hooks parent path string - */ - public static final String DEFAULT_HOOKS_FOLDER = "stack-hooks"; - - /** * Prefix used for extension services parent path string */ public static final String EXTENSIONS = "extensions"; http://git-wip-us.apache.org/repos/asf/ambari/blob/3dca5607/contrib/utils/perf/deploy-gce-perf-cluster.py ---------------------------------------------------------------------- diff --git a/contrib/utils/perf/deploy-gce-perf-cluster.py b/contrib/utils/perf/deploy-gce-perf-cluster.py index 7431ae9..6084ce9 100644 --- a/contrib/utils/perf/deploy-gce-perf-cluster.py +++ b/contrib/utils/perf/deploy-gce-perf-cluster.py @@ -381,6 +381,7 @@ def create_server_script(server_host_name): "echo 'alerts.cache.size=100000' >> /etc/ambari-server/conf/ambari.properties\n" + \ "echo 'alerts.execution.scheduler.maxThreads=4' >> /etc/ambari-server/conf/ambari.properties\n" + \ "echo 'security.temporary.keystore.retention.minutes=180' >> /etc/ambari-server/conf/ambari.properties\n" + \ + "echo 'stack.hooks.folder=stacks/PERF/1.0/hooks' >> /etc/ambari-server/conf/ambari.properties\n" + \ "\n" + \ "ambari-server start --skip-database-check\n" + \ "exit 0"
