Oleksandr Diachenko created AMBARI-12439:
--------------------------------------------

             Summary: Implement support of logical expressions in dependencies 
for stack components
                 Key: AMBARI-12439
                 URL: https://issues.apache.org/jira/browse/AMBARI-12439
             Project: Ambari
          Issue Type: New Feature
          Components: ambari-server, ambari-web, stacks
    Affects Versions: 1.7.0
            Reporter: Oleksandr Diachenko


Some services' components could have dependency to be collocated with at least 
one component from list.
For example, component X requires DATANODE or NAMENODE to be installed on the 
same host.
As for now we can define only strict dependencies to all of three components, 
like this: 
{code:xml}
                <dependency>
                    <name>HDFS/DATANODE</name>
                    <scope>host</scope>
                    <auto-deploy>
                        <enabled>true</enabled>
                    </auto-deploy>
                </dependency>
                <dependency>
                    <name>HDFS/NAMENODE</name>
                    <scope>host</scope>
                    <auto-deploy>
                        <enabled>true</enabled>
                    </auto-deploy>
                </dependency>
{code}
But this definition will ask user to install both components, not only one of 
them.
For that sake it would be nice to support more complex definitions of 
dependencies.
For example:
{code:xml}
                <dependency>
                    <name>(HDFS/DATANODE|HDFS/NAMENODE)</name>
                    <scope>host</scope>
                    <auto-deploy>
                        <enabled>true</enabled>
                    </auto-deploy>
                </dependency>
{code} - means component requires at least one of DATANODE or NAMENODE 
components.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to