[
https://issues.apache.org/jira/browse/AMBARI-3731?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13822209#comment-13822209
]
Sumit Mohanty commented on AMBARI-3731:
---------------------------------------
{quote}
public Stage getAction(String actionId);
This should be renamed to getStage or getStageByActionId
{quote}
Renamed.
{quote}
if (!requestEntity.getIsCommand())
Is there a possibility for neither action nor command (in future), can this be
simplified to: request.isAction()
{quote}
Line refactored out.
{quote}
validateCustomAction
Is there a case for checking if a Service belongs to the cluster and not just
the stack?
{quote}
This is done when execution is scheduled. If the service does not belong to the
stack then no hosts are identified as a target which is an error.
{quote}
AmbariManagementControllerImpl.CLUSTER_DEFAULT_TAG
Duplicate definition in ConfigHelper.java
{quote}
Removed one.
{quote}
Changes need to be replicated to other DDL scripts at
ambari-server/src/main/resources
For MySQL, Oracle and Pgsql remote.
{quote}
Modified the upgrade script. Opened a JIRA for Oracle changes. MySQL is quite
outdated and so is PgSQL remote.
{quote}
at ExecutionCommand.java, we already have 'String role' field that stores
component name. Maybe it's better to rename it instead of adding new 'String
componentName' field
{quote}
Role is being used as the name of the custom action or commands. We may need to
revisit the structure after agent side changes are finalized for service
pluggability.
> Add support for custom action execution
> ---------------------------------------
>
> Key: AMBARI-3731
> URL: https://issues.apache.org/jira/browse/AMBARI-3731
> Project: Ambari
> Issue Type: Sub-task
> Components: controller
> Affects Versions: 1.4.2
> Reporter: Sumit Mohanty
> Assignee: Sumit Mohanty
> Fix For: 1.4.2
>
> Attachments: AMBARI-3731-II.patch, AMBARI-3731.patch
>
>
> An action is executed on demand. Actions can also be executed as a part of
> some other operation being executed by Ambari. For example, ‘Verify Kerberos
> Setting’ can be executed while setting up the secured cluster or at a later
> point when the admin has a need to verify the setting while debugging some
> issue.
> Once an action is requested by posting the request to the cluster specific
> actions collection, the executor can monitor the status to know when the
> action has finished execution. The links specific to the hosts can be
> monitored for progress on specific hosts.
> Ambari Server may execute the action on all hosts in parallel.
> A custom action execution request consists of:
> * ActionName: This is a reference to the action being executed
> * Inputs: The inputs provided by the action executor to the action
> * TargetHosts: The set of hosts where the action should be executed
> *API support for Custom Action Execution*
> An action is scheduled by posting a request resource.
> {code}
> curl -u admin:admin -X POST -d'{"RequestInfo":{"context":"Execute an action",
> "action" : "a1", "service_name" : "HDFS", "component_name":"DATANODE",
> "hosts":"h1"}}' http://localhost:8080/api/v1/clusters/c1/requests
> {code}
> Sub-tasks:
> * API support to post action execution
> * API support to read executed actions
> * DB changes to hold action execution requests
--
This message was sent by Atlassian JIRA
(v6.1#6144)