-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/37715/
-----------------------------------------------------------

(Updated Sept. 17, 2015, 4:15 p.m.)


Review request for Ambari, John Speidel, Robert Levas, and Robert Nettleton.


Changes
-------

Handle the case of duplicate service properties when are being set on the 
service.


Bugs: AMBARI-7469
    https://issues.apache.org/jira/browse/AMBARI-7469


Repository: ambari


Description
-------

Problem
In a stack there may be one or more services that should not be installable, 
configurable, or managed via the Ambari web-based interface. Such a service may 
need to be installed via some Ambari API call or manually. There is no way to 
specify these “visibility” attributes within a service’s definition; thus to 
“hide” a service, one-off code needs to be added to the different Ambari 
facilities.

Solution
Add visibility attributes to service definitions to describe how Ambari should 
expose services via front-end facilities. The following Boolean attributes 
should be settable by services:
- installable: indicates if Ambari can install the service - if not 
installable, the service should be hidden from “add service” features of Ambari
- managed: indicates if Ambari can start and stop the service - if not managed, 
the service should be hidden from all views where management operations can 
occur
- monitored: indicates if Ambari can monitor the service - if not monitored, 
status information should not be displayed


These attributes are assumed to be trueif not specified in the service’s 
metainfo.xml file, else
they are declared the a propertiesblock as follows:
<metainfo>
…
<services>
<service>
…
<properties>
<property>
<name>installable</name>
<value>false</name>
</property>
<property>
<name>managed</name>
<value>true</name>
</property>
</properties>
…
</service>
</services>
</metainfo>


Diffs (updated)
-----

  ambari-server/pom.xml 3377961 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/StackServiceResponse.java
 d16f4d6 
  
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackServiceResourceProvider.java
 dffc74c 
  ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java 
e51eb21 
  ambari-server/src/main/java/org/apache/ambari/server/state/ServiceInfo.java 
d9a8a51 
  
ambari-server/src/main/java/org/apache/ambari/server/state/ServicePropertyInfo.java
 PRE-CREATION 
  ambari-server/src/main/resources/properties.json 0837af2 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/StackServiceResponseTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/controller/internal/StackServiceResourceProviderTest.java
 PRE-CREATION 
  
ambari-server/src/test/java/org/apache/ambari/server/stack/ServiceModuleTest.java
 2737695 
  
ambari-server/src/test/java/org/apache/ambari/server/state/ServiceInfoTest.java 
75e0991 
  
ambari-server/src/test/java/org/apache/ambari/server/state/ServicePropertyInfoTest.java
 PRE-CREATION 

Diff: https://reviews.apache.org/r/37715/diff/


Testing
-------

Manual tested on trunk:
- all three attributes with default value "true" are returned in case these are 
not dedined in metainfo.xml
- merging between stack service and common services for these new attributes

Local test results:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:11.974s
[INFO] Finished at: Mon Aug 24 15:18:11 CEST 2015
[INFO] Final Memory: 59M/994M
[INFO] ------------------------------------------------------------------------


Thanks,

Sebastian Toader

Reply via email to