Currently, the stack tools:
Are bound to the cluster-env without any sort of scoping. This prevents 2 sets of stack tools from co-existing. Although Ambari doesn't support more than a single stack in 2.x, we do support upgrades from one stack vendor to another. Therefore, we need this support to send the right tools on the commands.
This will involve the following work:
- Changing the existing stack tools/features/root to have a stack name as the key in the JSON
- Altering the existing cluster-env tools on upgrade
- Ensuring that the stack tools/features for a repository's stack exist when distributing that stack
- Changing any Python code which references the stack tools (stack_tools.py, alerts, etc)