public synchronized void addHostRoleExecutionCommand(Host host, Role role, RoleCommand command,
      ServiceComponentHostEvent event, Cluster cluster, String serviceName, boolean retryAllowed,
      boolean autoSkipFailure) {

    boolean isHostRoleCommandAutoSkippable = autoSkipFailure && supportsAutoSkipOnFailure
        && skippable;

    ExecutionCommandWrapper commandWrapper = addGenericExecutionCommand(cluster, host, role,
        command, event, retryAllowed, isHostRoleCommandAutoSkippable);

    commandWrapper.getExecutionCommand().setServiceName(serviceName);
  }
A new host role command is created for execution. Creates both
ExecutionCommand and HostRoleCommand objects and adds them to the Stage.
This should be called only once for a host-role for a given stage.
ambari-server/src/main/java/org/apache/ambari/server/actionmanager/Stage.java