This is an automated email from the ASF dual-hosted git repository.

dsen pushed a commit to branch AMBARI-22815-branch-feature-AMBARI-14714
in repository https://gitbox.apache.org/repos/asf/ambari.git

commit c1a3a45af76b1fc031652845e57beb35873c5879
Author: Dmytro Sen <[email protected]>
AuthorDate: Fri Jan 19 15:53:22 2018 +0200

    AMBARI-22815 Change requiredServices in metainfo.xml (dsen)
---
 .../stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml |  5 +-
 .../stacks/HDP/2.0.6/services/FLUME/metainfo.xml   |  5 +-
 .../stacks/HDP/2.0.7/services/HBASE/metainfo.xml   | 10 ++-
 .../HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml |  5 +-
 .../server/controller/StackServiceResponse.java    |  7 +-
 .../ambari/server/state/RequiredService.java       | 80 ++++++++++++++++++++++
 .../apache/ambari/server/state/ServiceInfo.java    |  6 +-
 .../ACCUMULO/1.6.1.2.2.0/metainfo.xml              | 10 ++-
 .../AMBARI_INFRA/0.1.0/metainfo.xml                |  5 +-
 .../AMBARI_METRICS/0.1.0/metainfo.xml              |  5 +-
 .../common-services/ATLAS/0.7.0.2.5/metainfo.xml   |  5 +-
 .../common-services/ATLAS/0.7.0.3.0/metainfo.xml   |  5 +-
 .../common-services/DRUID/0.10.1/metainfo.xml      |  5 +-
 .../common-services/FALCON/0.5.0.2.1/metainfo.xml  |  5 +-
 .../common-services/HAWQ/2.0.0/metainfo.xml        |  5 +-
 .../common-services/HBASE/0.96.0.2.0/metainfo.xml  | 10 ++-
 .../common-services/HBASE/2.0.0.3.0/metainfo.xml   | 10 ++-
 .../common-services/HIVE/0.12.0.2.0/metainfo.xml   | 15 +++-
 .../common-services/HIVE/2.1.0.3.0/metainfo.xml    | 25 +++++--
 .../common-services/KAFKA/0.10.0.3.0/metainfo.xml  |  5 +-
 .../common-services/KAFKA/0.8.1/metainfo.xml       |  5 +-
 .../common-services/MAHOUT/1.0.0.2.3/metainfo.xml  |  5 +-
 .../common-services/OOZIE/4.0.0.2.0/metainfo.xml   |  5 +-
 .../common-services/OOZIE/4.2.0.2.3/metainfo.xml   |  5 +-
 .../common-services/OOZIE/4.2.0.3.0/metainfo.xml   |  5 +-
 .../common-services/PIG/0.12.0.2.0/metainfo.xml    |  5 +-
 .../common-services/PIG/0.16.1.3.0/metainfo.xml    | 10 ++-
 .../common-services/PXF/3.0.0/metainfo.xml         |  5 +-
 .../RANGER_KMS/0.5.0.2.3/metainfo.xml              | 10 ++-
 .../RANGER_KMS/1.0.0.3.0/metainfo.xml              | 10 ++-
 .../common-services/SLIDER/0.60.0.2.2/metainfo.xml | 15 +++-
 .../common-services/SLIDER/0.91.0.3.0/metainfo.xml | 15 +++-
 .../common-services/SPARK/1.2.1/metainfo.xml       | 10 ++-
 .../common-services/SPARK/1.3.1/metainfo.xml       |  5 +-
 .../common-services/SPARK/1.4.1/metainfo.xml       |  5 +-
 .../common-services/SPARK/1.5.2/metainfo.xml       |  5 +-
 .../common-services/SPARK/1.6.0/metainfo.xml       | 15 +++-
 .../common-services/SPARK/2.2.0/metainfo.xml       | 15 +++-
 .../common-services/SPARK2/2.0.0/metainfo.xml      | 15 +++-
 .../common-services/SQOOP/1.4.4.2.0/metainfo.xml   |  5 +-
 .../common-services/SQOOP/1.4.4.3.0/metainfo.xml   |  5 +-
 .../common-services/STORM/0.9.1/metainfo.xml       |  5 +-
 .../common-services/STORM/1.0.1.3.0/metainfo.xml   |  5 +-
 .../common-services/TEZ/0.4.0.2.1/metainfo.xml     |  5 +-
 .../common-services/TEZ/0.9.0.3.0/metainfo.xml     |  5 +-
 .../common-services/YARN/2.1.0.2.0/metainfo.xml    | 20 ++++--
 .../common-services/YARN/3.0.0.3.0/metainfo.xml    | 20 ++++--
 .../common-services/ZEPPELIN/0.6.0/metainfo.xml    |  5 +-
 .../common-services/ZEPPELIN/0.7.0/metainfo.xml    |  5 +-
 .../stacks/BIGTOP/0.8/services/FLUME/metainfo.xml  |  5 +-
 .../stacks/BIGTOP/0.8/services/HBASE/metainfo.xml  | 10 ++-
 .../stacks/BIGTOP/0.8/services/HDFS/metainfo.xml   |  5 +-
 .../stacks/BIGTOP/0.8/services/HIVE/metainfo.xml   |  5 +-
 .../stacks/BIGTOP/0.8/services/OOZIE/metainfo.xml  |  5 +-
 .../stacks/BIGTOP/0.8/services/PIG/metainfo.xml    |  5 +-
 .../stacks/BIGTOP/0.8/services/YARN/metainfo.xml   | 10 ++-
 .../2.0.6.GlusterFS/services/HBASE/metainfo.xml    | 12 +++-
 .../2.0.6.GlusterFS/services/SQOOP/metainfo.xml    |  7 +-
 .../HDP/2.0.6.GlusterFS/services/YARN/metainfo.xml | 10 ++-
 .../HDP/2.1.GlusterFS/services/FALCON/metainfo.xml |  5 +-
 .../HDP/2.1.GlusterFS/services/FLUME/metainfo.xml  |  7 +-
 .../HDP/2.1.GlusterFS/services/HBASE/metainfo.xml  | 12 +++-
 .../HDP/2.1.GlusterFS/services/SQOOP/metainfo.xml  |  5 +-
 .../HDP/2.1.GlusterFS/services/TEZ/metainfo.xml    |  5 +-
 .../HDP/2.1.GlusterFS/services/YARN/metainfo.xml   | 10 ++-
 .../stacks/HDP/2.2/services/HIVE/metainfo.xml      |  5 +-
 .../stacks/HDP/2.2/services/PIG/metainfo.xml       |  5 +-
 .../stacks/HDP/2.3.ECS/services/HBASE/metainfo.xml | 10 ++-
 .../stacks/HDP/2.3.ECS/services/HIVE/metainfo.xml  | 15 +++-
 .../stacks/HDP/2.3.ECS/services/YARN/metainfo.xml  | 20 ++++--
 .../2.3.GlusterFS/services/ACCUMULO/metainfo.xml   |  5 +-
 .../HDP/2.3.GlusterFS/services/FLUME/metainfo.xml  |  5 +-
 .../HDP/2.3.GlusterFS/services/HBASE/metainfo.xml  |  5 +-
 .../HDP/2.3.GlusterFS/services/SLIDER/metainfo.xml | 10 ++-
 .../HDP/2.3.GlusterFS/services/SQOOP/metainfo.xml  |  5 +-
 .../HDP/2.3.GlusterFS/services/YARN/metainfo.xml   | 10 ++-
 .../stacks/HDP/2.5/services/HIVE/metainfo.xml      | 30 ++++++--
 .../PERF/1.0/services/FAKEHBASE/metainfo.xml       | 10 ++-
 .../stacks/PERF/1.0/services/FAKEHDFS/metainfo.xml |  5 +-
 .../stacks/PERF/1.0/services/FAKEYARN/metainfo.xml | 15 +++-
 .../ambari/server/stack/ServiceModuleTest.java     | 15 ++--
 .../stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml |  5 +-
 .../stacks/HDP/2.0.6/services/FLUME/metainfo.xml   |  5 +-
 .../stacks/HDP/2.0.7/services/HBASE/metainfo.xml   | 10 ++-
 .../stacks/HDP/2.0.7/services/OOZIE/metainfo.xml   |  5 +-
 .../HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml |  5 +-
 .../common-services/NIFI/1.0.0/metainfo.xml        |  5 +-
 .../MICROSOFT_R_SERVER/8.0.5/metainfo.xml          |  5 +-
 .../stacks/ODPi/2.0/services/HIVE/metainfo.xml     | 15 +++-
 .../stacks/ODPi/2.0/services/YARN/metainfo.xml     | 15 +++-
 90 files changed, 674 insertions(+), 157 deletions(-)

diff --git 
a/ambari-funtest/src/test/resources/stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml
 
b/ambari-funtest/src/test/resources/stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml
index 4f6bbd9..15a764d 100644
--- 
a/ambari-funtest/src/test/resources/stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml
+++ 
b/ambari-funtest/src/test/resources/stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml
@@ -55,7 +55,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-funtest/src/test/resources/stacks/HDP/2.0.6/services/FLUME/metainfo.xml
 
b/ambari-funtest/src/test/resources/stacks/HDP/2.0.6/services/FLUME/metainfo.xml
index 4f6bbd9..15a764d 100644
--- 
a/ambari-funtest/src/test/resources/stacks/HDP/2.0.6/services/FLUME/metainfo.xml
+++ 
b/ambari-funtest/src/test/resources/stacks/HDP/2.0.6/services/FLUME/metainfo.xml
@@ -55,7 +55,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-funtest/src/test/resources/stacks/HDP/2.0.7/services/HBASE/metainfo.xml
 
b/ambari-funtest/src/test/resources/stacks/HDP/2.0.7/services/HBASE/metainfo.xml
index acd3556..e63ac7f 100644
--- 
a/ambari-funtest/src/test/resources/stacks/HDP/2.0.7/services/HBASE/metainfo.xml
+++ 
b/ambari-funtest/src/test/resources/stacks/HDP/2.0.7/services/HBASE/metainfo.xml
@@ -118,8 +118,14 @@
         <timeout>50</timeout>
       </commandScript>
       <requiredServices>
-        <service>HDFS</service>
-        <service>TEZ</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       <configuration-dependencies>
         <config-type>global</config-type>
diff --git 
a/ambari-funtest/src/test/resources/stacks/HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml
 
b/ambari-funtest/src/test/resources/stacks/HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml
index fe3b860..5aff41c 100644
--- 
a/ambari-funtest/src/test/resources/stacks/HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml
+++ 
b/ambari-funtest/src/test/resources/stacks/HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml
@@ -116,7 +116,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
+          <service>
+              <name>ZOOKEEPER</name>
+              <scope>INSTALL</scope>
+          </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java
index fd67fec..6c3af87 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java
@@ -26,6 +26,7 @@ import java.util.Map;
 import java.util.Set;
 
 import org.apache.ambari.server.state.CustomCommandDefinition;
+import org.apache.ambari.server.state.RequiredService;
 import org.apache.ambari.server.state.ServiceInfo;
 
 import io.swagger.annotations.ApiModelProperty;
@@ -48,7 +49,7 @@ public class StackServiceResponse {
 
   private Set<String> excludedConfigTypes;
 
-  private List<String> requiredServices;
+  private List<RequiredService> requiredServices;
 
   private Map<String, String> serviceProperties;
 
@@ -208,11 +209,11 @@ public class StackServiceResponse {
   }
 
   @ApiModelProperty(name = "required_services")
-  public List<String> getRequiredServices() {
+  public List<RequiredService> getRequiredServices() {
     return requiredServices;
   }
 
-  public void setRequiredServices(List<String> requiredServices) {
+  public void setRequiredServices(List<RequiredService> requiredServices) {
     this.requiredServices = requiredServices;
   }
 
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/state/RequiredService.java
 
b/ambari-server/src/main/java/org/apache/ambari/server/state/RequiredService.java
new file mode 100644
index 0000000..f456c6c
--- /dev/null
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/state/RequiredService.java
@@ -0,0 +1,80 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ambari.server.state;
+
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+
+/**
+ * Required service
+ * Is defined for some services in the service level metainfo.xml
+ * Specifies required service name and scope
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+public class RequiredService {
+
+  public RequiredService() {
+  }
+
+  public RequiredService(String name) {
+    this.name = name;
+  }
+
+  public RequiredService(String name, Scope scope) {
+    this.name = name;
+    this.scope = scope;
+  }
+
+  /**
+   * Required service name
+   */
+  private String name;
+  /**
+   * Required service scope
+   * By default is set to INSTALL
+   */
+  private Scope scope = Scope.INSTALL;
+
+  public String getName() {
+    return name;
+  }
+
+  public Scope getScope() {
+    return scope;
+  }
+
+  /**
+   * Scope of the required service
+   * We could have an INSTALL time dependency (i.e. we should also install the 
dependent service)
+   * or a RUNTIME dependency (i.e. there should be a running instance of the 
service in the cluster)
+   */
+  public enum Scope {
+    /**
+     * We should also install the dependent service. Is used as a default scope
+     */
+    INSTALL,
+
+    /**
+     * There should be a running instance of the service in the cluster
+     */
+    RUNTIME
+  }
+}
+
diff --git 
a/ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java 
b/ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java
index 618a9a5..943b826 100644
--- 
a/ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java
+++ 
b/ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java
@@ -284,7 +284,7 @@ public class ServiceInfo implements Validable, Cloneable {
 
   @XmlElementWrapper(name="requiredServices")
   @XmlElement(name="service")
-  private List<String> requiredServices = new ArrayList<>();
+  private List<RequiredService> requiredServices = new ArrayList<>();
 
   /**
    * Meaning: stores subpath from stack root to exact directory, that contains
@@ -417,7 +417,7 @@ public class ServiceInfo implements Validable, Cloneable {
   public void setComment(String comment) {
     this.comment = comment;
   }
-  public List<String> getRequiredServices() {
+  public List<RequiredService> getRequiredServices() {
     return requiredServices;
   }
 
@@ -437,7 +437,7 @@ public class ServiceInfo implements Validable, Cloneable {
     this.metricsFileName = metricsFileName;
   }
 
-  public void setRequiredServices(List<String> requiredServices) {
+  public void setRequiredServices(List<RequiredService> requiredServices) {
     this.requiredServices = requiredServices;
   }
   public List<PropertyInfo> getProperties() {
diff --git 
a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/metainfo.xml
index e7c9b52..b2eb74e 100644
--- 
a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/metainfo.xml
@@ -195,8 +195,14 @@
       </commandScript>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>HDFS</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/AMBARI_INFRA/0.1.0/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/AMBARI_INFRA/0.1.0/metainfo.xml
index 1c5bf6e..5459548 100644
--- 
a/ambari-server/src/main/resources/common-services/AMBARI_INFRA/0.1.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/AMBARI_INFRA/0.1.0/metainfo.xml
@@ -130,7 +130,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <themes>
diff --git 
a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/metainfo.xml
index d563bec..7802cd7 100644
--- 
a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/metainfo.xml
@@ -221,7 +221,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/ATLAS/0.7.0.2.5/metainfo.xml 
b/ambari-server/src/main/resources/common-services/ATLAS/0.7.0.2.5/metainfo.xml
index f12ccde..09fedc6 100644
--- 
a/ambari-server/src/main/resources/common-services/ATLAS/0.7.0.2.5/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/ATLAS/0.7.0.2.5/metainfo.xml
@@ -61,7 +61,10 @@
       </quickLinksConfigurations>
 
       <requiredServices>
-        <service>KAFKA</service>
+        <service>
+          <name>KAFKA</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <themes>
diff --git 
a/ambari-server/src/main/resources/common-services/ATLAS/0.7.0.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/ATLAS/0.7.0.3.0/metainfo.xml
index 11ebf45..5c9a1d9 100644
--- 
a/ambari-server/src/main/resources/common-services/ATLAS/0.7.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/ATLAS/0.7.0.3.0/metainfo.xml
@@ -119,7 +119,10 @@
       </quickLinksConfigurations>
 
       <requiredServices>
-        <service>KAFKA</service>
+        <service>
+          <name>KAFKA</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <themes>
diff --git 
a/ambari-server/src/main/resources/common-services/DRUID/0.10.1/metainfo.xml 
b/ambari-server/src/main/resources/common-services/DRUID/0.10.1/metainfo.xml
index 53dee2b..9517e65 100644
--- a/ambari-server/src/main/resources/common-services/DRUID/0.10.1/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/DRUID/0.10.1/metainfo.xml
@@ -201,7 +201,10 @@
         <timeout>300</timeout>
       </commandScript>
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       <configuration-dependencies>
         <config-type>druid-common</config-type>
diff --git 
a/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/metainfo.xml
index 2cda70a..bbf4a01 100644
--- 
a/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/metainfo.xml
@@ -114,7 +114,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>OOZIE</service>
+        <service>
+          <name>OOZIE</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/HAWQ/2.0.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/HAWQ/2.0.0/metainfo.xml
index 86c9c8a..d0f2da1 100644
--- a/ambari-server/src/main/resources/common-services/HAWQ/2.0.0/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/HAWQ/2.0.0/metainfo.xml
@@ -158,7 +158,10 @@
       </components>
 
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <osSpecifics>
diff --git 
a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/metainfo.xml
index dcbf79a..0b1c36d 100644
--- 
a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/metainfo.xml
@@ -151,8 +151,14 @@
       </commandScript>
       
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>HDFS</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/HBASE/2.0.0.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/HBASE/2.0.0.3.0/metainfo.xml
index ac57693..36492dd 100644
--- 
a/ambari-server/src/main/resources/common-services/HBASE/2.0.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/HBASE/2.0.0.3.0/metainfo.xml
@@ -170,8 +170,14 @@
       </commandScript>
       
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>HDFS</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
index c2c8189..49a2ce8 100644
--- 
a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/metainfo.xml
@@ -330,9 +330,18 @@
       </commandScript>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>YARN</service>
-        <service>TEZ</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml
index 48dda31..fcdd7c1 100644
--- 
a/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/HIVE/2.1.0.3.0/metainfo.xml
@@ -487,15 +487,30 @@
       </quickLinksConfigurations>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>HDFS</service>
-        <service>YARN</service>
-        <service>TEZ</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>SLIDER</name>
+          <scope>INSTALL</scope>
+        </service>
         <!-- TODO AMBARI-20753
         Re-add after Pig service is being packaged.
         <service>PIG</service>
         -->
-        <service>SLIDER</service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/KAFKA/0.10.0.3.0/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/KAFKA/0.10.0.3.0/metainfo.xml
index 164e15f..f471565 100644
--- 
a/ambari-server/src/main/resources/common-services/KAFKA/0.10.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/KAFKA/0.10.0.3.0/metainfo.xml
@@ -71,7 +71,10 @@
                 <timeout>300</timeout>
             </commandScript>
             <requiredServices>
-                <service>ZOOKEEPER</service>
+                <service>
+                    <name>ZOOKEEPER</name>
+                    <scope>INSTALL</scope>
+                </service>
             </requiredServices>
             <configuration-dependencies>
                 <config-type>kafka-broker</config-type>
diff --git 
a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1/metainfo.xml 
b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1/metainfo.xml
index 6d44d4a..d7fb1ed 100644
--- a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1/metainfo.xml
@@ -71,7 +71,10 @@
         <timeout>300</timeout>
       </commandScript>
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       <configuration-dependencies>
         <config-type>kafka-broker</config-type>
diff --git 
a/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/metainfo.xml
index f363e55..6ca7a85 100644
--- 
a/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/metainfo.xml
@@ -66,7 +66,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/metainfo.xml
index eff162e..a6420d9 100644
--- 
a/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/metainfo.xml
@@ -154,7 +154,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/metainfo.xml 
b/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/metainfo.xml
index fca2bba..29bf52c 100644
--- 
a/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/metainfo.xml
@@ -161,7 +161,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.3.0/metainfo.xml
index 11ef853..600ca2a 100644
--- 
a/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.3.0/metainfo.xml
@@ -167,7 +167,10 @@
       </quickLinksConfigurations>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
        <themes>
diff --git 
a/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/metainfo.xml
index d445e58..d51c738 100644
--- 
a/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/metainfo.xml
@@ -72,7 +72,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/PIG/0.16.1.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/PIG/0.16.1.3.0/metainfo.xml
index 041255a..beb1028 100644
--- 
a/ambari-server/src/main/resources/common-services/PIG/0.16.1.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/PIG/0.16.1.3.0/metainfo.xml
@@ -86,8 +86,14 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
-        <service>TEZ</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/PXF/3.0.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/PXF/3.0.0/metainfo.xml
index d41c030..28966bf 100644
--- a/ambari-server/src/main/resources/common-services/PXF/3.0.0/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/PXF/3.0.0/metainfo.xml
@@ -43,7 +43,10 @@
       </components>
 
       <requiredServices>
-         <service>HAWQ</service>
+        <service>
+          <name>HAWQ</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <osSpecifics>
diff --git 
a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/metainfo.xml
index bc0aa74..2317852 100644
--- 
a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/metainfo.xml
@@ -76,8 +76,14 @@
       </commandScript>
 
       <requiredServices>
-        <service>RANGER</service>
-        <service>HDFS</service>
+        <service>
+          <name>RANGER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       
     </service>
diff --git 
a/ambari-server/src/main/resources/common-services/RANGER_KMS/1.0.0.3.0/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/RANGER_KMS/1.0.0.3.0/metainfo.xml
index d328d89..bf27ded 100644
--- 
a/ambari-server/src/main/resources/common-services/RANGER_KMS/1.0.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/RANGER_KMS/1.0.0.3.0/metainfo.xml
@@ -95,8 +95,14 @@
       </commandScript>
 
       <requiredServices>
-        <service>RANGER</service>
-        <service>HDFS</service>
+        <service>
+          <name>RANGER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <themes>
diff --git 
a/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/metainfo.xml
index f1552e0..9668f79 100644
--- 
a/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/metainfo.xml
@@ -93,9 +93,18 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
-        <service>HDFS</service>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/SLIDER/0.91.0.3.0/metainfo.xml
 
b/ambari-server/src/main/resources/common-services/SLIDER/0.91.0.3.0/metainfo.xml
index 168a2df..9521a36 100644
--- 
a/ambari-server/src/main/resources/common-services/SLIDER/0.91.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/SLIDER/0.91.0.3.0/metainfo.xml
@@ -93,9 +93,18 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
-        <service>HDFS</service>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/SPARK/1.2.1/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SPARK/1.2.1/metainfo.xml
index 1a35793..f1f330a 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.2.1/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.2.1/metainfo.xml
@@ -147,8 +147,14 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
-        <service>TEZ</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <osSpecifics>
diff --git 
a/ambari-server/src/main/resources/common-services/SPARK/1.3.1/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SPARK/1.3.1/metainfo.xml
index e56ef14..8a81f6b 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.3.1/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.3.1/metainfo.xml
@@ -135,7 +135,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
     </service>
   </services>
diff --git 
a/ambari-server/src/main/resources/common-services/SPARK/1.4.1/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SPARK/1.4.1/metainfo.xml
index bc9f7a4..7eac20d 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.4.1/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.4.1/metainfo.xml
@@ -93,7 +93,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
     </service>
   </services>
diff --git 
a/ambari-server/src/main/resources/common-services/SPARK/1.5.2/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SPARK/1.5.2/metainfo.xml
index 24a9922..4ec326a 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.5.2/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.5.2/metainfo.xml
@@ -26,7 +26,10 @@
           <version>1.5.2</version>
           <extends>common-services/SPARK/1.4.1</extends>
           <requiredServices>
-            <service>YARN</service>
+              <service>
+                  <name>YARN</name>
+                  <scope>INSTALL</scope>
+              </service>
           </requiredServices>
           <!-- No new components compared to 1.4.1 -->
           <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/SPARK/1.6.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SPARK/1.6.0/metainfo.xml
index 9923424..93eeff5 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.6.0/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.6.0/metainfo.xml
@@ -36,9 +36,18 @@
             <config-type>spark-thrift-fairscheduler</config-type>
           </configuration-dependencies>
           <requiredServices>
-            <service>HDFS</service>
-            <service>YARN</service>
-            <service>HIVE</service>
+              <service>
+                  <name>HDFS</name>
+                  <scope>INSTALL</scope>
+              </service>
+              <service>
+                  <name>YARN</name>
+                  <scope>INSTALL</scope>
+              </service>
+              <service>
+                  <name>HIVE</name>
+                  <scope>INSTALL</scope>
+              </service>
           </requiredServices>
         </service>
     </services>
diff --git 
a/ambari-server/src/main/resources/common-services/SPARK/2.2.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SPARK/2.2.0/metainfo.xml
index d2e2d8b..cb74062 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/2.2.0/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/2.2.0/metainfo.xml
@@ -235,9 +235,18 @@
       </commandScript>
 
       <requiredServices>
-        <service>HDFS</service>
-        <service>YARN</service>
-        <service>HIVE</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HIVE</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <!-- TODO, change these to "spark" and "livy" after RPM switches the 
name. -->
diff --git 
a/ambari-server/src/main/resources/common-services/SPARK2/2.0.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SPARK2/2.0.0/metainfo.xml
index 324746a..eb9f371 100755
--- a/ambari-server/src/main/resources/common-services/SPARK2/2.0.0/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK2/2.0.0/metainfo.xml
@@ -191,9 +191,18 @@
       </commandScript>
 
       <requiredServices>
-        <service>HDFS</service>
-        <service>YARN</service>
-        <service>HIVE</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HIVE</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <osSpecifics>
diff --git 
a/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/metainfo.xml
index 56071ec..39a62e3 100644
--- 
a/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/metainfo.xml
@@ -84,7 +84,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.3.0/metainfo.xml
index e02d9f4..9a1e5ee 100644
--- 
a/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.3.0/metainfo.xml
@@ -92,7 +92,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/STORM/0.9.1/metainfo.xml 
b/ambari-server/src/main/resources/common-services/STORM/0.9.1/metainfo.xml
index e97300e..d22fb42 100644
--- a/ambari-server/src/main/resources/common-services/STORM/0.9.1/metainfo.xml
+++ b/ambari-server/src/main/resources/common-services/STORM/0.9.1/metainfo.xml
@@ -153,7 +153,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/STORM/1.0.1.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/STORM/1.0.1.3.0/metainfo.xml
index 36dddd1..1defdc4 100644
--- 
a/ambari-server/src/main/resources/common-services/STORM/1.0.1.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/STORM/1.0.1.3.0/metainfo.xml
@@ -148,7 +148,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/metainfo.xml 
b/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/metainfo.xml
index 8b3a153..938205a 100644
--- 
a/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/metainfo.xml
@@ -90,7 +90,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/TEZ/0.9.0.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/TEZ/0.9.0.3.0/metainfo.xml
index 8ca01f3..cff6571 100644
--- 
a/ambari-server/src/main/resources/common-services/TEZ/0.9.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/TEZ/0.9.0.3.0/metainfo.xml
@@ -98,7 +98,10 @@
             </commandScript>
 
             <requiredServices>
-                <service>YARN</service>
+                <service>
+                    <name>YARN</name>
+                    <scope>INSTALL</scope>
+                </service>
             </requiredServices>
 
             <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/metainfo.xml
index da9a357..27c4893 100644
--- 
a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/metainfo.xml
@@ -163,9 +163,18 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
-        <service>MAPREDUCE2</service>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>MAPREDUCE2</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
@@ -287,7 +296,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dir>configuration-mapred</configuration-dir>
diff --git 
a/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/metainfo.xml
index 061587d..cbf0c60 100644
--- 
a/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/metainfo.xml
@@ -212,9 +212,18 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
-        <service>MAPREDUCE2</service>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>MAPREDUCE2</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <themes>
@@ -355,7 +364,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <themes-dir>themes-mapred</themes-dir>
diff --git 
a/ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0/metainfo.xml
index 597b6db..88f92f5 100644
--- 
a/ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0/metainfo.xml
@@ -81,7 +81,10 @@ limitations under the License.
       </commandScript>
 
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/common-services/ZEPPELIN/0.7.0/metainfo.xml 
b/ambari-server/src/main/resources/common-services/ZEPPELIN/0.7.0/metainfo.xml
index 891d1f5..5d1fb54 100644
--- 
a/ambari-server/src/main/resources/common-services/ZEPPELIN/0.7.0/metainfo.xml
+++ 
b/ambari-server/src/main/resources/common-services/ZEPPELIN/0.7.0/metainfo.xml
@@ -81,7 +81,10 @@ limitations under the License.
       </commandScript>
 
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/metainfo.xml
index f15ad9a..db43ae2 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/metainfo.xml
@@ -55,7 +55,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/metainfo.xml
index 00d7cf9..dfe7b17 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/metainfo.xml
@@ -135,8 +135,14 @@
       </commandScript>
       
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>HDFS</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/metainfo.xml 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/metainfo.xml
index 8500839..3777537 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/metainfo.xml
@@ -244,7 +244,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/metainfo.xml 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/metainfo.xml
index d9ee0a3..2be687f 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/metainfo.xml
@@ -271,7 +271,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
         <service>YARN</service>
       </requiredServices>
 
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/metainfo.xml
index 8382662..afb9bbd 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/metainfo.xml
@@ -142,7 +142,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/metainfo.xml 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/metainfo.xml
index 8bf6f16..e9e0210 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/metainfo.xml
@@ -71,7 +71,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/metainfo.xml 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/metainfo.xml
index 7f76b8b..8e899a4 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/metainfo.xml
@@ -168,7 +168,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
@@ -264,7 +267,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dir>configuration-mapred</configuration-dir>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/HBASE/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/HBASE/metainfo.xml
index 8580abd..084f559 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/HBASE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/HBASE/metainfo.xml
@@ -26,9 +26,15 @@
       <version>0.96.1.2.0.6.1</version>
       
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>GLUSTERFS</service>
-      </requiredServices>      
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
+      </requiredServices>
     </service>
   </services>
 </metainfo>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/SQOOP/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/SQOOP/metainfo.xml
index 4db6892..26814ac 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/SQOOP/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/SQOOP/metainfo.xml
@@ -25,8 +25,11 @@
       </comment>
       <version>1.4.4.2.0.6.0</version>
       <requiredServices>
-        <service>GLUSTERFS</service>
-      </requiredServices>      
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
+      </requiredServices>
     </service>
   </services>
 </metainfo>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/YARN/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/YARN/metainfo.xml
index 695b33f..9fcc8b2 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/YARN/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6.GlusterFS/services/YARN/metainfo.xml
@@ -56,7 +56,10 @@
       </osSpecifics>
 
       <requiredServices>
-        <service>GLUSTERFS</service>
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
@@ -128,7 +131,10 @@
       <configuration-dir>configuration-mapred</configuration-dir>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/metainfo.xml
index d942229..4584a1c 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/metainfo.xml
@@ -89,7 +89,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>OOZIE</service>
+        <service>
+          <name>OOZIE</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FLUME/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FLUME/metainfo.xml
index 98c3b51..64d585b 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FLUME/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FLUME/metainfo.xml
@@ -24,8 +24,11 @@
       <version>1.4.0.2.1</version>
       
       <requiredServices>
-        <service>GLUSTERFS</service>
-      </requiredServices>      
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
+      </requiredServices>
     </service>
   </services>
 </metainfo>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/metainfo.xml
index f5660d2..3655541 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/metainfo.xml
@@ -26,9 +26,15 @@
       <version>0.98.0.2.1</version>
       
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>GLUSTERFS</service>
-      </requiredServices>      
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
+      </requiredServices>
     </service>
   </services>
 </metainfo>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/SQOOP/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/SQOOP/metainfo.xml
index f6c7fe5..01bb158 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/SQOOP/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/SQOOP/metainfo.xml
@@ -25,7 +25,10 @@
       </comment>
       <version>1.4.4.2.1</version>
       <requiredServices>
-        <service>GLUSTERFS</service>
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>      
     </service>
   </services>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/metainfo.xml
index c5a9dff..aeedb57 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/metainfo.xml
@@ -60,7 +60,10 @@
       </osSpecifics>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/metainfo.xml
index 50c9818..e568738 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/metainfo.xml
@@ -55,7 +55,10 @@
       </osSpecifics>
 
       <requiredServices>
-        <service>GLUSTERFS</service>
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
@@ -127,7 +130,10 @@
       <configuration-dir>configuration-mapred</configuration-dir>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/metainfo.xml 
b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/metainfo.xml
index 49a4e69..3c83da2 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/metainfo.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/metainfo.xml
@@ -139,7 +139,10 @@
       </themes>
 
       <requiredServices>
-        <service>PIG</service>
+        <service>
+          <name>PIG</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
     </service>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.2/services/PIG/metainfo.xml 
b/ambari-server/src/main/resources/stacks/HDP/2.2/services/PIG/metainfo.xml
index f2cfb30..23c9dfd 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/PIG/metainfo.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/PIG/metainfo.xml
@@ -41,7 +41,10 @@
         </osSpecific>
       </osSpecifics>
       <requiredServices>
-        <service>TEZ</service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
     </service>
   </services>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/HBASE/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/HBASE/metainfo.xml
index 16fb847..6885589 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/HBASE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/HBASE/metainfo.xml
@@ -49,8 +49,14 @@
         </component>
       </components>
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>ECS</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>ECS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
     </service>
   </services>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/HIVE/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/HIVE/metainfo.xml
index ff24b71..40192cf 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/HIVE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/HIVE/metainfo.xml
@@ -80,9 +80,18 @@
          </components>
       
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>YARN</service>
-        <service>TEZ</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
             
     </service>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/YARN/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/YARN/metainfo.xml
index d487a27..0074ad8 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/YARN/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.ECS/services/YARN/metainfo.xml
@@ -23,9 +23,18 @@
       <name>YARN</name>
       <version>2.7.1.2.3</version>
       <requiredServices>
-        <service>ECS</service>
-        <service>MAPREDUCE2</service>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ECS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>MAPREDUCE2</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       <components>
         <component>
@@ -135,7 +144,10 @@
       </components>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dir>configuration-mapred</configuration-dir>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/ACCUMULO/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/ACCUMULO/metainfo.xml
index 1f2c281..41bbd75 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/ACCUMULO/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/ACCUMULO/metainfo.xml
@@ -41,7 +41,10 @@
       </osSpecifics>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
     </service>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/FLUME/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/FLUME/metainfo.xml
index d554ec7..0797153 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/FLUME/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/FLUME/metainfo.xml
@@ -42,7 +42,10 @@
       </osSpecifics>
 
       <requiredServices>
-        <service>GLUSTERFS</service>
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
     </service>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/metainfo.xml
index 0175842..992c35d 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/metainfo.xml
@@ -48,7 +48,10 @@
       </osSpecifics>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
     </service>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/SLIDER/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/SLIDER/metainfo.xml
index 09537e2..a5b74b3 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/SLIDER/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/SLIDER/metainfo.xml
@@ -47,8 +47,14 @@
       </osSpecifics>
 
       <requiredServices>
-        <service>YARN</service>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       
     </service>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/SQOOP/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/SQOOP/metainfo.xml
index 5b02eea..671b482 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/SQOOP/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/SQOOP/metainfo.xml
@@ -41,7 +41,10 @@
       </osSpecifics>
 
       <requiredServices>
-        <service>GLUSTERFS</service>
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>      
       
     </service>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/YARN/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/YARN/metainfo.xml
index d185ee8..25d64a6 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/YARN/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/YARN/metainfo.xml
@@ -52,7 +52,10 @@
       </osSpecifics>
       
       <requiredServices>
-        <service>GLUSTERFS</service>
+        <service>
+          <name>GLUSTERFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
@@ -88,7 +91,10 @@
       <configuration-dir>configuration-mapred</configuration-dir>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.5/services/HIVE/metainfo.xml 
b/ambari-server/src/main/resources/stacks/HDP/2.5/services/HIVE/metainfo.xml
index fb72d98..e3e5aaa 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.5/services/HIVE/metainfo.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.5/services/HIVE/metainfo.xml
@@ -133,12 +133,30 @@
       </quickLinksConfigurations>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>HDFS</service>
-        <service>YARN</service>
-        <service>TEZ</service>
-        <service>PIG</service>
-        <service>SLIDER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>PIG</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>SLIDER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       <osSpecifics>
         <osSpecific>
diff --git 
a/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEHBASE/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEHBASE/metainfo.xml
index 66d5a29..305e670 100644
--- 
a/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEHBASE/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEHBASE/metainfo.xml
@@ -187,8 +187,14 @@
       </commandScript>
 
       <requiredServices>
-        <service>FAKEZOOKEEPER</service>
-        <service>FAKEHDFS</service>
+        <service>
+          <name>FAKEZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>FAKEHDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
     </service>
diff --git 
a/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEHDFS/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEHDFS/metainfo.xml
index 13b10e0..8e469bf 100644
--- 
a/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEHDFS/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEHDFS/metainfo.xml
@@ -223,7 +223,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>FAKEZOOKEEPER</service>
+        <service>
+          <name>FAKEZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEYARN/metainfo.xml
 
b/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEYARN/metainfo.xml
index 240d9bd..7d42b46 100644
--- 
a/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEYARN/metainfo.xml
+++ 
b/ambari-server/src/main/resources/stacks/PERF/1.0/services/FAKEYARN/metainfo.xml
@@ -219,8 +219,14 @@
       </commandScript>
 
       <requiredServices>
-        <service>FAKEHDFS</service>
-        <service>FAKEMAPREDUCE2</service>
+        <service>
+          <name>FAKEHDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>FAKEMAPREDUCE2</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <!-- No packages to install. -->
@@ -323,7 +329,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>FAKEYARN</service>
+        <service>
+          <name>FAKEYARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/test/java/org/apache/ambari/server/stack/ServiceModuleTest.java
 
b/ambari-server/src/test/java/org/apache/ambari/server/stack/ServiceModuleTest.java
index 4ce3742..43846e0 100644
--- 
a/ambari-server/src/test/java/org/apache/ambari/server/stack/ServiceModuleTest.java
+++ 
b/ambari-server/src/test/java/org/apache/ambari/server/stack/ServiceModuleTest.java
@@ -46,6 +46,7 @@ import org.apache.ambari.server.state.CredentialStoreInfo;
 import org.apache.ambari.server.state.CustomCommandDefinition;
 import org.apache.ambari.server.state.OsSpecific;
 import org.apache.ambari.server.state.PropertyInfo;
+import org.apache.ambari.server.state.RequiredService;
 import org.apache.ambari.server.state.ServiceInfo;
 import org.apache.ambari.server.state.ServicePropertyInfo;
 import org.junit.Test;
@@ -141,9 +142,15 @@ public class ServiceModuleTest {
 
   @Test
   public void testResolve_RequiredServices() throws Exception {
-    List<String> requiredServices = new ArrayList<>();
-    requiredServices.add("foo");
-    requiredServices.add("bar");
+    List<RequiredService> requiredServices = new ArrayList<>();
+    //the default scope is INSTALL
+    RequiredService installService = new RequiredService("foo");
+    assertEquals(RequiredService.Scope.INSTALL, installService.getScope());
+
+    RequiredService runtimeService = new RequiredService("bar", 
RequiredService.Scope.RUNTIME);
+
+    requiredServices.add(installService);
+    requiredServices.add(runtimeService);
 
     // specified in child only
     ServiceInfo info = new ServiceInfo();
@@ -162,7 +169,7 @@ public class ServiceModuleTest {
 
     // specified in both
     info.setRequiredServices(requiredServices);
-    parentInfo.setRequiredServices(Collections.singletonList("other"));
+    parentInfo.setRequiredServices(Collections.singletonList(new 
RequiredService("other", RequiredService.Scope.INSTALL)));
 
     service = resolveService(info, parentInfo);
     assertEquals(requiredServices, 
service.getModuleInfo().getRequiredServices());
diff --git 
a/ambari-server/src/test/resources/stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml
 
b/ambari-server/src/test/resources/stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml
index 4f6bbd9..15a764d 100644
--- 
a/ambari-server/src/test/resources/stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml
+++ 
b/ambari-server/src/test/resources/stacks/HDP/2.0.6.1/services/FLUME/metainfo.xml
@@ -55,7 +55,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/FLUME/metainfo.xml 
b/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/FLUME/metainfo.xml
index 4f6bbd9..15a764d 100644
--- 
a/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/FLUME/metainfo.xml
+++ 
b/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/FLUME/metainfo.xml
@@ -55,7 +55,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/test/resources/stacks/HDP/2.0.7/services/HBASE/metainfo.xml 
b/ambari-server/src/test/resources/stacks/HDP/2.0.7/services/HBASE/metainfo.xml
index acd3556..e63ac7f 100644
--- 
a/ambari-server/src/test/resources/stacks/HDP/2.0.7/services/HBASE/metainfo.xml
+++ 
b/ambari-server/src/test/resources/stacks/HDP/2.0.7/services/HBASE/metainfo.xml
@@ -118,8 +118,14 @@
         <timeout>50</timeout>
       </commandScript>
       <requiredServices>
-        <service>HDFS</service>
-        <service>TEZ</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>TEZ</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
       <configuration-dependencies>
         <config-type>global</config-type>
diff --git 
a/ambari-server/src/test/resources/stacks/HDP/2.0.7/services/OOZIE/metainfo.xml 
b/ambari-server/src/test/resources/stacks/HDP/2.0.7/services/OOZIE/metainfo.xml
index 6010659..f6d2759 100644
--- 
a/ambari-server/src/test/resources/stacks/HDP/2.0.7/services/OOZIE/metainfo.xml
+++ 
b/ambari-server/src/test/resources/stacks/HDP/2.0.7/services/OOZIE/metainfo.xml
@@ -114,7 +114,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/ambari-server/src/test/resources/stacks/HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml
 
b/ambari-server/src/test/resources/stacks/HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml
index aea1252..eae3055 100644
--- 
a/ambari-server/src/test/resources/stacks/HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml
+++ 
b/ambari-server/src/test/resources/stacks/HDP/2.1.1/services/AMBARI_METRICS/metainfo.xml
@@ -115,7 +115,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>ZOOKEEPER</service>
+        <service>
+          <name>ZOOKEEPER</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
diff --git 
a/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/metainfo.xml
 
b/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/metainfo.xml
index ac54975..04e3160 100644
--- 
a/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/metainfo.xml
+++ 
b/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/metainfo.xml
@@ -117,7 +117,10 @@
             </commandScript>
 
            <requiredServices>
-              <service>ZOOKEEPER</service>
+                <service>
+                    <name>ZOOKEEPER</name>
+                    <scope>INSTALL</scope>
+                </service>
            </requiredServices>
             
            <configuration-dependencies>
diff --git 
a/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/metainfo.xml
 
b/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/metainfo.xml
index 9f29864..c617b18 100644
--- 
a/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/metainfo.xml
+++ 
b/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/metainfo.xml
@@ -46,7 +46,10 @@
       </commandScript>
 
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
     </service>
   </services>
diff --git 
a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/metainfo.xml
 
b/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/metainfo.xml
index 3fb083b..a272aa9 100755
--- 
a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/metainfo.xml
+++ 
b/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/metainfo.xml
@@ -351,9 +351,18 @@
         <timeout>300</timeout>
     </commandScript>
     <requiredServices>
-        <service>ZOOKEEPER</service>
-        <service>HDFS</service>
-        <service>YARN</service>
+        <service>
+            <name>ZOOKEEPER</name>
+            <scope>INSTALL</scope>
+        </service>
+        <service>
+            <name>HDFS</name>
+            <scope>INSTALL</scope>
+        </service>
+        <service>
+            <name>YARN</name>
+            <scope>INSTALL</scope>
+        </service>
     </requiredServices>
 </service></services>
 </metainfo>
diff --git 
a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/metainfo.xml
 
b/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/metainfo.xml
index b374b80..39fbd2e 100755
--- 
a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/metainfo.xml
+++ 
b/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/metainfo.xml
@@ -177,8 +177,14 @@
       </commandScript>
       
       <requiredServices>
-        <service>HDFS</service>
-        <service>MAPREDUCE2</service>
+        <service>
+          <name>HDFS</name>
+          <scope>INSTALL</scope>
+        </service>
+        <service>
+          <name>MAPREDUCE2</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dependencies>
@@ -287,7 +293,10 @@
       </commandScript>
       
       <requiredServices>
-        <service>YARN</service>
+        <service>
+          <name>YARN</name>
+          <scope>INSTALL</scope>
+        </service>
       </requiredServices>
 
       <configuration-dir>configuration-mapred</configuration-dir>

-- 
To stop receiving notification emails like this one, please contact
"[email protected]" <[email protected]>.

Reply via email to