You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ja...@apache.org on 2015/09/12 03:04:45 UTC

[1/6] ambari git commit: AMBARI-13069. Attributes of configuration property should be stack API driven. (jaimin)

Repository: ambari
Updated Branches:
  refs/heads/trunk 93a2106a6 -> 70ca85005


http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/app/models/configs/objects/service_config_property.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/configs/objects/service_config_property.js b/ambari-web/app/models/configs/objects/service_config_property.js
index 15c5451..991a397 100644
--- a/ambari-web/app/models/configs/objects/service_config_property.js
+++ b/ambari-web/app/models/configs/objects/service_config_property.js
@@ -21,7 +21,6 @@ var validator = require('utils/validator');
 
 App.ServiceConfigProperty = Em.Object.extend({
 
-  id: '', //either 'puppet var' or 'site property'
   name: '',
   displayName: '',
 
@@ -205,7 +204,7 @@ App.ServiceConfigProperty = Em.Object.extend({
   }.property('isUserProperty', 'isOriginalSCP', 'overrides.length'),
 
   init: function () {
-    if ((this.get('id') === 'puppet var') && this.get('value') == '') {
+    if (this.get('value') == '') {
       if (this.get('savedValue')) {
         this.set('value', this.get('savedValue'));
       } else if (this.get('recommendedValue')) {

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/app/models/configs/stack_config_property.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/configs/stack_config_property.js b/ambari-web/app/models/configs/stack_config_property.js
index a1925a4..c9e2a3f 100644
--- a/ambari-web/app/models/configs/stack_config_property.js
+++ b/ambari-web/app/models/configs/stack_config_property.js
@@ -187,7 +187,91 @@ App.StackConfigProperty = DS.Model.extend({
   /**
    * @type {boolean}
    */
-  index: DS.attr('number', {defaultValue: null})
+  index: DS.attr('number', {defaultValue: null}),
+
+  /**
+   * defines if the property can be overriden in the host config group
+   * @type {boolean}
+   */
+  isOverridable: function() {
+    var result = true;
+    if (this.get('valueAttributes') && !Em.none(this.get('valueAttributes.overridable'))) {
+      result =  !!this.get('valueAttributes.overridable');
+    }
+    return result;
+  }.property('valueAttributes.overridable'),
+
+  /**
+   * defines if the property is visible or hidden
+   * @type {boolean}
+   */
+  isVisible: function() {
+    var result = true;
+    if (this.get('valueAttributes') && !Em.none(this.get('valueAttributes.visible'))) {
+      result =  !!this.get('valueAttributes.visible');
+    }
+    return result;
+  }.property('valueAttributes.visible'),
+
+  /**
+   * defines if the value of property can be left empty or not
+   * @type {boolean}
+   */
+  isRequired: function() {
+    var result = true;
+    if (this.get('valueAttributes') && !Em.none(this.get('valueAttributes.empty_value_valid'))) {
+      result =  !this.get('valueAttributes.empty_value_valid');
+    }
+    return result;
+  }.property('valueAttributes.empty_value_valid'),
+
+  /**
+   * defines if the value of property can be reconfigured post-install
+   * @type {boolean}
+   */
+  isReconfigurable: function() {
+    var result = true;
+    if (this.get('valueAttributes') && !Em.none(this.get('valueAttributes.editable_only_at_install'))) {
+      result =  !this.get('valueAttributes.editable_only_at_install');
+    }
+    return result;
+  }.property('valueAttributes.editable_only_at_install'),
+
+  /**
+   * defines if the name of the property is visible or hidden
+   * @type {boolean}
+   */
+  showLabel: function() {
+    var result = true;
+    if (this.get('valueAttributes') && !Em.none(this.get('valueAttributes.show_property_name'))) {
+      result =  !!this.get('valueAttributes.show_property_name');
+    }
+    return result;
+  }.property('valueAttributes.show_property_name'),
+
+  /**
+   * defines if the property is editable or not
+   * @type {boolean}
+   */
+  isEditable: function() {
+    var result = true;
+    if (this.get('valueAttributes') && !Em.none(this.get('valueAttributes.read_only'))) {
+      result =  !!this.get('valueAttributes.read_only');
+    }
+    return result;
+  }.property('valueAttributes.read_only'),
+
+  /**
+   * defines if the property is editable or not
+   * @type {boolean}
+   */
+  unit: function() {
+    var result = '';
+    if (this.get('valueAttributes') && !Em.empty(this.get('valueAttributes.unit'))) {
+      result =  this.get('valueAttributes.unit');
+    }
+    return result;
+  }.property('valueAttributes.unit')
 });
 
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/app/utils/config.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/utils/config.js b/ambari-web/app/utils/config.js
index a578f34..a09b83b 100644
--- a/ambari-web/app/utils/config.js
+++ b/ambari-web/app/utils/config.js
@@ -813,7 +813,6 @@ App.config = Em.Object.create({
     var checkboxProperties = ['ignore_groupsusers_create', 'override_uid'];
     if (Em.isArray(config.property_type)) {
       if (config.property_type.contains('USER') || config.property_type.contains('ADDITIONAL_USER_PROPERTY') || config.property_type.contains('GROUP')) {
-        propertyData.id = "puppet var";
         propertyData.category = 'Users and Groups';
         propertyData.isVisible = !App.get('isHadoopWindowsStack');
         propertyData.serviceName = 'MISC';
@@ -1325,10 +1324,7 @@ App.config = Em.Object.create({
   generateConfigPropertiesByName: function (names, properties) {
     return names.map(function (item) {
       var baseObj = {
-        name: item,
-        displayName: item,
-        isVisible: true,
-        isReconfigurable: true
+        name: item
       };
       if (properties) return $.extend(baseObj, properties);
       else return baseObj;

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/test/data/HDP2.2/site_properties_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/data/HDP2.2/site_properties_test.js b/ambari-web/test/data/HDP2.2/site_properties_test.js
new file mode 100644
index 0000000..82d0ab1
--- /dev/null
+++ b/ambari-web/test/data/HDP2.2/site_properties_test.js
@@ -0,0 +1,68 @@
+/**
+ * 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.
+ */
+
+var App = require('app');
+require('utils/helper');
+var siteProperties = require('data/HDP2.2/site_properties').configProperties;
+
+describe('hdp2SiteProperties', function () {
+  /**
+   * @stackProperties: All the properties that are derived from stack definition
+   */
+  var stackProperties = siteProperties.filter(function(item){
+    return  (!(item.isRequiredByAgent === false || item.filename === 'alert_notification' || item.category === 'Ambari Principals'))
+  });
+
+  stackProperties.forEach(function(siteProperty){
+    /**
+     * Following config attributes are stack driven and should be defined in the stack metainfo instead of ambari-web site-properties file
+     * isVisible
+     * isOverridable
+     * value
+     * recommendedValue
+     * isReconfigurable
+     * isRequired
+     * displayName
+     * description
+     * showLabel
+     * unit
+     */
+    it('Check attributes of "' + siteProperty.filename + '/' + siteProperty.name  + '"' + '. Stack driven attributes should be undefined ', function () {
+      expect(siteProperty.isVisible).to.equal(undefined);
+      expect(siteProperty.value).to.equal(undefined);
+      expect(siteProperty.recommendedValue).to.equal(undefined);
+      expect(siteProperty.description).to.equal(undefined);
+      expect(siteProperty.isReconfigurable).to.equal(undefined);
+      expect(siteProperty.isRequired).to.equal(undefined);
+      expect(siteProperty.displayName).to.equal(undefined);
+      expect(siteProperty.showLabel).to.equal(undefined);
+      expect(siteProperty.unit).to.equal(undefined);
+    });
+
+    /**
+     * Following config attributes uniquely represent a config property
+     * name
+     * filename
+     */
+    it('Check primary attributes of "' + siteProperty.filename + '/' + siteProperty.name  + '"' + '. Attributes that uniquely represent a property should be defined ', function () {
+      expect(siteProperty.name).to.not.equal(undefined);
+      expect(siteProperty.filename).to.not.equal(undefined);
+    });
+  });
+
+});
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/test/data/HDP2.3/site_properties_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/data/HDP2.3/site_properties_test.js b/ambari-web/test/data/HDP2.3/site_properties_test.js
new file mode 100644
index 0000000..45c841f
--- /dev/null
+++ b/ambari-web/test/data/HDP2.3/site_properties_test.js
@@ -0,0 +1,68 @@
+/**
+ * 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.
+ */
+
+var App = require('app');
+require('utils/helper');
+var siteProperties = require('data/HDP2.3/site_properties').configProperties;
+
+describe('hdp2SiteProperties', function () {
+  /**
+   * @stackProperties: All the properties that are derived from stack definition
+   */
+  var stackProperties = siteProperties.filter(function(item){
+    return  (!(item.isRequiredByAgent === false || item.filename === 'alert_notification' || item.category === 'Ambari Principals'))
+  });
+
+  stackProperties.forEach(function(siteProperty){
+    /**
+     * Following config attributes are stack driven and should be defined in the stack metainfo instead of ambari-web site-properties file
+     * isVisible
+     * isOverridable
+     * value
+     * recommendedValue
+     * isReconfigurable
+     * isRequired
+     * displayName
+     * description
+     * showLabel
+     * unit
+     */
+    it('Check attributes of "' + siteProperty.filename + '/' + siteProperty.name  + '"' + '. Stack driven attributes should be undefined ', function () {
+      expect(siteProperty.isVisible).to.equal(undefined);
+      expect(siteProperty.value).to.equal(undefined);
+      expect(siteProperty.recommendedValue).to.equal(undefined);
+      expect(siteProperty.description).to.equal(undefined);
+      expect(siteProperty.isReconfigurable).to.equal(undefined);
+      expect(siteProperty.isRequired).to.equal(undefined);
+      expect(siteProperty.displayName).to.equal(undefined);
+      expect(siteProperty.showLabel).to.equal(undefined);
+      expect(siteProperty.unit).to.equal(undefined);
+    });
+
+    /**
+     * Following config attributes uniquely represent a config property
+     * name
+     * filename
+     */
+    it('Check primary attributes of "' + siteProperty.filename + '/' + siteProperty.name  + '"' + '. Attributes that uniquely represent a property should be defined ', function () {
+      expect(siteProperty.name).to.not.equal(undefined);
+      expect(siteProperty.filename).to.not.equal(undefined);
+    });
+  });
+
+});
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/test/data/HDP2/site_properties_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/data/HDP2/site_properties_test.js b/ambari-web/test/data/HDP2/site_properties_test.js
index ced9376..4fcce33 100644
--- a/ambari-web/test/data/HDP2/site_properties_test.js
+++ b/ambari-web/test/data/HDP2/site_properties_test.js
@@ -21,48 +21,47 @@ require('utils/helper');
 var siteProperties = require('data/HDP2/site_properties').configProperties;
 
 describe('hdp2SiteProperties', function () {
-
-  // No site properties should be made invisible
-  siteProperties.forEach(function(siteProperty){
-    it('Check invisible attribute of "' + siteProperty.name  + '"' + '. It should not be defined ', function () {
-      expect(siteProperty.isVisible).to.equal(undefined);
-    });
-  });
-
-  // No site properties should have value and recommendedValue defined on client side.
-  // These should be always retrieved from server.
-
-    siteProperties.forEach(function(siteProperty){
-      it('Check value and recommendedValue attribute of "' + siteProperty.name + '"' + '. It should not be defined ', function () {
-        expect(siteProperty.value).to.equal(undefined);
-        expect(siteProperty.recommendedValue).to.equal(undefined);
-    });
+  /**
+   * @stackProperties: All the properties that are derived from stack definition
+   */
+  var stackProperties = siteProperties.filter(function(item){
+    return  (!(item.isRequiredByAgent === false || item.filename === 'alert_notification' || item.category === 'Ambari Principals'))
   });
 
-  // No site properties should have description field duplicated on client side.
-  // These should be always retrieved from server.
-  siteProperties.forEach(function(siteProperty){
-    it('Check description attribute of "' + siteProperty.name + '"' + '. It should not be defined ', function () {
+  stackProperties.forEach(function(siteProperty){
+    /**
+     * Following config attributes are stack driven and should be defined in the stack metainfo instead of ambari-web site-properties file
+     * isVisible
+     * isOverridable
+     * value
+     * recommendedValue
+     * isReconfigurable
+     * isRequired
+     * displayName
+     * description
+     * showLabel
+     * unit
+     */
+    it('Check attributes of "' + siteProperty.filename + '/' + siteProperty.name  + '"' + '. Stack driven attributes should be undefined ', function () {
+      expect(siteProperty.isVisible).to.equal(undefined);
+      expect(siteProperty.value).to.equal(undefined);
+      expect(siteProperty.recommendedValue).to.equal(undefined);
       expect(siteProperty.description).to.equal(undefined);
+      expect(siteProperty.isReconfigurable).to.equal(undefined);
+      expect(siteProperty.isRequired).to.equal(undefined);
+      expect(siteProperty.displayName).to.equal(undefined);
+      expect(siteProperty.showLabel).to.equal(undefined);
+      expect(siteProperty.unit).to.equal(undefined);
     });
-  });
-
-  // All the site properties should be persisted in the configuration tag
-  // So isRequiredByAgent should be never defined over here
-  // These should be always retrieved from server and saved in the correct configuration resource via API.
-  siteProperties.forEach(function(siteProperty){
-    it('Check isRequiredByAgent attribute of "' + siteProperty.name + '"' + '. It should not be defined ', function () {
-      expect(siteProperty.isRequiredByAgent).to.equal(undefined);
-    });
-  });
-
-  // All Falcon site properties should be mapped to site file. There is a property with same name (*.domain)
-  // in different site files of Falcon service
 
-    var falconSiteProperties = siteProperties.filterProperty('serviceName','FALCON');
-    falconSiteProperties.forEach(function(siteProperty){
-      it('Check filename attribute for "' + siteProperty.name + '"' + ' property of Falcon service. It should be defined ', function () {
-        expect(siteProperty).to.have.property('filename');
+    /**
+     * Following config attributes uniquely represent a config property
+     * name
+     * filename
+     */
+    it('Check primary attributes of "' + siteProperty.filename + '/' + siteProperty.name  + '"' + '. Attributes that uniquely represent a property should be defined ', function () {
+      expect(siteProperty.name).to.not.equal(undefined);
+      expect(siteProperty.filename).to.not.equal(undefined);
     });
   });
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/test/utils/config_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/utils/config_test.js b/ambari-web/test/utils/config_test.js
index 6aabc2d..2a6f50e 100644
--- a/ambari-web/test/utils/config_test.js
+++ b/ambari-web/test/utils/config_test.js
@@ -344,28 +344,13 @@ describe('App.config', function () {
     });
   });
 
-  describe('#preDefinedSiteProperties-hdp2', function () {
-    before(function() {
-      setups.setupStackVersion(this, 'HDP-2.0');
-    });
-
-    it('HDP2 should use New MySQL Database as its default hive metastore database', function () {
-      App.StackService.createRecord({serviceName: 'HIVE'});
-      expect(App.config.get('preDefinedSiteProperties').findProperty('recommendedValue', 'New MySQL Database')).to.be.ok;
-    });
-
-    after(function() {
-      setups.restoreStackVersion(this);
-    });
-  });
-
   describe('#generateConfigPropertiesByName', function() {
     var tests = [
       {
         names: ['property_1', 'property_2'],
         properties: undefined,
         e: {
-          keys: ['name', 'displayName', 'isVisible', 'isReconfigurable']
+          keys: ['name']
         },
         m: 'Should generate base property object without additional fields'
       },
@@ -373,7 +358,7 @@ describe('App.config', function () {
         names: ['property_1', 'property_2'],
         properties: { category: 'SomeCat', serviceName: 'SERVICE_NAME' },
         e: {
-          keys: ['name', 'displayName', 'isVisible', 'isReconfigurable', 'category', 'serviceName']
+          keys: ['name', 'category', 'serviceName']
         },
         m: 'Should generate base property object without additional fields'
       }
@@ -502,7 +487,6 @@ describe('App.config', function () {
           property_name: 'hdfs_user'
         },
         output: {
-          id: 'puppet var',
           category: 'Users and Groups',
           isVisible: true,
           serviceName: 'MISC',
@@ -521,7 +505,6 @@ describe('App.config', function () {
           service_name: 'KNOX'
         },
         output: {
-          id: 'puppet var',
           category: 'Users and Groups',
           isVisible: true,
           serviceName: 'MISC',


[6/6] ambari git commit: AMBARI-13069. Attributes of configuration property should be stack API driven. (jaimin)

Posted by ja...@apache.org.
AMBARI-13069. Attributes of configuration property should be stack API driven. (jaimin)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/70ca8500
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/70ca8500
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/70ca8500

Branch: refs/heads/trunk
Commit: 70ca85005b49a93970164af9a047bebd2b290427
Parents: 93a2106
Author: Jaimin Jetly <ja...@hortonworks.com>
Authored: Fri Sep 11 18:04:24 2015 -0700
Committer: Jaimin Jetly <ja...@hortonworks.com>
Committed: Fri Sep 11 18:04:24 2015 -0700

----------------------------------------------------------------------
 ...StackLevelConfigurationResourceProvider.java |   22 +-
 .../server/state/ValueAttributesInfo.java       |   90 +
 .../1.6.1.2.2.0/configuration/accumulo-env.xml  |   53 +
 .../configuration/accumulo-log4j.xml            |    3 +
 .../1.6.1.2.2.0/configuration/accumulo-site.xml |   13 +
 .../0.1.0/configuration/ams-env.xml             |    4 +
 .../0.1.0/configuration/ams-hbase-log4j.xml     |    3 +
 .../configuration/ams-hbase-security-site.xml   |   54 +
 .../0.1.0/configuration/ams-log4j.xml           |    3 +
 .../0.1.0/configuration/ams-site.xml            |   18 +
 .../0.5.0.2.1/configuration/falcon-env.xml      |   22 +
 .../configuration/falcon-startup.properties.xml |    3 +
 .../1.4.0.2.0/configuration/flume-conf.xml      |    4 +
 .../FLUME/1.4.0.2.0/configuration/flume-env.xml |   10 +
 .../0.96.0.2.0/configuration/hbase-env.xml      |   15 +
 .../0.96.0.2.0/configuration/hbase-log4j.xml    |    3 +
 .../0.96.0.2.0/configuration/hbase-site.xml     |   14 +
 .../HDFS/2.1.0.2.0/configuration/hadoop-env.xml |   25 +
 .../HDFS/2.1.0.2.0/configuration/hdfs-log4j.xml |    3 +
 .../HDFS/2.1.0.2.0/configuration/hdfs-site.xml  |   28 +-
 .../HIVE/0.12.0.2.0/configuration/hive-env.xml  |   34 +
 .../configuration/hive-exec-log4j.xml           |    3 +
 .../0.12.0.2.0/configuration/hive-log4j.xml     |    3 +
 .../HIVE/0.12.0.2.0/configuration/hive-site.xml |   29 +
 .../0.12.0.2.0/configuration/webhcat-log4j.xml  |    3 +
 .../0.12.0.2.0/configuration/webhcat-site.xml   |    6 +
 .../KAFKA/0.8.1.2.2/configuration/kafka-env.xml |    5 +
 .../0.8.1.2.2/configuration/kafka-log4j.xml     |    3 +
 .../1.10.3-10/configuration/kerberos-env.xml    |   86 +
 .../1.10.3-10/configuration/krb5-conf.xml       |   17 +
 .../0.5.0.2.2/configuration/gateway-log4j.xml   |    3 +
 .../KNOX/0.5.0.2.2/configuration/knox-env.xml   |   58 +-
 .../KNOX/0.5.0.2.2/configuration/ldap-log4j.xml |    3 +
 .../ranger-knox-plugin-properties.xml           |   11 +
 .../KNOX/0.5.0.2.2/configuration/topology.xml   |    4 +
 .../KNOX/0.5.0.2.2/configuration/users-ldif.xml |    4 +
 .../1.0.0.2.3/configuration/mahout-log4j.xml    |    3 +
 .../OOZIE/4.0.0.2.0/configuration/oozie-env.xml |   23 +
 .../4.0.0.2.0/configuration/oozie-log4j.xml     |    3 +
 .../4.0.0.2.0/configuration/oozie-site.xml      |   20 +
 .../4.2.0.2.3/configuration/oozie-site.xml      |   20 +
 .../PIG/0.12.0.2.0/configuration/pig-log4j.xml  |    3 +
 .../0.12.0.2.0/configuration/pig-properties.xml |    4 +
 .../0.4.0/configuration/admin-properties.xml    |   85 +
 .../RANGER/0.4.0/configuration/ranger-env.xml   |   12 +
 .../0.4.0/configuration/usersync-properties.xml |    3 +
 .../0.5.0.2.3/configuration/kms-log4j.xml       |    5 +-
 .../configuration/ranger-kms-audit.xml          |    4 +
 .../0.60.0.2.2/configuration/slider-log4j.xml   |    3 +
 .../1.2.0.2.2/configuration/spark-defaults.xml  |    6 +
 .../configuration/spark-javaopts-properties.xml |    3 +
 .../configuration/spark-log4j-properties.xml    |    3 +
 .../configuration/spark-metrics-properties.xml  |    3 +
 .../0.9.1.2.1/configuration/storm-site.xml      |   65 +
 .../configuration-mapred/mapred-env.xml         |   14 +
 .../YARN/2.1.0.2.0/configuration/yarn-env.xml   |   24 +
 .../YARN/2.1.0.2.0/configuration/yarn-log4j.xml |    3 +
 .../YARN/2.1.0.2.0/configuration/yarn-site.xml  |    3 +
 .../3.4.5.2.0/configuration/zoo.cfg.xml         |   18 +
 .../3.4.5.2.0/configuration/zookeeper-env.xml   |   10 +
 .../3.4.5.2.0/configuration/zookeeper-log4j.xml |    3 +
 .../src/main/resources/properties.json          |    1 +
 .../HDP/2.0.6/configuration/cluster-env.xml     |    8 +
 .../GLUSTERFS/configuration/core-site.xml       |    2 +
 .../GLUSTERFS/configuration/hadoop-env.xml      |   30 +-
 .../services/HBASE/configuration/hbase-site.xml |    4 +
 .../services/HIVE/configuration/hive-site.xml   |   32 +
 .../services/OOZIE/configuration/oozie-site.xml |   16 +
 .../PIG/configuration/pig-properties.xml        |    5 +
 .../services/YARN/configuration/yarn-env.xml    |    5 +
 .../services/HBASE/configuration/hbase-env.xml  |   19 +
 .../services/HBASE/configuration/hbase-site.xml |   18 +
 .../ranger-hbase-plugin-properties.xml          |   14 +-
 .../services/HDFS/configuration/core-site.xml   |    3 +
 .../services/HDFS/configuration/hadoop-env.xml  |    3 +-
 .../services/HDFS/configuration/hdfs-log4j.xml  |    3 +
 .../services/HDFS/configuration/hdfs-site.xml   |    3 +
 .../ranger-hdfs-plugin-properties.xml           |   16 +-
 .../services/HIVE/configuration/hive-env.xml    |    1 +
 .../services/HIVE/configuration/hive-site.xml   |   33 +-
 .../ranger-hive-plugin-properties.xml           |    8 +
 .../HIVE/configuration/webhcat-site.xml         |    6 +
 .../ranger-storm-plugin-properties.xml          |   11 +
 .../services/STORM/configuration/storm-site.xml |    6 +
 .../GLUSTERFS/configuration/core-site.xml       |    2 +
 .../GLUSTERFS/configuration/hadoop-env.xml      |   28 +-
 .../services/HBASE/configuration/hbase-site.xml |    1 +
 .../services/OOZIE/configuration/oozie-site.xml |    4 +
 .../ACCUMULO/configuration/accumulo-log4j.xml   |    3 +
 .../services/HBASE/configuration/hbase-site.xml |    4 +
 .../HBASE/configuration/ranger-hbase-audit.xml  |    4 +
 .../configuration/ranger-hbase-security.xml     |    1 +
 .../services/HDFS/configuration/hadoop-env.xml  |    4 +
 .../services/HDFS/configuration/hdfs-site.xml   |    2 +
 .../HDFS/configuration/ranger-hdfs-audit.xml    |    4 +
 .../HIVE/configuration/ranger-hive-audit.xml    |    4 +
 .../HIVE/configuration/ranger-hive-security.xml |    1 +
 .../KAFKA/configuration/ranger-kafka-audit.xml  |    4 +
 .../ranger-kafka-plugin-properties.xml          |   10 +
 .../KNOX/configuration/ranger-knox-audit.xml    |    4 +
 .../PIG/configuration/pig-properties.xml        |    5 +
 .../RANGER/configuration/ranger-admin-site.xml  |   76 +
 .../RANGER/configuration/ranger-env.xml         |    1 +
 .../RANGER/configuration/ranger-ugsync-site.xml |   39 +
 .../STORM/configuration/ranger-storm-audit.xml  |    4 +
 .../services/STORM/configuration/storm-site.xml |    4 +
 .../2.3/services/TEZ/configuration/tez-site.xml |    3 +
 .../YARN/configuration/ranger-yarn-audit.xml    |    4 +
 .../ranger-yarn-plugin-properties.xml           |   10 +
 .../services/YARN/configuration/yarn-log4j.xml  |    3 +
 .../services/YARN/configuration/yarn-site.xml   |    3 +
 .../HDPWIN/2.1/configuration/cluster-env.xml    |   14 +
 .../AMBARI_METRICS/configuration/ams-env.xml    |    4 +
 .../AMBARI_METRICS/configuration/ams-site.xml   |    1 +
 .../FALCON/configuration/falcon-env.xml         |   11 +
 .../services/FLUME/configuration/flume-conf.xml |    4 +
 .../services/HBASE/configuration/hbase-env.xml  |   10 +
 .../services/HBASE/configuration/hbase-site.xml |    1 +
 .../services/HDFS/configuration/hadoop-env.xml  |   11 +
 .../services/HDFS/configuration/hdfs-site.xml   |    9 +
 .../services/HIVE/configuration/hive-env.xml    |   28 +
 .../services/HIVE/configuration/hive-site.xml   |    8 +
 .../services/OOZIE/configuration/oozie-env.xml  |   23 +
 .../services/OOZIE/configuration/oozie-site.xml |    8 +
 .../YARN/configuration-mapred/mapred-env.xml    |   10 +
 .../services/YARN/configuration/yarn-env.xml    |   10 +
 .../ZOOKEEPER/configuration/zoo.cfg.xml         |    1 +
 .../ZOOKEEPER/configuration/zookeeper-env.xml   |   10 +
 .../services/HBASE/configuration/hbase-env.xml  |    4 +
 .../services/HBASE/configuration/hbase-site.xml |   10 +
 .../services/HDFS/configuration/hdfs-log4j.xml  |    3 +
 .../services/HIVE/configuration/hive-site.xml   |   33 +-
 .../HIVE/configuration/webhcat-site.xml         |    6 +
 .../services/STORM/configuration/storm-site.xml |    6 +
 .../services/HBASE/configuration/hbase-site.xml |    4 +
 .../services/HDFS/configuration/hdfs-site.xml   |    2 +
 .../services/OOZIE/configuration/oozie-env.xml  |   23 +
 .../services/OOZIE/configuration/oozie-site.xml |    4 +
 .../services/STORM/configuration/storm-site.xml |    4 +
 .../2.3/services/TEZ/configuration/tez-site.xml |    3 +
 .../server/api/services/AmbariMetaInfoTest.java |   70 +-
 .../services/YARN/configuration/yarn-site.xml   |   14 +
 ambari-web/app/assets/test/tests.js             |    3 +
 ambari-web/app/data/HDP2.2/site_properties.js   |  341 --
 ambari-web/app/data/HDP2.3/site_properties.js   |  415 +--
 ambari-web/app/data/HDP2/site_properties.js     | 3138 +++++-------------
 .../configs/objects/service_config_property.js  |    3 +-
 .../app/models/configs/stack_config_property.js |   86 +-
 ambari-web/app/utils/config.js                  |    6 +-
 .../test/data/HDP2.2/site_properties_test.js    |   68 +
 .../test/data/HDP2.3/site_properties_test.js    |   68 +
 .../test/data/HDP2/site_properties_test.js      |   73 +-
 ambari-web/test/utils/config_test.js            |   21 +-
 153 files changed, 2776 insertions(+), 3279 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackLevelConfigurationResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackLevelConfigurationResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackLevelConfigurationResourceProvider.java
index 0525488..86d617e 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackLevelConfigurationResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackLevelConfigurationResourceProvider.java
@@ -19,12 +19,6 @@
 
 package org.apache.ambari.server.controller.internal;
 
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
 import org.apache.ambari.server.AmbariException;
 import org.apache.ambari.server.controller.AmbariManagementController;
 import org.apache.ambari.server.controller.StackConfigurationResponse;
@@ -38,6 +32,13 @@ import org.apache.ambari.server.controller.spi.Resource.Type;
 import org.apache.ambari.server.controller.spi.SystemException;
 import org.apache.ambari.server.controller.spi.UnsupportedPropertyException;
 import org.apache.ambari.server.controller.utilities.PropertyHelper;
+import org.apache.commons.lang.StringUtils;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
 
 public class StackLevelConfigurationResourceProvider extends
     ReadOnlyResourceProvider {
@@ -51,6 +52,9 @@ public class StackLevelConfigurationResourceProvider extends
   public static final String PROPERTY_NAME_PROPERTY_ID = PropertyHelper
       .getPropertyId("StackLevelConfigurations", "property_name");
 
+  public static final String PROPERTY_DISPLAY_NAME_PROPERTY_ID = PropertyHelper
+      .getPropertyId("StackLevelConfigurations", "property_display_name");
+
   public static final String PROPERTY_VALUE_PROPERTY_ID = PropertyHelper
       .getPropertyId("StackLevelConfigurations", "property_value");
 
@@ -133,6 +137,12 @@ public class StackLevelConfigurationResourceProvider extends
 
       setResourceProperty(resource, PROPERTY_DESCRIPTION_PROPERTY_ID,
           response.getPropertyDescription(), requestedIds);
+
+      //should not be returned if empty
+      if (StringUtils.isNotEmpty(response.getPropertyDisplayName())) {
+        setResourceProperty(resource, PROPERTY_DISPLAY_NAME_PROPERTY_ID,
+            response.getPropertyDisplayName(), requestedIds);
+      }
       
       setResourceProperty(resource, PROPERTY_PROPERTY_TYPE_PROPERTY_ID, 
           response.getPropertyType(), requestedIds);

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/java/org/apache/ambari/server/state/ValueAttributesInfo.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ValueAttributesInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ValueAttributesInfo.java
index 8054c54..e8cd074 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/ValueAttributesInfo.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ValueAttributesInfo.java
@@ -36,6 +36,24 @@ public class ValueAttributesInfo {
   private String minimum;
   private String unit;
   private String delete;
+  private Boolean visible;
+  private Boolean overridable;
+
+  @XmlElement(name = "empty-value-valid")
+  @JsonProperty("empty_value_valid")
+  private Boolean emptyValueValid;
+
+  @XmlElement(name = "read-only")
+  @JsonProperty("read_only")
+  private Boolean readOnly;
+
+  @XmlElement(name = "editable-only-at-install")
+  @JsonProperty("editable_only_at_install")
+  private Boolean editableOnlyAtInstall;
+
+  @XmlElement(name = "show-property-name")
+  @JsonProperty("show_property_name")
+  private Boolean showPropertyName;
 
   @XmlElement(name = "increment-step")
   @JsonProperty("increment_step")
@@ -128,6 +146,54 @@ public class ValueAttributesInfo {
     this.delete = delete;
   }
 
+  public Boolean getEmptyValueValid() {
+    return emptyValueValid;
+  }
+
+  public void setEmptyValueValid(Boolean isEmptyValueValid) {
+    this.emptyValueValid = isEmptyValueValid;
+  }
+
+  public Boolean getVisible() {
+    return visible;
+  }
+
+  public void setVisible(Boolean isVisible) {
+    this.visible = isVisible;
+  }
+
+  public Boolean getReadOnly() {
+    return readOnly;
+  }
+
+  public void setReadOnly(Boolean isReadOnly) {
+    this.readOnly = isReadOnly;
+  }
+
+  public Boolean getEditableOnlyAtInstall() {
+    return editableOnlyAtInstall;
+  }
+
+  public void setEditableOnlyAtInstall(Boolean isEditableOnlyAtInstall) {
+    this.editableOnlyAtInstall = isEditableOnlyAtInstall;
+  }
+
+  public Boolean getOverridable() {
+    return overridable;
+  }
+
+  public void setOverridable(Boolean isOverridable) {
+    this.overridable = isOverridable;
+  }
+
+  public Boolean getShowPropertyName() {
+    return showPropertyName;
+  }
+
+  public void setShowPropertyName(Boolean isPropertyNameVisible) {
+    this.showPropertyName = isPropertyNameVisible;
+  }
+
   @Override
   public boolean equals(Object o) {
     if (this == o) return true;
@@ -138,6 +204,18 @@ public class ValueAttributesInfo {
     if (entries != null ? !entries.equals(that.entries) : that.entries != null) return false;
     if (entriesEditable != null ? !entriesEditable.equals(that.entriesEditable) : that.entriesEditable != null)
       return false;
+    if (emptyValueValid != null ? !emptyValueValid.equals(that.emptyValueValid) : that.emptyValueValid != null)
+      return false;
+    if (visible != null ? !visible.equals(that.visible) : that.visible != null)
+      return false;
+    if (readOnly != null ? !readOnly.equals(that.readOnly) : that.readOnly != null)
+      return false;
+    if (editableOnlyAtInstall != null ? !editableOnlyAtInstall.equals(that.editableOnlyAtInstall) : that.editableOnlyAtInstall != null)
+      return false;
+    if (overridable != null ? !overridable.equals(that.overridable) : that.overridable != null)
+      return false;
+    if (showPropertyName != null ? !showPropertyName.equals(that.showPropertyName) : that.showPropertyName != null)
+      return false;
     if (maximum != null ? !maximum.equals(that.maximum) : that.maximum != null) return false;
     if (minimum != null ? !minimum.equals(that.minimum) : that.minimum != null) return false;
     if (selectionCardinality != null ? !selectionCardinality.equals(that.selectionCardinality) : that.selectionCardinality != null)
@@ -161,6 +239,12 @@ public class ValueAttributesInfo {
     result = 31 * result + (entriesEditable != null ? entriesEditable.hashCode() : 0);
     result = 31 * result + (selectionCardinality != null ? selectionCardinality.hashCode() : 0);
     result = 31 * result + (incrementStep != null ? incrementStep.hashCode() : 0);
+    result = 31 * result + (emptyValueValid != null ? emptyValueValid.hashCode() : 0);
+    result = 31 * result + (visible != null ? visible.hashCode() : 0);
+    result = 31 * result + (readOnly != null ? readOnly.hashCode() : 0);
+    result = 31 * result + (editableOnlyAtInstall != null ? editableOnlyAtInstall.hashCode() : 0);
+    result = 31 * result + (overridable != null ? overridable.hashCode() : 0);
+    result = 31 * result + (showPropertyName != null ? showPropertyName.hashCode() : 0);
     return result;
   }
 
@@ -173,6 +257,12 @@ public class ValueAttributesInfo {
       ", minimum='" + minimum + '\'' +
       ", unit='" + unit + '\'' +
       ", delete='" + delete + '\'' +
+      ", emptyValueValid='" + emptyValueValid + '\'' +
+      ", visible='" + visible + '\'' +
+      ", readOnly='" + readOnly + '\'' +
+      ", editableOnlyAtInstall='" + editableOnlyAtInstall + '\'' +
+      ", overridable='" + overridable + '\'' +
+      ", showPropertyName='" + showPropertyName + '\'' +
       ", incrementStep='" + incrementStep + '\'' +
       ", entriesEditable=" + entriesEditable +
       ", selectionCardinality='" + selectionCardinality + '\'' +

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml
index 67da50e..4e82773 100644
--- a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml
+++ b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-env.xml
@@ -25,40 +25,68 @@
     <name>accumulo_root_password</name>
     <value></value>
     <property-type>PASSWORD</property-type>
+    <display-name>Accumulo root password</display-name>
     <description>Password for the Accumulo root user. This password will be
       used to initialize Accumulo and to create the trace user. Changing this
       will not change the password for the Accumulo root user.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property require-input="true">
     <name>instance_secret</name>
     <value></value>
+    <display-name>Instance Secret</display-name>
     <property-type>PASSWORD</property-type>
     <description>A secret unique to a given instance that all Accumulo server
       processes must know in order to communicate with one
       another.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property require-input="false">
     <name>trace_password</name>
     <value>trace</value>
+    <display-name>Trace user password</display-name>
     <property-type>PASSWORD</property-type>
     <description>Password for the trace user. The trace user will be created
       with this password if that user does not already exist. Changing this
       will not change the password for the trace user.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_log_dir</name>
     <value>/var/log/accumulo</value>
+    <display-name>Accumulo Log Dir</display-name>
     <description>Log Directories for Accumulo.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_pid_dir</name>
     <value>/var/run/accumulo</value>
+    <display-name>Accumulo PID Dir</display-name>
     <description>Pid Directory for Accumulo.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_instance_name</name>
     <value>hdp-accumulo-instance</value>
+    <display-name>Instance Name</display-name>
     <description>Accumulo Instance Name.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_user</name>
@@ -69,31 +97,55 @@
   <property>
     <name>accumulo_master_heapsize</name>
     <value>1024</value>
+    <display-name>Accumulo Master Maximum Java heap size</display-name>
     <description>Accumulo Master Heap Size.</description>
+    <value-attributes>
+      <unit>MB</unit>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_tserver_heapsize</name>
     <value>1536</value>
+    <display-name>Accumulo TServer Maximum Java heap size</display-name>
     <description>Accumulo Tablet Server Heap Size.</description>
+    <value-attributes>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_monitor_heapsize</name>
     <value>1024</value>
+    <display-name>Accumulo Monitor Maximum Java heap size</display-name>
     <description>Accumulo Monitor Heap Size.</description>
+    <value-attributes>
+      <unit>MB</unit>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_gc_heapsize</name>
     <value>256</value>
+    <display-name>Accumulo GC Maximum Java heap size</display-name>
     <description>Accumulo Garbage Collector Heap Size.</description>
+    <value-attributes>
+      <unit>MB</unit>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_other_heapsize</name>
     <value>1024</value>
+    <display-name>Accumulo Other Maximum Java heap size</display-name>
     <description>Heap size for other Accumulo processes.</description>
+    <value-attributes>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   <property>
     <name>accumulo_monitor_bind_all</name>
     <value>false</value>
+    <display-name>Monitor Bind All Interfaces</display-name>
     <description>Controls whether the monitor binds to all interfaces.</description>
   </property>
   <property>
@@ -120,6 +172,7 @@ export ACCUMULO_KILL_CMD='kill -9 %p'
   <property>
     <name>server_content</name>
     <description>The template for a server accumulo-env.sh file.</description>
+    <display-name>Server accumulo-env template</display-name>
     <value>
 #! /usr/bin/env bash
 export HADOOP_PREFIX={{hadoop_prefix}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml
index e8f6e56..ed1f803 100644
--- a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-log4j.xml
@@ -107,6 +107,9 @@ log4j.appender.A1.layout.ConversionPattern=%d{ISO8601} [%-8c{2}] %-5p: %m%n
 log4j.appender.A1.layout=org.apache.log4j.PatternLayout
 
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml
index 2a7e083..822c449 100644
--- a/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml
+++ b/ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/configuration/accumulo-site.xml
@@ -25,6 +25,9 @@
     <name>instance.volumes</name>
     <value>hdfs://localhost:8020/apps/accumulo/data</value>
     <description>Location of Accumulo data files in HDFS.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -32,12 +35,18 @@
     <value>localhost:2181</value>
     <description>Comma-separated list of ZooKeeper server:port
       pairs.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>instance.zookeeper.timeout</name>
     <value>30s</value>
     <description>Timeout for zookeeper connections.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -125,8 +134,12 @@
   <property>
     <name>trace.user</name>
     <value>trace</value>
+    <display-name>Trace user</display-name>
     <description>User that the tracer process uses to write
       tracing data to Accumulo.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml
index e84193c..40a3921 100644
--- a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml
+++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-env.xml
@@ -28,21 +28,25 @@
   <property>
     <name>metrics_collector_log_dir</name>
     <value>/var/log/ambari-metrics-collector</value>
+    <display-name>Metrics Collector log dir</display-name>
     <description>Collector log directory.</description>
   </property>
   <property>
     <name>metrics_collector_pid_dir</name>
     <value>/var/run/ambari-metrics-collector</value>
+    <display-name>Metrics Collector pid dir</display-name>
     <description>Collector pid directory.</description>
   </property>
   <property>
     <name>metrics_monitor_pid_dir</name>
     <value>/var/run/ambari-metrics-monitor</value>
+    <display-name>Metrics Monitor pid dir</display-name>
     <description>Monitor pid directory.</description>
   </property>
   <property>
     <name>metrics_monitor_log_dir</name>
     <value>/var/log/ambari-metrics-monitor</value>
+    <display-name>Metrics Monitor log dir</display-name>
     <description>Monitor log directory.</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-log4j.xml b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-log4j.xml
index 64cc9d3..52ead29 100644
--- a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-log4j.xml
@@ -138,6 +138,9 @@ log4j.logger.org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher=INFO
 # log4j.logger.org.apache.hadoop.hbase.client.MetaScanner=INFO
 
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-security-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-security-site.xml b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-security-site.xml
index 6f60736..5e7bc51 100644
--- a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-security-site.xml
+++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-hbase-security-site.xml
@@ -23,73 +23,127 @@
   <property>
     <name>ams.zookeeper.keytab</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>ams.zookeeper.principal</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hadoop.security.authentication</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.coprocessor.master.classes</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.coprocessor.region.classes</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.master.kerberos.principal</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.master.keytab.file</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.myclient.keytab</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.myclient.principal</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.regionserver.kerberos.principal</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.regionserver.keytab.file</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.security.authentication</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.security.authorization</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.zookeeper.property.authProvider.1</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.zookeeper.property.jaasLoginRenew</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.zookeeper.property.kerberos.removeHostFromPrincipal</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.zookeeper.property.kerberos.removeRealmFromPrincipal</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>zookeeper.znode.parent</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-log4j.xml b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-log4j.xml
index 6d3703e..53e2587 100644
--- a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-log4j.xml
@@ -57,6 +57,9 @@ log4j.appender.file.MaxBackupIndex=60
 log4j.appender.file.layout=org.apache.log4j.PatternLayout
 log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p [%t] %c{1}:%L - %m%n
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-site.xml b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-site.xml
index 5c7a39b..f65bea8 100644
--- a/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-site.xml
+++ b/ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/configuration/ams-site.xml
@@ -24,6 +24,7 @@
   <property>
     <name>timeline.metrics.service.operation.mode</name>
     <value>embedded</value>
+    <display-name>Metrics Service operation mode</display-name>
     <description>
       Service Operation modes:
       1) embedded: Metrics stored on local FS, HBase in Standalone mode
@@ -47,6 +48,7 @@
   <property>
     <name>timeline.metrics.aggregator.checkpoint.dir</name>
     <value>/var/lib/ambari-metrics-collector/checkpoint</value>
+    <display-name>Aggregator checkpoint directory</display-name>
     <description>
       Directory to store aggregator checkpoints. Change to a permanent
       location so that checkpoint ar not lost.
@@ -55,6 +57,7 @@
   <property>
     <name>timeline.metrics.host.aggregator.minute.interval</name>
     <value>120</value>
+    <display-name>Minute host aggregator interval</display-name>
     <description>
       Time in seconds to sleep for the minute resolution host based
       aggregator. Default resolution is 2 minutes.
@@ -63,6 +66,7 @@
   <property>
     <name>timeline.metrics.host.aggregator.hourly.interval</name>
     <value>3600</value>
+    <display-name>Hourly host aggregator interval</display-name>
     <description>
       Time in seconds to sleep for the hourly resolution host based
       aggregator. Default resolution is 1 hour.
@@ -79,6 +83,7 @@
   <property>
     <name>timeline.metrics.cluster.aggregator.hourly.interval</name>
     <value>3600</value>
+    <display-name>Hourly cluster aggregator Interval</display-name>
     <description>
       Time in seconds to sleep for the hourly resolution cluster wide
       aggregator. Default is 1 hour.
@@ -95,6 +100,7 @@
   <property>
     <name>timeline.metrics.cluster.aggregator.minute.interval</name>
     <value>120</value>
+    <display-name>Minute cluster aggregator interval</display-name>
     <description>
       Time in seconds to sleep for the minute resolution cluster wide
       aggregator. Default resolution is 2 minutes.
@@ -112,6 +118,7 @@
   <property>
     <name>timeline.metrics.host.aggregator.hourly.checkpointCutOffMultiplier</name>
     <value>2</value>
+    <display-name>Hourly host aggregator checkpoint cutOff multiplier</display-name>
     <description>
       Multiplier value * interval = Max allowed checkpoint lag. Effectively
       if aggregator checkpoint is greater than max allowed checkpoint delay,
@@ -121,6 +128,7 @@
   <property>
     <name>timeline.metrics.host.aggregator.minute.checkpointCutOffMultiplier</name>
     <value>2</value>
+    <display-name>Minute host aggregator checkpoint cutOff multiplier</display-name>
     <description>
       Multiplier value * interval = Max allowed checkpoint lag. Effectively
       if aggregator checkpoint is greater than max allowed checkpoint delay,
@@ -130,6 +138,7 @@
   <property>
     <name>timeline.metrics.cluster.aggregator.hourly.checkpointCutOffMultiplier</name>
     <value>2</value>
+    <display-name>Hourly cluster aggregator checkpoint cutOff multiplier</display-name>
     <description>
       Multiplier value * interval = Max allowed checkpoint lag. Effectively
       if aggregator checkpoint is greater than max allowed checkpoint delay,
@@ -139,6 +148,7 @@
   <property>
     <name>timeline.metrics.cluster.aggregator.minute.checkpointCutOffMultiplier</name>
     <value>2</value>
+    <display-name>Minute cluster aggregator checkpoint cutOff multiplier</display-name>
     <description>
       Multiplier value * interval = Max allowed checkpoint lag. Effectively
       if aggregator checkpoint is greater than max allowed checkpoint delay,
@@ -164,6 +174,7 @@
   <property>
     <name>timeline.metrics.host.aggregator.hourly.disabled</name>
     <value>false</value>
+    <display-name>Disable Hourly host aggregator</display-name>
     <description>
       Disable host based hourly aggregations.
     </description>
@@ -171,6 +182,7 @@
   <property>
     <name>timeline.metrics.host.aggregator.minute.disabled</name>
     <value>false</value>
+    <display-name>Disable Minute host aggregator</display-name>
     <description>
       Disable host based minute aggregations.
     </description>
@@ -184,6 +196,7 @@
   </property>
   <property>
     <name>timeline.metrics.cluster.aggregator.hourly.disabled</name>
+    <display-name>Disable Hourly cluster aggregator</display-name>
     <value>false</value>
     <description>
       Disable cluster based hourly aggregations.
@@ -192,6 +205,7 @@
   <property>
     <name>timeline.metrics.cluster.aggregator.minute.disabled</name>
     <value>false</value>
+    <display-name>Disable minute cluster aggregator</display-name>
     <description>
       Disable cluster based minute aggregations.
     </description>
@@ -199,6 +213,7 @@
   <property>
     <name>timeline.metrics.cluster.aggregator.minute.timeslice.interval</name>
     <value>30</value>
+    <display-name>Minute cluster aggregator timeslice interval</display-name>
     <description>
       Lowest resolution of desired data for cluster level minute aggregates.
     </description>
@@ -273,6 +288,7 @@
   <property>
     <name>timeline.metrics.service.default.result.limit</name>
     <value>5760</value>
+    <display-name>Metrics service default result limit</display-name>
     <description>
       Max result limit on number of rows returned. Calculated as follows:
       4 aggregate metrics/min * 60 * 24: Retrieve aggregate data for 1 day.
@@ -281,6 +297,7 @@
   <property>
     <name>timeline.metrics.service.checkpointDelay</name>
     <value>60</value>
+    <display-name>Metrics service checkpoint delay</display-name>
     <description>
       Time in seconds to sleep on the first run or when the checkpoint is
       too old.
@@ -288,6 +305,7 @@
   </property>
   <property>
     <name>timeline.metrics.service.resultset.fetchSize</name>
+    <display-name>Metrics service resultset fetchSize</display-name>
     <value>2000</value>
     <description>
       JDBC resultset prefect size for aggregator queries.

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-env.xml b/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-env.xml
index 75178d2..f5afd95 100644
--- a/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-env.xml
+++ b/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-env.xml
@@ -28,26 +28,39 @@
   <property>
     <name>falcon_port</name>
     <value>15000</value>
+    <display-name>Falcon server port</display-name>
     <description>Port the Falcon Server listens on.</description>
   </property>
   <property>
     <name>falcon_log_dir</name>
     <value>/var/log/falcon</value>
+    <display-name>Falcon Log Dir</display-name>
     <description>Falcon log directory.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>falcon_pid_dir</name>
     <value>/var/run/falcon</value>
+    <display-name>Falcon PID Dir</display-name>
     <description>Falcon pid-file directory.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>falcon_local_dir</name>
     <value>/hadoop/falcon</value>
+    <display-name>Falcon data directory</display-name>
     <description>Directory where Falcon data, such as activemq data, is stored.</description>
   </property>
   <property>
     <name>falcon_store_uri</name>
     <value>file:///hadoop/falcon/store</value>
+    <display-name>Falcon store URI</display-name>
     <description>Directory where entity definitions are stored.</description>
   </property>
   <!--embeddedmq properties-->
@@ -55,16 +68,25 @@
     <name>falcon.embeddedmq.data</name>
     <value>/hadoop/falcon/embeddedmq/data</value>
     <description>Directory in which embeddedmq data is stored.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>falcon.embeddedmq</name>
     <value>true</value>
     <description>Whether embeddedmq is enabled or not.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>falcon.emeddedmq.port</name>
     <value>61616</value>
     <description>Port that embeddedmq will listen on.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   
   <!-- falcon-env.sh -->

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-startup.properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-startup.properties.xml b/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-startup.properties.xml
index 451ebb5..90e67ba 100644
--- a/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-startup.properties.xml
+++ b/ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/configuration/falcon-startup.properties.xml
@@ -157,6 +157,9 @@ hive-hcatalog-core,hive-jdbc,hive-webhcat-java-client</value>
     <name>*.falcon.http.authentication.blacklisted.users</name>
     <value></value>
     <description>Comma separated list of black listed users</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <!--authentication properties-->
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-conf.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-conf.xml b/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-conf.xml
index 8ff764b..94ae058 100644
--- a/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-conf.xml
+++ b/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-conf.xml
@@ -29,5 +29,9 @@
     <value>
 # Flume agent config
     </value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-env.xml b/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-env.xml
index e150478..b1283dd 100644
--- a/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-env.xml
+++ b/ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/configuration/flume-env.xml
@@ -23,13 +23,23 @@
 <configuration>
   <property>
     <name>flume_conf_dir</name>
+    <display-name>Flume Conf Dir</display-name>
     <value>/etc/flume/conf</value>
     <description>Location to save configuration files</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>flume_log_dir</name>
+    <display-name>Flume Log Dir</display-name>
     <value>/var/log/flume</value>
     <description>Location to save log files</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>flume_run_dir</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-env.xml b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-env.xml
index 03db5df..242e9a7 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-env.xml
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-env.xml
@@ -24,12 +24,22 @@
   <property>
     <name>hbase_log_dir</name>
     <value>/var/log/hbase</value>
+    <display-name>HBase Log Dir Prefix</display-name>
     <description>Log Directories for HBase.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hbase_pid_dir</name>
     <value>/var/run/hbase</value>
+    <display-name>HBase PID Dir</display-name>
     <description>Pid Directory for HBase.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hbase_regionserver_heapsize</name>
@@ -52,10 +62,15 @@ Sets the upper bound on HBase RegionServers' young generation size.
 This value is used in case the young generation size (-Xmn) calculated based on the max heapsize (hbase_regionserver_heapsize)
 and the -Xmn ratio (hbase_regionserver_xmn_ratio) exceeds this value.
     </description>
+    <display-name>RegionServers maximum value for -Xmn</display-name>
+    <value-attributes>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   <property>
     <name>hbase_regionserver_xmn_ratio</name>
     <value>0.2</value>
+    <display-name>RegionServers -Xmn in -Xmx ratio</display-name>
     <description>Percentage of max heap size (-Xmx) which used for young generation heap (-Xmn).</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-log4j.xml b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-log4j.xml
index 64cc9d3..52ead29 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-log4j.xml
@@ -138,6 +138,9 @@ log4j.logger.org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher=INFO
 # log4j.logger.org.apache.hadoop.hbase.client.MetaScanner=INFO
 
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-site.xml b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-site.xml
index b224bef..7b5f0c4 100644
--- a/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-site.xml
+++ b/ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/configuration/hbase-site.xml
@@ -45,11 +45,16 @@
   <property>
     <name>hbase.master.port</name>
     <value>60000</value>
+    <display-name>HBase Master Port</display-name>
     <description>The port the HBase Master should bind to.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.tmp.dir</name>
     <value>/tmp/hbase-${user.name}</value>
+    <display-name>HBase tmp directory</display-name>
     <description>Temporary directory on the local filesystem.
     Change this setting to point to a location more permanent
     than '/tmp' (The '/tmp' directory is often cleared on
@@ -139,6 +144,7 @@
   <property>
     <name>hbase.hregion.memstore.block.multiplier</name>
     <value>4</value>
+    <display-name>HBase Region Block Multiplier</display-name>
     <description>
       Block updates if a memstore's size spikes this many times above the size that would cause it to be flushed.
       Useful to prevent runaway memstores during a sudden spike in update traffic.
@@ -217,6 +223,7 @@
       <minimum>100</minimum>
       <maximum>10000</maximum>
       <increment-step>100</increment-step>
+      <unit>rows</unit>
     </value-attributes>
   </property>
   <property>
@@ -298,6 +305,7 @@
 
   <property>
     <name>hbase.hstore.blockingStoreFiles</name>
+    <display-name>hstore blocking storefiles</display-name>
     <value>10</value>
     <description>
     If more than this number of StoreFiles in any one Store
@@ -388,6 +396,9 @@
     it in HBase's classpath and add the fully qualified class name here.
     A coprocessor can also be loaded on demand by setting HTableDescriptor.
     </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
     <depends-on>
       <property>
         <type>hbase-site</type>
@@ -410,6 +421,9 @@
       implementing your own MasterObserver, just put it in HBase's classpath
       and add the fully qualified class name here.
     </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
     <depends-on>
       <property>
         <type>hbase-site</type>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hadoop-env.xml b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hadoop-env.xml
index 4cb2274..8cae26c 100644
--- a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hadoop-env.xml
@@ -25,21 +25,40 @@
     <name>hdfs_log_dir_prefix</name>
     <value>/var/log/hadoop</value>
     <description>Hadoop Log Dir Prefix</description>
+    <display-name>Hadoop Log Dir Prefix</display-name>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hadoop_pid_dir_prefix</name>
     <value>/var/run/hadoop</value>
+    <display-name>Hadoop PID Dir Prefix</display-name>
     <description>Hadoop PID Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hadoop_root_logger</name>
     <value>INFO,RFA</value>
+    <display-name>Hadoop Root Logger</display-name>
     <description>Hadoop Root Logger</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hadoop_heapsize</name>
     <value>1024</value>
     <description>Hadoop maximum Java heap size</description>
+    <display-name>Hadoop maximum Java heap size</display-name>
+    <value-attributes>
+      <unit>MB</unit>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>namenode_heapsize</name>
@@ -52,6 +71,7 @@
       <maximum>268435456</maximum>
       <unit>MB</unit>
       <increment-step>256</increment-step>
+      <overridable>false</overridable>
     </value-attributes>
     <depends-on>
       <property>
@@ -77,6 +97,7 @@
       <maximum>16384</maximum>
       <unit>MB</unit>
       <increment-step>256</increment-step>
+      <overridable>false</overridable>
     </value-attributes>
   </property>
   <property>
@@ -96,6 +117,7 @@
       <maximum>16384</maximum>
       <unit>MB</unit>
       <increment-step>256</increment-step>
+      <overridable>false</overridable>
     </value-attributes>
   </property>
   <property>
@@ -109,6 +131,7 @@
       <maximum>2096</maximum>
       <unit>MB</unit>
       <increment-step>128</increment-step>
+      <overridable>false</overridable>
     </value-attributes>
   </property>
   <property>
@@ -122,6 +145,7 @@
       <maximum>2096</maximum>
       <unit>MB</unit>
       <increment-step>128</increment-step>
+      <overridable>false</overridable>
     </value-attributes>
   </property>
   <property>
@@ -152,6 +176,7 @@
   <property>
     <name>dfs.datanode.data.dir.mount.file</name>
     <value>/etc/hadoop/conf/dfs_data_dir_mount.hist</value>
+    <display-name>File that stores mount point for each data dir</display-name>
     <description>File path that contains the last known mount point for each data dir. This file is used to avoid creating a DFS data dir on the root drive (and filling it up) if a path was previously mounted on a drive.</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-log4j.xml b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-log4j.xml
index 08822eb..8360b0e 100644
--- a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-log4j.xml
@@ -196,6 +196,9 @@ log4j.appender.EventCounter=org.apache.hadoop.log.metrics.EventCounter
 # Removes "deprecated" messages
 log4j.logger.org.apache.hadoop.conf.Configuration.deprecation=WARN
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-site.xml b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-site.xml
index dc7f661..f0bd6c1 100644
--- a/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-site.xml
+++ b/ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/configuration/hdfs-site.xml
@@ -28,11 +28,15 @@
     <name>dfs.namenode.name.dir</name>
     <!-- cluster variant -->
     <value>/hadoop/hdfs/namenode</value>
+    <display-name>NameNode directories</display-name>
     <description>Determines where on the local filesystem the DFS name node
       should store the name table.  If this is a comma-delimited list
       of directories then the name table is replicated in all of the
       directories, for redundancy. </description>
     <final>true</final>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -45,8 +49,12 @@
   <property>
     <name>dfs.webhdfs.enabled</name>
     <value>true</value>
+    <display-name>WebHDFS enabled</display-name>
     <description>Whether to enable WebHDFS feature</description>
     <final>true</final>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -72,6 +80,7 @@
   <property>
     <name>dfs.datanode.data.dir</name>
     <value>/hadoop/hdfs/data</value>
+    <display-name>DataNode directories</display-name>
     <description>Determines where on the local filesystem an DFS data node
       should store its blocks.  If this is a comma-delimited
       list of directories, then data will be stored in all named
@@ -104,11 +113,15 @@
   <property>
     <name>dfs.namenode.checkpoint.dir</name>
     <value>/hadoop/hdfs/namesecondary</value>
+    <display-name>SecondaryNameNode Checkpoint directories</display-name>
     <description>Determines where on the local filesystem the DFS secondary
       name node should store the temporary images to merge.
       If this is a comma-delimited list of directories then the image is
       replicated in all of the directories for redundancy.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -126,8 +139,11 @@
   <property>
     <name>dfs.namenode.checkpoint.period</name>
     <value>21600</value>
-    <description>The number of seconds between two periodic checkpoints.
-    </description>
+    <display-name>HDFS Maximum Checkpoint Delay</display-name>
+    <description>The number of seconds between two periodic checkpoints.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
 
   <property>
@@ -149,6 +165,7 @@
   <property>
     <name>dfs.replication</name>
     <value>3</value>
+    <display-name>Block replication</display-name>
     <description>Default block replication.
     </description>
   </property>
@@ -243,8 +260,12 @@
     <name>dfs.datanode.du.reserved</name>
     <!-- cluster variant -->
     <value>1073741824</value>
+    <display-name>Reserved space for HDFS</display-name>
     <description>Reserved space in bytes per volume. Always leave this much space free for non dfs use.
     </description>
+    <value-attributes>
+      <unit>bytes</unit>
+    </value-attributes>
   </property>
 
   <property>
@@ -341,6 +362,7 @@
   <property>
     <name>dfs.datanode.data.dir.perm</name>
     <value>750</value>
+    <display-name>DataNode directories permission</display-name>
     <description>The permissions that should be there on dfs.datanode.data.dir
       directories. The datanode will not come up if the permissions are
       different on existing dfs.datanode.data.dir directories. If the directories
@@ -350,6 +372,7 @@
   <property>
     <name>dfs.namenode.accesstime.precision</name>
     <value>0</value>
+    <display-name>Access time precision</display-name>
     <description>The access time for HDFS file is precise upto this value.
       The default value is 1 hour. Setting a value of 0 disables
       access times for HDFS.
@@ -418,6 +441,7 @@
   <property>
     <name>dfs.client.read.shortcircuit</name>
     <value>true</value>
+    <display-name>HDFS Short-circuit read</display-name>
     <description>
       This configuration parameter turns on short-circuit local reads.
     </description>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-env.xml b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-env.xml
index 2d0a182..c60d076 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-env.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-env.xml
@@ -32,6 +32,7 @@
       <maximum>2048</maximum>
       <unit>MB</unit>
       <increment-step>512</increment-step>
+      <overridable>false</overridable>
     </value-attributes>
   </property>
 
@@ -52,14 +53,22 @@
   <property>
     <name>hive_database_type</name>
     <value>mysql</value>
+    <display-name>Hive Database Type</display-name>
     <description>Default HIVE DB type.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hive_database</name>
     <value>New MySQL Database</value>
+    <display-name>Hive Database</display-name>
     <description>
       Property that determines whether the HIVE DB is managed by Ambari.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hive_ambari_database</name>
@@ -70,16 +79,31 @@
     <name>hive_database_name</name>
     <value>hive</value>
     <description>Database name.</description>
+    <value-attributes>
+      <visible>false</visible>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hive_log_dir</name>
     <value>/var/log/hive</value>
+    <display-name>Hive Log Dir</display-name>
     <description>Directory for Hive Log files.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hive_pid_dir</name>
     <value>/var/run/hive</value>
+    <display-name>Hive PID Dir</display-name>
     <description>Hive PID Dir.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hive_user</name>
@@ -93,12 +117,22 @@
   <property>
     <name>hcat_log_dir</name>
     <value>/var/log/webhcat</value>
+    <display-name>WebHCat Log Dir</display-name>
     <description>WebHCat Log Dir.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hcat_pid_dir</name>
     <value>/var/run/webhcat</value>
+    <display-name>WebHCat Pid Dir</display-name>
     <description>WebHCat Pid Dir.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hcat_user</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-exec-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-exec-log4j.xml b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-exec-log4j.xml
index fb852f7..3181288 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-exec-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-exec-log4j.xml
@@ -106,6 +106,9 @@ log4j.logger.org.apache.zookeeper.server.NIOServerCnxn=WARN,FA
 log4j.logger.org.apache.zookeeper.ClientCnxnSocketNIO=WARN,FA
 
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-log4j.xml b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-log4j.xml
index a978ef7..acff9e7 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-log4j.xml
@@ -115,6 +115,9 @@ log4j.category.JPOX.Enhancer=ERROR,DRFA
 log4j.logger.org.apache.zookeeper.server.NIOServerCnxn=WARN,DRFA
 log4j.logger.org.apache.zookeeper.ClientCnxnSocketNIO=WARN,DRFA
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-site.xml b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-site.xml
index 2783b78..6803ee8 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-site.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/hive-site.xml
@@ -22,38 +22,63 @@ limitations under the License.
   <property>
     <name>hive.heapsize</name>
     <value>1024</value>
+    <display-name>HiveServer2 heap size</display-name>
     <description>Hive Java heap size</description>
+    <value-attributes>
+      <unit>MB</unit>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ambari.hive.db.schema.name</name>
     <value>hive</value>
+    <display-name>Database Name</display-name>
     <description>Database name used as the Hive Metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionURL</name>
     <value>jdbc:mysql://localhost/hive?createDatabaseIfNotExist=true</value>
+    <display-name>Database URL</display-name>
     <description>JDBC connect string for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionDriverName</name>
     <value>com.mysql.jdbc.Driver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>Driver class name for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionUserName</name>
     <value>hive</value>
+    <display-name>Database Username</display-name>
     <description>username to use against metastore database</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
     <name>javax.jdo.option.ConnectionPassword</name>
     <value> </value>
     <property-type>PASSWORD</property-type>
+    <display-name>Database Password</display-name>
     <description>password to use against metastore database</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -320,9 +345,13 @@ limitations under the License.
   <property>
     <name>hive.server2.thrift.port</name>
     <value>10000</value>
+    <display-name>HiveServer2 Port</display-name>
     <description>
       TCP port number to listen on, default 10000.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-log4j.xml b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-log4j.xml
index 0ded4d4..2cb2533 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-log4j.xml
@@ -73,6 +73,9 @@ log4j.logger.org.apache.zookeeper = WARN
 log4j.logger.org.eclipse.jetty = INFO
 
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-site.xml b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-site.xml
index 33f7f21..980bd32 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-site.xml
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/configuration/webhcat-site.xml
@@ -63,6 +63,9 @@ limitations under the License.
     <name>templeton.pig.archive</name>
     <value>hdfs:///apps/webhcat/pig.tar.gz</value>
     <description>The path to the Pig archive.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -81,6 +84,9 @@ limitations under the License.
     <name>templeton.hive.archive</name>
     <value>hdfs:///apps/webhcat/hive.tar.gz</value>
     <description>The path to the Hive archive.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-env.xml b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-env.xml
index 94f4975..ecc0782 100644
--- a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-env.xml
+++ b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-env.xml
@@ -35,7 +35,12 @@
   <property>
     <name>kafka_pid_dir</name>
     <value>/var/run/kafka</value>
+    <display-name>Kafka PID dir</display-name>
     <description></description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <!-- kafka-env.sh -->

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-log4j.xml b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-log4j.xml
index 901859e..e18732d 100644
--- a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/configuration/kafka-log4j.xml
@@ -111,6 +111,9 @@ log4j.logger.state.change.logger=TRACE, stateChangeAppender
 log4j.additivity.state.change.logger=false
 
    </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/kerberos-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/kerberos-env.xml b/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/kerberos-env.xml
index 60df2e0..b7ee2f4 100644
--- a/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/kerberos-env.xml
+++ b/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/kerberos-env.xml
@@ -27,6 +27,10 @@
       The type of KDC being used. Either mit-kdc or active-directory
     </description>
     <value>mit-kdc</value>
+    <display-name>KDC type</display-name>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -36,40 +40,63 @@
       should be managed (created, deleted, updated, etc...) by Ambari or managed manually.
     </description>
     <value>true</value>
+    <display-name>Manage Kerberos Identities</display-name>
+    <value-attributes>
+      <visible>false</visible>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>install_packages</name>
+    <display-name>Install OS-specific Kerberos client package(s)</display-name>
     <description>
       Indicates whether Ambari should install the Kerberos client package(s) or not. If not, it is
       expected that Kerberos utility programs (such as kadmin, kinit, klist, and kdestroy) are
       compatible with MIT Kerberos 5 version 1.10.3 in command line options and behaviors.
     </description>
     <value>true</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
     <name>ldap_url</name>
+    <display-name>LDAP url</display-name>
     <description>
       The URL to the Active Directory LDAP Interface
     </description>
     <value/>
+    <value-attributes>
+      <visible>false</visible>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
     <name>container_dn</name>
+    <display-name>Container DN</display-name>
     <description>
       The distinguished name (DN) of the container used store service principals
     </description>
+    <value-attributes>
+      <visible>false</visible>
+      <overridable>false</overridable>
+    </value-attributes>
     <value/>
   </property>
 
   <property require-input="true">
     <name>encryption_types</name>
+    <display-name>Encryption Types</display-name>
     <description>
       The supported list of session key encryption types that should be returned by the KDC.
     </description>
     <value>aes des3-cbc-sha1 rc4 des-cbc-md5</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
@@ -77,7 +104,12 @@
     <description>
       The default realm to use when creating service principals
     </description>
+    <display-name>Realm name</display-name>
     <value/>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
@@ -85,91 +117,136 @@
     <description>
       The IP address or FQDN for the KDC host. Optionally a port number may be included.
     </description>
+    <display-name>KDC host</display-name>
     <value/>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>admin_server_host</name>
+    <display-name>Kadmin host</display-name>
     <description>
       The IP address or FQDN for the KDC Kerberos administrative host. Optionally a port number may be included.
     </description>
     <value/>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>executable_search_paths</name>
+    <display-name>Executable Search Paths</display-name>
     <description>
       A comma-delimited list of search paths to use to find Kerberos utilities like kadmin and kinit.
     </description>
     <value>/usr/bin, /usr/kerberos/bin, /usr/sbin, /usr/lib/mit/bin, /usr/lib/mit/sbin</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>password_length</name>
+    <display-name>Password Length</display-name>
     <description>
       The length required length for generated passwords.
     </description>
     <value>20</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>password_min_lowercase_letters</name>
+    <display-name>Password Minimum # Lowercase Letters</display-name>
     <description>
       The minimum number of lowercase letters (a-z) required in generated passwords
     </description>
     <value>1</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>password_min_uppercase_letters</name>
+    <display-name>Password Minimum # Uppercase Letters</display-name>
     <description>
       The minimum number of uppercase letters (A-Z) required in generated passwords
     </description>
     <value>1</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>password_min_digits</name>
+    <display-name>Password Minimum # Digits</display-name>
     <description>
       The minimum number of digits (0-9) required in generated passwords
     </description>
     <value>1</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>password_min_punctuation</name>
+    <display-name>Password Minimum # Punctuation Characters</display-name>
     <description>
       The minimum number of punctuation characters (?.!$%^*()-_+=~) required in generated passwords
     </description>
     <value>1</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>password_min_whitespace</name>
+    <display-name>Password Minimum # Whitespace Characters</display-name>
     <description>
       The minimum number of whitespace characters required in generated passwords
     </description>
     <value>0</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>service_check_principal_name</name>
+    <display-name>Test Kerberos Principal</display-name>
     <description>
       The principal name to use when executing the Kerberos service check
     </description>
     <value>${cluster_name}-${short_date}</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>case_insensitive_username_rules</name>
+    <display-name>Enable case insensitive username rules</display-name>
     <description>
       Force principal names to resolve to lowercase local usernames in auth-to-local rules
     </description>
     <value>false</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ad_create_attributes_template</name>
+    <display-name>Account Attribute Template</display-name>
     <description>
       A Velocity template to use to generate a JSON-formatted document containing the set of
       attribute names and values needed to create a new Kerberos identity in the relevant
@@ -191,13 +268,22 @@
   "userAccountControl": "66048"
 }
     </value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>kdc_create_attributes</name>
+    <display-name>Principal Attributes</display-name>
     <description>
       The set of attributes to use when creating a new Kerberos identity in the relevant (MIT) KDC.
     </description>
     <value/>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/krb5-conf.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/krb5-conf.xml b/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/krb5-conf.xml
index 5cf0960..8d9262f 100644
--- a/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/krb5-conf.xml
+++ b/ambari-server/src/main/resources/common-services/KERBEROS/1.10.3-10/configuration/krb5-conf.xml
@@ -23,27 +23,41 @@
 <configuration>
   <property require-input="false">
     <name>domains</name>
+    <display-name>Domains</display-name>
     <description>
       A comma-separated list of domain names used to map server host names to the Realm name (e.g. .example.com,example.com). This is optional
     </description>
     <value/>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>manage_krb5_conf</name>
+    <display-name>Manage Kerberos client krb5.conf</display-name>
     <description>
       Indicates whether your krb5.conf file should be managed by the wizard or should you manage it yourself
     </description>
     <value>true</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>conf_dir</name>
+    <display-name>krb5-conf directory path</display-name>
     <description>The krb5.conf configuration directory</description>
     <value>/etc</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>content</name>
+    <display-name>krb5-conf template</display-name>
     <description>Customizable krb5.conf template (Jinja template engine)</description>
     <value>
 [libdefaults]
@@ -76,5 +90,8 @@
 
 {# Append additional realm declarations below #}
     </value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/gateway-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/gateway-log4j.xml b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/gateway-log4j.xml
index 370f786..cb2c0fc 100644
--- a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/gateway-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/gateway-log4j.xml
@@ -79,5 +79,8 @@
     <description>
       content for log4j.properties file for Knox.
     </description>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 </configuration>


[2/6] ambari git commit: AMBARI-13069. Attributes of configuration property should be stack API driven. (jaimin)

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/app/data/HDP2/site_properties.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/HDP2/site_properties.js b/ambari-web/app/data/HDP2/site_properties.js
index 0cda85c..3950874 100644
--- a/ambari-web/app/data/HDP2/site_properties.js
+++ b/ambari-web/app/data/HDP2/site_properties.js
@@ -20,57 +20,43 @@ var App = require('app');
 
 var hdp2properties = [
   //***************************************** HDP stack **************************************
-/**********************************************HDFS***************************************/
+  /**********************************************HDFS***************************************/
   {
-    "id": "site property",
     "name": "dfs.namenode.checkpoint.dir",
-    "displayName": "SecondaryNameNode Checkpoint directories",
     "defaultDirectory": "/hadoop/hdfs/namesecondary",
     "displayType": "directories",
-    "isOverridable": false,
     "serviceName": "HDFS",
     "filename": "hdfs-site.xml",
     "category": "SECONDARY_NAMENODE",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "dfs.namenode.checkpoint.period",
-    "displayName": "HDFS Maximum Checkpoint Delay",
     "displayType": "int",
-    "unit": "seconds",
     "category": "General",
     "serviceName": "HDFS",
     "filename": "hdfs-site.xml",
     "index": 3
   },
   {
-    "id": "site property",
     "name": "dfs.namenode.name.dir",
-    "displayName": "NameNode directories",
     "defaultDirectory": "/hadoop/hdfs/namenode",
     "displayType": "directories",
-    "isOverridable": false,
     "serviceName": "HDFS",
     "filename": "hdfs-site.xml",
     "category": "NAMENODE",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "dfs.webhdfs.enabled",
-    "displayName": "WebHDFS enabled",
     "displayType": "checkbox",
-    "isOverridable": false,
     "category": "General",
     "serviceName": "HDFS",
     "filename": "hdfs-site.xml",
     "index": 0
   },
   {
-    "id": "site property",
     "name": "dfs.datanode.failed.volumes.tolerated",
-    "displayName": "DataNode volumes failure toleration",
     "displayType": "int",
     "category": "DATANODE",
     "serviceName": "HDFS",
@@ -78,22 +64,15 @@ var hdp2properties = [
     "index": 3
   },
   {
-    "id": "site property",
     "name": "dfs.datanode.data.dir.mount.file",
-    "displayName": "File that stores mount point for each data dir",
-    "description": "File path that contains the last known mount point for each data dir. This file is used to avoid creating a DFS data dir on the root drive (and filling it up) if a path was previously mounted on a drive.",
-    "recommendedValue": "/etc/hadoop/conf/dfs_data_dir_mount.hist",
     "displayType": "directory",
-    "isVisible": true,
     "category": "DATANODE",
     "serviceName": "HDFS",
     "filename": "hadoop-env.xml",
     "index": 4
   },
   {
-    "id": "site property",
     "name": "dfs.datanode.data.dir",
-    "displayName": "DataNode directories",
     "defaultDirectory": "/hadoop/hdfs/data",
     "displayType": "directories",
     "category": "DATANODE",
@@ -102,18 +81,14 @@ var hdp2properties = [
     "index": 1
   },
   {
-    "id": "site property",
     "name": "dfs.datanode.data.dir.perm",
-    "displayName": "DataNode directories permission",
     "displayType": "int",
     "category": "DATANODE",
     "serviceName": "HDFS",
     "filename": "hdfs-site.xml"
   },
   {
-    "id": "site property",
     "name": "nfs.file.dump.dir",
-    "displayName": "NFSGateway dump directory",
     "defaultDirectory": "/tmp/.hdfs-nfs",
     "displayType": "directory",
     "category": "NFS_GATEWAY",
@@ -122,10 +97,7 @@ var hdp2properties = [
     "index": 1
   },
   {
-    "id": "site property",
     "name": "dfs.namenode.accesstime.precision",
-    "displayName": "Access time precision",
-    "recommendedValue": "0",
     "displayType": "long",
     "category": "General",
     "serviceName": "HDFS",
@@ -133,10 +105,7 @@ var hdp2properties = [
     "index": 2
   },
   {
-    "id": "site property",
     "name": "nfs.exports.allowed.hosts",
-    "displayName": "Allowed hosts",
-    "recommendedValue": "* rw",
     "displayType": "string",
     "category": "NFS_GATEWAY",
     "serviceName": "HDFS",
@@ -144,140 +113,234 @@ var hdp2properties = [
     "index": 3
   },
   {
-    "id": "site property",
     "name": "dfs.replication",
-    "displayName": "Block replication",
     "displayType": "int",
     "category": "General",
     "serviceName": "HDFS",
     "filename": "hdfs-site.xml"
   },
   {
-    "id": "site property",
     "name": "dfs.datanode.du.reserved",
-    "displayName": "Reserved space for HDFS",
     "displayType": "int",
-    "unit": "bytes",
     "category": "General",
     "serviceName": "HDFS",
     "filename": "hdfs-site.xml",
     "index": 2
   },
   {
-    "id": "site property",
     "name": "dfs.client.read.shortcircuit",
-    "displayName": "HDFS Short-circuit read",
     "displayType": "checkbox",
     "category": "Advanced hdfs-site",
     "serviceName": "HDFS",
     "filename": "hdfs-site.xml"
   },
   {
-    "id": "site property",
-    "name": "apache_artifacts_download_url",
-    "displayName": "apache_artifacts_download_url",
-    "description": "",
+    "name": "namenode_host",
+    "displayName": "NameNode hosts",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The hosts that has been assigned to run NameNode",
+    "displayType": "masterHosts",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "NAMENODE",
+    "index": 0
+  },
+  {
+    "name": "namenode_heapsize",
+    "displayType": "int",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "NAMENODE",
+    "index": 2
+  },
+  {
+    "name": "namenode_opt_newsize",
+    "displayType": "int",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "NAMENODE",
+    "index": 3
+  },
+  {
+    "name": "namenode_opt_permsize",
+    "displayType": "int",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "NAMENODE",
+    "index": 5
+  },
+  {
+    "name": "namenode_opt_maxpermsize",
+    "displayType": "int",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "NAMENODE",
+    "index": 6
+  },
+  {
+    "name": "namenode_opt_maxnewsize",
+    "displayType": "int",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "NAMENODE",
+    "index": 4
+  },
+  {
+    "name": "snamenode_host",
+    "displayName": "SNameNode host",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The host that has been assigned to run SecondaryNameNode",
+    "displayType": "masterHost",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "SECONDARY_NAMENODE",
+    "index": 0
+  },
+  {
+    "name": "datanode_hosts", //not in the schema. For UI purpose
+    "displayName": "DataNode hosts",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The hosts that have been assigned to run DataNode",
+    "displayType": "slaveHosts",
     "isRequired": false,
+    "isOverridable": false,
     "isRequiredByAgent": false,
-    "isVisible": false,
-    "category": "Advanced hdfs-site",
-    "filename": "hdfs-site.xml",
-    "serviceName": "HDFS"
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "DATANODE",
+    "index": 0
+  },
+  {
+    "name": "dtnode_heapsize",
+    "displayType": "int",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "DATANODE",
+    "index": 2
   },
   {
-    "id": "site property",
-    "name": "dfs.cluster.administrators",
-    "displayName": "dfs.cluster.administrators",
-    "description": "ACL for who all can view the default servlets in the HDFS",
+    "name": "nfsgateway_hosts", //not in the schema. For UI purpose
+    "displayName": "NFSGateway hosts",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The hosts that have been assigned to run NFSGateway",
+    "displayType": "slaveHosts",
+    "isRequired": false,
+    "isOverridable": false,
     "isVisible": true,
-    "category": "Advanced hdfs-site",
+    "isRequiredByAgent": false,
     "serviceName": "HDFS",
-    "filename": "hdfs-site.xml"
+    "filename": "hadoop-env.xml",
+    "category": "NFS_GATEWAY",
+    "index": 0
+  },
+  {
+    "name": "nfsgateway_heapsize",
+    "displayType": "int",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "NFS_GATEWAY",
+    "index": 1
+  },
+  {
+    "name": "hadoop_heapsize",
+    "displayType": "int",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "General",
+    "index": 1
+  },
+  {
+    "name": "hdfs_log_dir_prefix",
+    "displayType": "directory",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "Advanced hadoop-env"
+  },
+  {
+    "name": "hadoop_pid_dir_prefix",
+    "displayType": "directory",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "Advanced hadoop-env"
+  },
+  {
+    "name": "hadoop_root_logger",
+    "displayType": "string",
+    "serviceName": "HDFS",
+    "filename": "hadoop-env.xml",
+    "category": "Advanced hadoop-env"
   },
 
 /**********************************************YARN***************************************/
   {
-    "id": "site property",
     "name": "yarn.acl.enable",
-    "displayName": "yarn.acl.enable",
     "displayType": "checkbox",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "RESOURCEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.admin.acl",
-    "displayName": "yarn.admin.acl",
-    "isRequired": false,
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "RESOURCEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.log-aggregation-enable",
-    "displayName": "yarn.log-aggregation-enable",
     "displayType": "checkbox",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "RESOURCEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.resourcemanager.scheduler.class",
-    "displayName": "yarn.resourcemanager.scheduler.class",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "CapacityScheduler"
   },
   {
-    "id": "site property",
     "name": "yarn.scheduler.minimum-allocation-mb",
-    "displayName": "yarn.scheduler.minimum-allocation-mb",
     "displayType": "int",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "CapacityScheduler"
   },
   {
-    "id": "site property",
     "name": "yarn.scheduler.maximum-allocation-mb",
-    "displayName": "yarn.scheduler.maximum-allocation-mb",
     "displayType": "int",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "CapacityScheduler"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.resource.memory-mb",
-    "displayName": "yarn.nodemanager.resource.memory-mb",
     "displayType": "int",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "NODEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.vmem-pmem-ratio",
-    "displayName": "yarn.nodemanager.vmem-pmem-ratio",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "NODEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.linux-container-executor.group",
-    "displayName": "yarn.nodemanager.linux-container-executor.group",
     "serviceName": "YARN",
     "category": "NODEMANAGER",
     "filename": "yarn-site.xml"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.log-dirs",
-    "displayName": "yarn.nodemanager.log-dirs",
     "defaultDirectory": "/hadoop/yarn/log",
     "displayType": "directories",
     "serviceName": "YARN",
@@ -285,9 +348,7 @@ var hdp2properties = [
     "category": "NODEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.local-dirs",
-    "displayName": "yarn.nodemanager.local-dirs",
     "defaultDirectory": "/hadoop/yarn/local",
     "displayType": "directories",
     "serviceName": "YARN",
@@ -295,112 +356,204 @@ var hdp2properties = [
     "category": "NODEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.remote-app-log-dir",
-    "displayName": "yarn.nodemanager.remote-app-log-dir",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "NODEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.remote-app-log-dir-suffix",
-    "displayName": "yarn.nodemanager.remote-app-log-dir-suffix",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "NODEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.aux-services",
-    "displayName": "yarn.nodemanager.aux-services",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "NODEMANAGER"
   },
   {
-    "id": "site property",
     "name": "yarn.nodemanager.log.retain-second",
-    "displayName": "yarn.nodemanager.log.retain-second",
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "NODEMANAGER"
   },
   {
-    "id": "site property",
-    "name": "yarn.log.server.url",
-    "displayName": "yarn.log.server.url",
-    "category": "Advanced yarn-site",
+    "name": "yarn_heapsize",
+    "displayType": "int",
     "serviceName": "YARN",
-    "filename": "yarn-site.xml"
+    "filename": "yarn-env.xml",
+    "category": "General",
+    "index": 0
+  },
+  {
+    "name": "rm_host",
+    "displayName": "ResourceManager",
+    "description": "ResourceManager",
+    "recommendedValue": "",
+    "isOverridable": false,
+    "displayType": "masterHost",
+    "isRequiredByAgent": false,
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "RESOURCEMANAGER",
+    "index": 0
+  },
+  {
+    "name": "resourcemanager_heapsize",
+    "displayType": "int",
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "RESOURCEMANAGER",
+    "index": 1
+  },
+  {
+    "name": "nm_hosts",
+    "displayName": "NodeManager",
+    "description": "List of NodeManager Hosts.",
+    "recommendedValue": "",
+    "isOverridable": false,
+    "displayType": "slaveHosts",
+    "isRequiredByAgent": false,
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "NODEMANAGER",
+    "index": 0
+  },
+  {
+    "name": "nodemanager_heapsize",
+    "displayType": "int",
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "NODEMANAGER",
+    "index": 0
+  },
+  {
+    "name": "yarn_log_dir_prefix",
+    "displayType": "directory",
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "Advanced yarn-env"
+  },
+  {
+    "name": "yarn_pid_dir_prefix",
+    "displayType": "directory",
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "Advanced yarn-env"
+  },
+  {
+    "name": "min_user_id",
+    "displayType": "int",
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "Advanced yarn-env"
+  },
+  {
+    "name": "ats_host",
+    "displayName": "App Timeline Server",
+    "description": "Application Timeline Server Host",
+    "recommendedValue": "",
+    "isOverridable": false,
+    "displayType": "masterHost",
+    "isRequiredByAgent": false,
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "APP_TIMELINE_SERVER",
+    "index": 0
+  },
+  {
+    "name": "apptimelineserver_heapsize",
+    "displayType": "int",
+    "serviceName": "YARN",
+    "filename": "yarn-env.xml",
+    "category": "APP_TIMELINE_SERVER",
+    "index": 1
   },
 /**********************************************MAPREDUCE2***************************************/
   {
-    "id": "site property",
     "name": "mapreduce.map.memory.mb",
-    "displayName": "Default virtual memory for a job's map-task",
     "displayType": "int",
-    "unit": "MB",
     "category": "General",
     "serviceName": "MAPREDUCE2",
     "filename": "mapred-site.xml"
   },
   {
-    "id": "site property",
     "name": "mapreduce.reduce.memory.mb",
-    "displayName": "Default virtual memory for a job's reduce-task",
     "displayType": "int",
-    "unit": "MB",
     "category": "General",
     "serviceName": "MAPREDUCE2",
     "filename": "mapred-site.xml"
   },
   {
-    "id": "site property",
     "name": "mapreduce.task.io.sort.mb",
-    "displayName": "Map-side sort buffer memory",
     "displayType": "int",
-    "unit": "MB",
     "category": "General",
     "serviceName": "MAPREDUCE2",
     "filename": "mapred-site.xml"
   },
   {
-    "id": "site property",
     "name": "hadoop.security.auth_to_local",
-    "displayName": "hadoop.security.auth_to_local",
     "displayType": "multiLine",
     "serviceName": "HDFS",
     "filename": "core-site.xml",
     "category": "Advanced core-site"
   },
   {
-    "id": "site property",
     "name": "yarn.app.mapreduce.am.resource.mb",
-    "displayName": "yarn.app.mapreduce.am.resource.mb",
     "displayType": "int",
     "category": "Advanced mapred-site",
     "serviceName": "MAPREDUCE2",
     "filename": "mapred-site.xml"
   },
-
-/**********************************************oozie-site***************************************/
   {
-    "id": "site property",
-    "name": "oozie.db.schema.name",
-    "displayName": "Database Name",
+    "name": "hs_host",
+    "displayName": "History Server",
+    "description": "History Server",
+    "recommendedValue": "",
     "isOverridable": false,
-    "displayType": "host",
-    "category": "OOZIE_SERVER",
-    "serviceName": "OOZIE",
-    "filename": "oozie-site.xml",
-    "index": 4
+    "displayType": "masterHost",
+    "isRequiredByAgent": false,
+    "isVisible": true,
+    "serviceName": "MAPREDUCE2",
+    "filename": "mapred-env.xml",
+    "category": "HISTORYSERVER",
+    "index": 0
   },
   {
-    "id": "site property",
-    "name": "oozie.service.JPAService.jdbc.username",
-    "displayName": "Database Username",
-    "isOverridable": false,
+    "name": "jobhistory_heapsize",
+    "displayType": "int",
+    "serviceName": "MAPREDUCE2",
+    "filename": "mapred-env.xml",
+    "category": "HISTORYSERVER",
+    "index": 1
+  },
+  {
+    "name": "mapred_log_dir_prefix",
+    "displayType": "directory",
+    "serviceName": "MAPREDUCE2",
+    "filename": "mapred-env.xml",
+    "category": "Advanced mapred-env"
+  },
+  {
+    "name": "mapred_pid_dir_prefix",
+    "displayType": "directory",
+    "serviceName": "MAPREDUCE2",
+    "filename": "mapred-env.xml",
+    "category": "Advanced mapred-env"
+  },
+/**********************************************oozie-site***************************************/
+  {
+    "name": "oozie.db.schema.name",
+    "displayType": "host",
+    "category": "OOZIE_SERVER",
+    "serviceName": "OOZIE",
+    "filename": "oozie-site.xml",
+    "index": 4
+  },
+  {
+    "name": "oozie.service.JPAService.jdbc.username",
     "displayType": "user",
     "category": "OOZIE_SERVER",
     "serviceName": "OOZIE",
@@ -408,268 +561,431 @@ var hdp2properties = [
     "index": 5
   },
   {
-    "id": "site property",
     "name": "oozie.service.JPAService.jdbc.password",
-    "displayName": "Database Password",
-    "isOverridable": false,
-    "displayType": "password",
     "category": "OOZIE_SERVER",
     "serviceName": "OOZIE",
     "filename": "oozie-site.xml",
     "index": 6
   },
   {
-    "id": "site property",
     "name": "oozie.service.JPAService.jdbc.driver", // the default value of this property is overriden in code
-    "displayName": "JDBC Driver Class",
-    "isOverridable": false,
     "category": "OOZIE_SERVER",
     "serviceName": "OOZIE",
     "filename": "oozie-site.xml",
     "index": 7
   },
   {
-    "id": "site property",
     "name": "oozie.service.JPAService.jdbc.url",
-    "displayName": "Database URL",
-    "isOverridable": false,
     "displayType": "advanced",
     "category": "OOZIE_SERVER",
     "serviceName": "OOZIE",
     "filename": "oozie-site.xml",
     "index": 8
   },
+  {
+    "name": "oozieserver_host",
+    "displayName": "Oozie Server host",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The hosts that have been assigned to run Oozie Server",
+    "displayType": "masterHosts",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "serviceName": "OOZIE",
+    "filename": "oozie-env.xml",
+    "category": "OOZIE_SERVER",
+    "index": 0
+  },
+  {
+    "name": "oozie_database",
+    "options": [
+      {
+        displayName: 'New Derby Database',
+        hidden: false
+      },
+      {
+        displayName: 'Existing MySQL Database',
+        hidden: false
+      },
+      {
+        displayName: 'Existing PostgreSQL Database',
+        hidden: false
+      },
+      {
+        displayName: 'Existing Oracle Database',
+        hidden: false
+      },
+      {
+        displayName: 'Existing SQLA Database',
+        hidden: !App.get('isHadoop23Stack')
+      }
+    ],
+    "displayType": "radio button",
+    "radioName": "oozie-database",
+    "serviceName": "OOZIE",
+    "filename": "oozie-env.xml",
+    "category": "OOZIE_SERVER",
+    "index": 2
+  },
+  {
+    "name": "oozie_data_dir",
+    "defaultDirectory": "/hadoop/oozie/data",
+    "displayType": "directory",
+    "serviceName": "OOZIE",
+    "filename": "oozie-env.xml",
+    "category": "OOZIE_SERVER",
+    "index": 9
+  },
+  {
+    "name": "oozie_hostname",
+    "displayType": "host",
+    "serviceName": "OOZIE",
+    "filename": "oozie-env.xml",
+    "category": "OOZIE_SERVER",
+    "index": 3
+  },
+  {
+    "name": "oozie_log_dir",
+    "displayType": "directory",
+    "serviceName": "OOZIE",
+    "filename": "oozie-env.xml",
+    "category": "Advanced oozie-env"
+  },
+  {
+    "name": "oozie_pid_dir",
+    "displayType": "directory",
+    "serviceName": "OOZIE",
+    "filename": "oozie-env.xml",
+    "category": "Advanced oozie-env"
+  },
+  {
+    "name": "oozie_admin_port",
+    "displayType": "int",
+    "serviceName": "OOZIE",
+    "filename": "oozie-env.xml",
+    "category": "Advanced oozie-env"
+  },
 
-/**********************************************hive-site***************************************/
+/**********************************************HIVE***************************************/
   {
-    "id": "site property",
     "name": "javax.jdo.option.ConnectionDriverName",  // the default value is overwritten in code
-    "displayName": "JDBC Driver Class",
-    "isOverridable": false,
     "category": "HIVE_METASTORE",
     "serviceName": "HIVE",
     "filename": "hive-site.xml",
     "index": 7
   },
   {
-    "id": "site property",
     "name": "hive.metastore.heapsize",  // the default value is overwritten in code
-    "displayName": "Hive Metastore heapsize",
-    "isOverridable": false,
     "category": "HIVE_METASTORE",
     "serviceName": "HIVE",
     "filename": "hive-env.xml",
     "displayType": "int",
-    "unit": "MB",
     "index": 11
   },
   {
-    "id": "site property",
     "name": "hive.heapsize",
-    "displayName": "HiveServer2 heap size",
     "displayType": "int",
-    "unit": "MB",
-    "isOverridable": false,
     "serviceName": "HIVE",
     "filename": "hive-site.xml",
     "category": "HIVE_SERVER2",
     "index": 9
   },
   {
-    "id": "site property",
     "name": "hive.client.heapsize",
-    "displayName": "Hive Client heapsize",
-    "isOverridable": false,
     "category": "HIVE_CLIENT",
     "serviceName": "HIVE",
     "filename": "hive-env.xml",
     "displayType": "int",
-    "unit": "MB",
     "index": 10
   },
   {
-    "id": "site property",
     "name": "javax.jdo.option.ConnectionUserName",
-    "displayName": "Database Username",
     "displayType": "user",
-    "isOverridable": false,
     "category": "HIVE_METASTORE",
     "serviceName": "HIVE",
     "filename": "hive-site.xml",
     "index": 5
   },
   {
-    "id": "site property",
     "name": "javax.jdo.option.ConnectionPassword",
-    "displayName": "Database Password",
     "displayType": "password",
-    "isOverridable": false,
     "category": "HIVE_METASTORE",
     "serviceName": "HIVE",
     "filename": "hive-site.xml",
     "index": 6
   },
   {
-    "id": "site property",
     "name": "javax.jdo.option.ConnectionURL",
-    "displayName": "Database URL",
     "displayType": "advanced",
-    "isOverridable": false,
     "category": "HIVE_METASTORE",
     "serviceName": "HIVE",
     "filename": "hive-site.xml",
     "index": 8
   },
   {
-    "id": "site property",
     "name": "ambari.hive.db.schema.name",
-    "displayName": "Database Name",
     "displayType": "host",
-    "isOverridable": false,
     "serviceName": "HIVE",
     "filename": "hive-site.xml",
     "category": "HIVE_METASTORE",
     "index": 4
   },
   {
-    "id": "site property",
     "name": "hive.server2.tez.default.queues",
-    "displayName": "hive.server2.tez.default.queues",
-    "isRequired": false,
     "serviceName": "HIVE",
     "filename": "hive-site.xml",
     "category": "Advanced hive-site"
   },
   {
-    "id": "site property",
     "name": "hive.server2.thrift.port",
-    "displayName": "HiveServer2 Port",
-    "description": "TCP port number to listen on, default 10000.",
-    "recommendedValue": "10000",
     "displayType": "int",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "category": "Advanced hive-site",
     "serviceName": "HIVE",
     "filename": "hive-site.xml"
   },
   {
-    "id": "site property",
     "name": "hive.server2.support.dynamic.service.discovery",
-    "displayName": "hive.server2.support.dynamic.service.discovery",
-    "recommendedValue": true,
     "displayType": "checkbox",
     "category": "Advanced hive-site",
     "serviceName": "HIVE",
     "filename": "hive-site.xml"
   },
   {
-    "id": "site property",
     "name": "hive.security.authorization.enabled",
-    "displayName": "hive.security.authorization.enabled",
-    "recommendedValue": false,
     "displayType": "checkbox",
     "category": "Advanced hive-site",
     "serviceName": "HIVE",
     "filename": "hive-site.xml"
   },
-/**********************************************tez-site*****************************************/
   {
-    "id": "site property",
-    "name": "tez.am.resource.memory.mb",
-    "displayName": "tez.am.resource.memory.mb",
-    "displayType": "int",
-    "category": "General",
-    "serviceName": "TEZ",
-    "filename": "tez-site.xml"
+    "name": "hivemetastore_host",
+    "displayName": "Hive Metastore hosts",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The hosts that have been assigned to run Hive Metastore",
+    "displayType": "masterHosts",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "HIVE_METASTORE",
+    "index": 0
   },
   {
-    "id": "site property",
-    "name": "tez.am.java.opts",
-    "displayName": "tez.am.java.opts",
-    "category": "General",
-    "serviceName": "TEZ",
-    "filename": "tez-site.xml"
+    "name": "hive_master_hosts",
+    "value": "",
+    "recommendedValue": "",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "isVisible": false,
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml"
   },
   {
-    "id": "site property",
-    "name": "tez.am.grouping.split-waves",
-    "displayName": "tez.am.grouping.split-waves",
-    "displayType": "float",
-    "category": "General",
-    "serviceName": "TEZ",
-    "filename": "tez-site.xml"
+    "name": "hive_ambari_database",
+    "displayName": "Database Type",
+    "value": "",
+    "recommendedValue": "MySQL",
+    "description": "MySQL will be installed by Ambari",
+    "displayType": "masterHost",
+    "isOverridable": false,
+    "isReconfigurable": false,
+    "isRequiredByAgent": false,
+    "isVisible": false,
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "HIVE_METASTORE",
+    "index": 1
   },
   {
-    "id": "site property",
-    "name": "tez.am.grouping.min-size",
-    "displayName": "tez.am.grouping.min-size",
-    "displayType": "int",
-    "category": "General",
-    "serviceName": "TEZ",
-    "filename": "tez-site.xml"
+    "name": "hive_database",
+    "options": [
+      {
+        displayName: 'New MySQL Database',
+        hidden: false
+      },
+      {
+        displayName: 'Existing MySQL Database',
+        hidden: false
+      },
+      {
+        displayName: 'Existing PostgreSQL Database',
+        hidden: false
+      },
+      {
+        displayName: 'Existing Oracle Database',
+        hidden: false
+      },
+      {
+        displayName: 'Existing SQLA Database',
+        hidden: !App.get('isHadoop23Stack')
+      }
+    ],
+    "displayType": "radio button",
+    "radioName": "hive-database",
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "HIVE_METASTORE",
+    "index": 2
   },
   {
-    "id": "site property",
-    "name": "tez.am.grouping.max-size",
-    "displayName": "tez.am.grouping.max-size",
-    "displayType": "int",
-    "category": "General",
-    "serviceName": "TEZ",
-    "filename": "tez-site.xml"
+    "name": "hive_hostname",
+    "displayName": "Database Host",
+    "description": "Specify the host on which the database is hosted",
+    "recommendedValue": "",
+    "isReconfigurable": true,
+    "displayType": "host",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "isVisible": true,
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "HIVE_METASTORE",
+    "index": 3
   },
   {
-    "id": "site property",
-    "name": "tez.am.log.level",
-    "displayName": "tez.am.log.level",
-    "displayType": "string",
-    "category": "General",
-    "serviceName": "TEZ",
-    "filename": "tez-site.xml"
+    "name": "hive_ambari_host",
+    "value": "",
+    "recommendedValue": "",
+    "displayName": "Database Host",
+    "description": "Host on which the database will be created by Ambari",
+    "isReconfigurable": false,
+    "displayType": "masterHost",
+    "isOverridable": false,
+    "isVisible": false,
+    "isRequiredByAgent": false,
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "HIVE_METASTORE",
+    "index": 3
   },
   {
-    "id": "site property",
-    "name": "tez.runtime.intermediate-input.compress.codec",
-    "displayName": "tez.runtime.intermediate-input.compress.codec",
-    "displayType": "string",
-    "category": "General",
+    "name": "hive_log_dir",
+    "displayType": "directory",
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "Advanced hive-env"
+  },
+  {
+    "name": "hive_pid_dir",
+    "displayType": "directory",
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "Advanced hive-env"
+  },
+  {
+    "name": "webhcatserver_host",
+    "displayName": "WebHCat Server host",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The host that has been assigned to run WebHCat Server",
+    "displayType": "masterHost",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "serviceName": "HIVE",
+    "filename": "webhcat-env.xml",
+    "category": "WEBHCAT_SERVER"
+  },
+  {
+    "name": "hcat_log_dir",
+    "displayType": "directory",
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "Advanced webhcat-env"
+  },
+  {
+    "name": "hcat_pid_dir",
+    "displayType": "directory",
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "Advanced webhcat-env"
+  },
+  {
+    "name": "hive_database_name",
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "Advanced hive-env"
+  },
+  {
+    "name": "hive_database_type",
+    "serviceName": "HIVE",
+    "filename": "hive-env.xml",
+    "category": "HIVE_METASTORE"
+  },
+/**********************************************TEZ*****************************************/
+  {
+    "name": "tez.am.resource.memory.mb",
+    "displayType": "int",
+    "category": "General",
+    "serviceName": "TEZ",
+    "filename": "tez-site.xml"
+  },
+  {
+    "name": "tez.am.java.opts",
+    "category": "General",
+    "serviceName": "TEZ",
+    "filename": "tez-site.xml"
+  },
+  {
+    "name": "tez.am.grouping.split-waves",
+    "displayType": "float",
+    "category": "General",
+    "serviceName": "TEZ",
+    "filename": "tez-site.xml"
+  },
+  {
+    "name": "tez.am.grouping.min-size",
+    "displayType": "int",
+    "category": "General",
+    "serviceName": "TEZ",
+    "filename": "tez-site.xml"
+  },
+  {
+    "name": "tez.am.grouping.max-size",
+    "displayType": "int",
+    "category": "General",
+    "serviceName": "TEZ",
+    "filename": "tez-site.xml"
+  },
+  {
+    "name": "tez.am.log.level",
+    "displayType": "string",
+    "category": "General",
+    "serviceName": "TEZ",
+    "filename": "tez-site.xml"
+  },
+  {
+    "name": "tez.runtime.intermediate-input.compress.codec",
+    "displayType": "string",
+    "category": "General",
     "serviceName": "TEZ",
     "filename": "tez-site.xml"
   },
   {
-    "id": "site property",
     "name": "tez.runtime.intermediate-input.is-compressed",
-    "displayName": "tez.runtime.intermediate-input.is-compressed",
     "displayType": "checkbox",
     "category": "General",
     "serviceName": "TEZ",
     "filename": "tez-site.xml"
   },
   {
-    "id": "site property",
     "name": "tez.runtime.intermediate-output.compress.codec",
-    "displayName": "tez.runtime.intermediate-output.compress.codec",
     "displayType": "string",
     "category": "General",
     "serviceName": "TEZ",
     "filename": "tez-site.xml"
   },
   {
-    "id": "site property",
     "name": "tez.runtime.intermediate-output.should-compress",
-    "displayName": "tez.runtime.intermediate-output.should-compress",
     "displayType": "checkbox",
     "category": "General",
     "serviceName": "TEZ",
     "filename": "tez-site.xml"
   },
 
-/**********************************************hbase-site***************************************/
+/**********************************************HBASE***************************************/
   {
-    "id": "site property",
     "name": "hbase.tmp.dir",
-    "displayName": "HBase tmp directory",
     "defaultDirectory": "/hadoop/hbase",
     "displayType": "directory",
     "category": "Advanced hbase-site",
@@ -677,48 +993,35 @@ var hdp2properties = [
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.master.port",
-    "displayName": "HBase Master Port",
-    "isReconfigurable": true,
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "category": "Advanced hbase-site"
   },
   {
-    "id": "site property",
     "name": "hbase.regionserver.global.memstore.upperLimit",
-    "displayName": "hbase.regionserver.global.memstore.upperLimit",
     "displayType": "float",
     "category": "Advanced hbase-site",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.regionserver.global.memstore.lowerLimit",
-    "displayName": "hbase.regionserver.global.memstore.lowerLimit",
     "displayType": "float",
     "category": "Advanced hbase-site",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.hstore.blockingStoreFiles",
-    "displayName": "hstore blocking storefiles",
     "displayType": "int",
     "category": "Advanced hbase-site",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.hstore.compactionThreshold",
-    "displayName": "HBase HStore compaction threshold",
     "displayType": "int",
     "category": "General",
     "serviceName": "HBASE",
@@ -726,9 +1029,7 @@ var hdp2properties = [
     "index": 0
   },
   {
-    "id": "site property",
     "name": "hfile.block.cache.size",
-    "displayName": "HFile block cache size ",
     "displayType": "float",
     "category": "General",
     "serviceName": "HBASE",
@@ -736,20 +1037,15 @@ var hdp2properties = [
     "index": 1
   },
   {
-    "id": "site property",
     "name": "hbase.hregion.max.filesize",
-    "displayName": "Maximum HStoreFile Size",
     "displayType": "int",
-    "unit": "bytes",
     "category": "General",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "index": 2
   },
   {
-    "id": "site property",
     "name": "hbase.regionserver.handler.count",
-    "displayName": "RegionServer Handler",
     "displayType": "int",
     "category": "HBASE_REGIONSERVER",
     "serviceName": "HBASE",
@@ -757,20 +1053,15 @@ var hdp2properties = [
     "index": 2
   },
   {
-    "id": "site property",
     "name": "hbase.hregion.majorcompaction",
-    "displayName": "HBase Region Major Compaction Interval",
     "displayType": "int",
-    "unit": "ms",
     "category": "HBASE_REGIONSERVER",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "index": 3
   },
   {
-    "id": "site property",
     "name": "hbase.hregion.memstore.block.multiplier",
-    "displayName": "HBase Region Block Multiplier",
     "displayType": "int",
     "category": "HBASE_REGIONSERVER",
     "serviceName": "HBASE",
@@ -778,109 +1069,155 @@ var hdp2properties = [
     "index": 4
   },
   {
-    "id": "site property",
     "name": "hbase.hregion.memstore.mslab.enabled",
-    "displayName": "hbase.hregion.memstore.mslab.enabled",
     "displayType": "checkbox",
     "category": "Advanced hbase-site",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.hregion.memstore.flush.size",
-    "displayName": "HBase Region Memstore Flush Size",
     "displayType": "int",
-    "unit": "bytes",
     "category": "HBASE_REGIONSERVER",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "index": 5
   },
   {
-    "id": "site property",
     "name": "hbase.client.scanner.caching",
-    "displayName": "HBase Client Scanner Caching",
     "displayType": "int",
-    "unit": "rows",
     "category": "General",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "index": 3
   },
   {
-    "id": "site property",
     "name": "zookeeper.session.timeout",
-    "displayName": "Zookeeper timeout for HBase Session",
     "displayType": "int",
-    "unit": "ms",
     "category": "General",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "index": 4
   },
   {
-    "id": "site property",
     "name": "hbase.client.keyvalue.maxsize",
-    "displayName": "HBase Client Maximum key-value Size",
     "displayType": "int",
-    "unit": "bytes",
     "category": "General",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "index": 5
   },
   {
-    "id": "site property",
     "name": "hbase.coprocessor.region.classes",
-    "displayName": "hbase.coprocessor.region.classes",
     "category": "Advanced hbase-site",
-    "isRequired": false,
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.coprocessor.master.classes",
-    "displayName": "hbase.coprocessor.master.classes",
     "category": "Advanced hbase-site",
-    "isRequired": false,
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.coprocessor.regionserver.classes",
-    "displayName": "hbase.coprocessor.regionserver.classes",
     "category": "Advanced hbase-site",
-    "isRequired": false,
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.zookeeper.quorum",
-    "displayName": "hbase.zookeeper.quorum",
     "displayType": "multiLine",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "category": "Advanced hbase-site"
   },
+  {
+    "name": "hbasemaster_host",
+    "displayName": "HBase Master hosts",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The host that has been assigned to run HBase Master",
+    "displayType": "masterHosts",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "isVisible": true,
+    "serviceName": "HBASE",
+    "filename": "hbase-env.xml",
+    "category": "HBASE_MASTER",
+    "index": 0
+  },
+  {
+    "name": "hbase_master_heapsize",
+    "displayType": "int",
+    "serviceName": "HBASE",
+    "filename": "hbase-env.xml",
+    "category": "HBASE_MASTER",
+    "index": 1
+  },
+  {
+    "name": "regionserver_hosts",
+    "displayName": "RegionServer hosts",
+    "value": "",
+    "recommendedValue": "",
+    "description": "The hosts that have been assigned to run RegionServer",
+    "displayType": "slaveHosts",
+    "isOverridable": false,
+    "isRequiredByAgent": false,
+    "serviceName": "HBASE",
+    "filename": "hbase-env.xml",
+    "category": "HBASE_REGIONSERVER",
+    "index": 0
+  },
+  {
+    "name": "hbase_regionserver_heapsize",
+    "displayType": "int",
+    "serviceName": "HBASE",
+    "filename": "hbase-env.xml",
+    "category": "HBASE_REGIONSERVER",
+    "index": 1
+  },
+  {
+    "name": "hbase_regionserver_xmn_max",
+    "displayType": "int",
+    "serviceName": "HBASE",
+    "filename": "hbase-env.xml",
+    "category": "HBASE_REGIONSERVER",
+    "index": 6
+  },
+  {
+    "name": "hbase_regionserver_xmn_ratio",
+    "displayType": "float",
+    "serviceName": "HBASE",
+    "filename": "hbase-env.xml",
+    "category": "HBASE_REGIONSERVER",
+    "index": 7
+  },
+  {
+    "name": "hbase_log_dir",
+    "displayType": "directory",
+    "serviceName": "HBASE",
+    "filename": "hbase-env.xml",
+    "category": "Advanced hbase-env"
+  },
+  {
+    "name": "hbase_pid_dir",
+    "displayType": "directory",
+    "serviceName": "HBASE",
+    "filename": "hbase-env.xml",
+    "category": "Advanced hbase-env"
+  },
 
 /**********************************************storm-site***************************************/
   {
-    "id": "site property",
     "name": "storm.zookeeper.root",
-    "displayName": "storm.zookeeper.root",
     "displayType": "directory",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.local.dir",
-    "displayName": "storm.local.dir",
     "defaultDirectory": "/hadoop/storm",
     "displayType": "directory",
     "serviceName": "STORM",
@@ -888,525 +1225,362 @@ var hdp2properties = [
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.zookeeper.servers",
-    "displayName": "storm.zookeeper.servers",
     "displayType": "masterHosts",
-    "isOverridable": false,
-    "isReconfigurable": false,
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.zookeeper.port",
-    "displayName": "storm.zookeeper.port",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.zookeeper.session.timeout",
-    "displayName": "storm.zookeeper.session.timeout",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.zookeeper.connection.timeout",
-    "displayName": "storm.zookeeper.connection.timeout",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.zookeeper.retry.times",
-    "displayName": "storm.zookeeper.retry.times",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.zookeeper.retry.interval",
-    "displayName": "storm.zookeeper.retry.interval",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "General",
-    "unit": "ms"
+    "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.zookeeper.retry.intervalceiling.millis",
-    "displayName": "storm.zookeeper.retry.intervalceiling.millis",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "General",
-    "unit": "ms"
+    "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.cluster.mode",
-    "displayName": "storm.cluster.mode",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.local.mode.zmq",
-    "displayName": "storm.local.mode.zmq",
     "displayType": "checkbox",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.thrift.transport",
-    "displayName": "storm.thrift.transport",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "storm.messaging.transport",
-    "displayName": "storm.messaging.transport",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "General",
-    "displayName": "storm.messaging.netty.buffer_size",
     "name": "storm.messaging.netty.buffer_size",
     "displayType": "int",
-    "unit": "bytes",
+    "category": "General",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
     "serviceName": "STORM",
     "category": "General",
-    "displayName": "storm.messaging.netty.max_retries",
     "name": "storm.messaging.netty.max_retries",
     "displayType": "int",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "General",
-    "displayName": "storm.messaging.netty.max_wait_ms",
     "name": "storm.messaging.netty.max_wait_ms",
     "displayType": "int",
-    "unit": "ms",
+    "category": "General",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "General",
-    "displayName": "storm.messaging.netty.min_wait_ms",
     "name": "storm.messaging.netty.min_wait_ms",
     "displayType": "int",
-    "unit": "ms",
+    "category": "General",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "General",
-    "displayName": "storm.messaging.netty.server_worker_threads",
     "name": "storm.messaging.netty.server_worker_threads",
     "displayType": "int",
+    "category": "General",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "General",
-    "displayName": "storm.messaging.netty.client_worker_threads",
     "name": "storm.messaging.netty.client_worker_threads",
     "displayType": "int",
+    "category": "General",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
     "name": "nimbus.host",
-    "displayName": "nimbus.host",
     "displayType": "masterHost",
-    "isOverridable": false,
-    "isReconfigurable": false,
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.thrift.port",
-    "displayName": "nimbus.thrift.port",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.thrift.max_buffer_size",
-    "displayName": "nimbus.thrift.max_buffer_size",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "NIMBUS",
-    "unit": "bytes"
+    "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.childopts",
-    "displayName": "nimbus.childopts",
     "displayType": "multiLine",
-    "isOverridable": false,
     "serviceName": "STORM",
     "category": "NIMBUS",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
     "name": "nimbus.task.timeout.secs",
-    "displayName": "nimbus.task.timeout.secs",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "NIMBUS",
-    "unit": "seconds"
+    "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.supervisor.timeout.secs",
-    "displayName": "nimbus.supervisor.timeout.secs",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "NIMBUS",
-    "unit": "seconds"
+    "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.monitor.freq.secs",
-    "displayName": "nimbus.monitor.freq.secs",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "NIMBUS",
-    "unit": "seconds"
+    "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.cleanup.inbox.freq.secs",
-    "displayName": "nimbus.cleanup.inbox.freq.secs",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "NIMBUS",
-    "unit": "seconds"
+    "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.inbox.jar.expiration.secs",
-    "displayName": "nimbus.inbox.jar.expiration.secs",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "NIMBUS",
-    "unit": "seconds"
+    "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.task.launch.secs",
-    "displayName": "nimbus.task.launch.secs",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "NIMBUS",
-    "unit": "seconds"
+    "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.reassign",
-    "displayName": "nimbus.reassign",
     "displayType": "checkbox",
-    "isReconfigurable": true,
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.file.copy.expiration.secs",
-    "displayName": "nimbus.file.copy.expiration.secs",
     "displayType": "int",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
-    "category": "NIMBUS",
-    "unit": "seconds"
+    "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "nimbus.topology.validator",
-    "displayName": "nimbus.topology.validator",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "supervisor.slots.ports",
-    "displayName": "supervisor.slots.ports",
     "displayType": "string",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "SUPERVISOR"
   },
   {
-    "id": "site property",
-    "isOverridable": false,
-    "serviceName": "STORM",
-    "category": "SUPERVISOR",
-    "displayName": "supervisor.childopts",
     "name": "supervisor.childopts",
     "displayType": "multiLine",
+    "category": "SUPERVISOR",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "SUPERVISOR",
-    "displayName": "supervisor.worker.start.timeout.secs",
     "name": "supervisor.worker.start.timeout.secs",
     "displayType": "int",
-    "unit": "seconds",
+    "category": "SUPERVISOR",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "SUPERVISOR",
-    "displayName": "supervisor.worker.timeout.secs",
     "name": "supervisor.worker.timeout.secs",
     "displayType": "int",
-    "unit": "seconds",
+    "category": "SUPERVISOR",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "SUPERVISOR",
-    "displayName": "supervisor.monitor.frequency.secs",
     "name": "supervisor.monitor.frequency.secs",
     "displayType": "int",
-    "unit": "seconds",
+    "category": "SUPERVISOR",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "SUPERVISOR",
-    "displayName": "supervisor.heartbeat.frequency.secs",
     "name": "supervisor.heartbeat.frequency.secs",
     "displayType": "int",
-    "unit": "seconds",
+    "category": "SUPERVISOR",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "DRPC_SERVER",
-    "displayName": "drpc.port",
     "name": "drpc.port",
     "displayType": "int",
+    "category": "DRPC_SERVER",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "DRPC_SERVER",
-    "displayName": "drpc.worker.threads",
     "name": "drpc.worker.threads",
     "displayType": "int",
+    "category": "DRPC_SERVER",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "DRPC_SERVER",
-    "displayName": "drpc.queue.size",
     "name": "drpc.queue.size",
     "displayType": "int",
+    "category": "DRPC_SERVER",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "DRPC_SERVER",
-    "displayName": "drpc.invocations.port",
     "name": "drpc.invocations.port",
     "displayType": "int",
+    "category": "DRPC_SERVER",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "DRPC_SERVER",
-    "displayName": "drpc.request.timeout.secs",
     "name": "drpc.request.timeout.secs",
     "displayType": "int",
-    "unit": "seconds",
+    "category": "DRPC_SERVER",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "DRPC_SERVER",
-    "displayName": "drpc.childopts",
     "name": "drpc.childopts",
     "displayType": "string",
+    "category": "DRPC_SERVER",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "STORM_UI_SERVER",
-    "displayName": "ui.port",
     "name": "ui.port",
     "displayType": "int",
+    "category": "STORM_UI_SERVER",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
   {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "STORM_UI_SERVER",
-    "displayName": "ui.childopts",
     "name": "ui.childopts",
     "displayType": "string",
+    "category": "STORM_UI_SERVER",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
-  //@Todo: uncomment following properties when logviewer is treated as different section on storm service page
-  /*
-   {
-   "id": "site property",
-   "serviceName": "STORM",
-   "category": "LogviewerServer",
-   "displayName": "logviewer.port",
-   "name": "logviewer.port",
-   "displayType": "int"
-   },
-   {
-   "id": "site property",
-   "serviceName": "STORM",
-   "category": "LogviewerServer",
-   "displayName": "logviewer.childopts",
-   "name": "logviewer.childopts",
-   "displayType": "string"
-   },
-   {
-   "id": "site property",
-   "serviceName": "STORM",
-   "category": "LogviewerServer",
-   "displayName": "logviewer.appender.name",
-   "name": "logviewer.appender.name",
-   "displayType": "string"
-   },
-   */
-  {
-    "id": "site property",
-    "serviceName": "STORM",
-    "category": "Advanced storm-site",
-    "displayName": "worker.childopts",
+  {
     "name": "worker.childopts",
     "displayType": "multiLine",
+    "category": "Advanced storm-site",
+    "serviceName": "STORM",
     "filename": "storm-site.xml"
   },
 /*********************************************oozie-site for Falcon*****************************/
   {
-    "id": "site property",
-    "isReconfigurable": true,
-    "serviceName": "FALCON",
-    "category": "Falcon - Oozie integration",
-    "displayName": "oozie.service.ELService.ext.functions.coord-job-submit-instances",
     "name": "oozie.service.ELService.ext.functions.coord-job-submit-instances",
     "displayType": "custom",
+    "category": "Falcon - Oozie integration",
+    "serviceName": "FALCON",
     "filename": "oozie-site.xml"
   },
   {
-    "id": "site property",
-    "isReconfigurable": true,
     "serviceName": "FALCON",
     "category": "Falcon - Oozie integration",
-    "displayName": "oozie.service.ELService.ext.functions.coord-action-create-inst",
     "name": "oozie.service.ELService.ext.functions.coord-action-create-inst",
     "displayType": "custom",
     "filename": "oozie-site.xml"
   },
   {
-    "id": "site property",
-    "isReconfigurable": true,
     "serviceName": "FALCON",
     "category": "Falcon - Oozie integration",
-    "displayName": "oozie.service.ELService.ext.functions.coord-action-create",
     "name": "oozie.service.ELService.ext.functions.coord-action-create",
     "displayType": "custom",
     "filename": "oozie-site.xml"
   },
   {
-    "id": "site property",
-    "isReconfigurable": true,
     "serviceName": "FALCON",
     "category": "Falcon - Oozie integration",
-    "displayName": "oozie.service.ELService.ext.functions.coord-job-submit-data",
     "name": "oozie.service.ELService.ext.functions.coord-job-submit-data",
     "displayType": "custom",
     "filename": "oozie-site.xml"
   },
   {
-    "id": "site property",
-    "isReconfigurable": true,
     "serviceName": "FALCON",
     "category": "Falcon - Oozie integration",
-    "displayName": "oozie.service.ELService.ext.functions.coord-action-start",
     "name": "oozie.service.ELService.ext.functions.coord-action-start",
     "displayType": "custom",
     "filename": "oozie-site.xml"
   },
   {
-    "id": "site property",
-    "isReconfigurable": true,
     "serviceName": "FALCON",
     "category": "Falcon - Oozie integration",
-    "displayName": "oozie.service.ELService.ext.functions.coord-sla-submit",
     "name": "oozie.service.ELService.ext.functions.coord-sla-submit",
     "displayType": "custom",
     "filename": "oozie-site.xml"
   },
   {
-    "id": "site property",
-    "isReconfigurable": true,
     "serviceName": "FALCON",
     "category": "Falcon - Oozie integration",
-    "displayName": "oozie.service.ELService.ext.functions.coord-sla-create",
     "name": "oozie.service.ELService.ext.functions.coord-sla-create",
     "displayType": "custom",
     "filename": "oozie-site.xml"
@@ -1414,42 +1588,32 @@ var hdp2properties = [
 
   // Runtime properties
   {
-    "id": "site property",
     "name": "*.domain",
-    "displayName": "*.domain",
     "category": "FalconRuntimeSite",
     "serviceName": "FALCON",
     "filename": "falcon-runtime.properties.xml"
 
   },
   {
-    "id": "site property",
     "name": "*.log.cleanup.frequency.minutes.retention",
-    "displayName": "*.log.cleanup.frequency.minutes.retention",
     "category": "FalconRuntimeSite",
     "serviceName": "FALCON",
     "filename": "falcon-runtime.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.log.cleanup.frequency.hours.retention",
-    "displayName": "*.log.cleanup.frequency.hours.retention",
     "category": "FalconRuntimeSite",
     "serviceName": "FALCON",
     "filename": "falcon-runtime.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.log.cleanup.frequency.days.retention",
-    "displayName": "*.log.cleanup.frequency.days.retention",
     "category": "FalconRuntimeSite",
     "serviceName": "FALCON",
     "filename": "falcon-runtime.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.log.cleanup.frequency.months.retention",
-    "displayName": "*.log.cleanup.frequency.months.retention",
     "category": "FalconRuntimeSite",
     "serviceName": "FALCON",
     "filename": "falcon-runtime.properties.xml"
@@ -1458,233 +1622,176 @@ var hdp2properties = [
   //  Startup properties
 
   {
-    "id": "site property",
     "name": "*.domain",
-    "displayName": "*.domain",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.workflow.engine.impl",
-    "displayName": "*.workflow.engine.impl",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.oozie.process.workflow.builder",
-    "displayName": "*.oozie.process.workflow.builder",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.oozie.feed.workflow.builder",
-    "displayName": "*.oozie.feed.workflow.builder",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.SchedulableEntityManager.impl",
-    "displayName": "*.SchedulableEntityManager.impl",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.ConfigSyncService.impl",
-    "displayName": "*.ConfigSyncService.impl",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.ProcessInstanceManager.impl",
-    "displayName": "*.ProcessInstanceManager.impl",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.catalog.service.impl",
-    "displayName": "*.catalog.service.impl",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.application.services",
-    "displayName": "*.application.services",
     "displayType": "multiLine",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.configstore.listeners",
-    "displayName": "*.configstore.listeners",
     "displayType": "multiLine",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.broker.impl.class",
-    "displayName": "*.broker.impl.class",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.shared.libs",
-    "displayName": "*.shared.libs",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.config.store.uri",
-    "displayName": "*.config.store.uri",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.system.lib.location",
-    "displayName": "*.system.lib.location",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.retry.recorder.path",
-    "displayName": "*.retry.recorder.path",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.cleanup.service.frequency",
-    "displayName": "*.falcon.cleanup.service.frequency",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.broker.url",
-    "displayName": "*.broker.url",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.broker.ttlInMins",
-    "displayName": "*.broker.ttlInMins",
     "displayType": "int",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.entity.topic",
-    "displayName": "*.entity.topic",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.max.retry.failure.count",
-    "displayName": "*.max.retry.failure.count",
     "displayType": "int",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.internal.queue.size",
-    "displayName": "*.internal.queue.size",
     "displayType": "int",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.authentication.type",
-    "displayName": "*.falcon.authentication.type",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.http.authentication.type",
-    "displayName": "*.falcon.http.authentication.type",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.http.authentication.token.validity",
-    "displayName": "*.falcon.http.authentication.token.validity",
     "displayType": "int",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.http.authentication.signature.secret",
-    "displayName": "*.falcon.http.authentication.signature.secret",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.http.authentication.simple.anonymous.allowed",
-    "displayName": "*.falcon.http.authentication.simple.anonymous.allowed",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.http.authentication.kerberos.name.rules",
-    "displayName": "*.falcon.http.authentication.kerberos.name.rules",
     "category": "FalconStartupSite",
     "displayType": "multiLine",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.http.authentication.blacklisted.users",
-    "displayName": "*.falcon.http.authentication.blacklisted.users",
-    "isRequired": false,
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
@@ -1692,9 +1799,7 @@ var hdp2properties = [
 
   // Falcon Graph and Storage
   {
-    "id": "site property",
     "name": "*.falcon.graph.storage.directory",
-    "displayName": "*.falcon.graph.storage.directory",
     "defaultDirectory": "/hadoop/falcon/data/lineage/graphdb",
     "displayType": "directory",
     "category": "FalconStartupSite",
@@ -1702,9 +1807,7 @@ var hdp2properties = [
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.graph.serialize.path",
-    "displayName": "*.falcon.graph.serialize.path",
     "defaultDirectory": "/hadoop/falcon/data/lineage",
     "displayType": "directory",
     "category": "FalconStartupSite",
@@ -1712,10 +1815,7 @@ var hdp2properties = [
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.graph.preserve.history",
-    "displayName": "*.falcon.graph.preserve.history",
-    "recommendedValue": false,
     "displayType": "checkbox",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
@@ -1724,27 +1824,19 @@ var hdp2properties = [
 
 /**********************************************webhcat-site***************************************/
   {
-    "id": "site property",
     "name": "templeton.hive.archive",
-    "displayName": "templeton.hive.archive",
-    "isRequired": false,
     "serviceName": "HIVE",
     "filename": "webhcat-site.xml",
     "category": "Advanced webhcat-site"
   },
   {
-    "id": "site property",
     "name": "templeton.pig.archive",
-    "displayName": "templeton.pig.archive",
-    "isRequired": false,
     "serviceName": "HIVE",
     "filename": "webhcat-site.xml",
     "category": "Advanced webhcat-site"
   },
   {
-    "id": "site property",
     "name": "templeton.zookeeper.hosts",
-    "displayName": "templeton.zookeeper.hosts",
     "displayType": "multiLine",
     "serviceName": "HIVE",
     "filename": "webhcat-site.xml",
@@ -1752,50 +1844,29 @@ var hdp2properties = [
   },
 /**********************************************pig.properties*****************************************/
   {
-    "id": "site property",
     "name": "content",
-    "displayName": "content",
-    "value": "",
-    "recommendedValue": "",
-    "description": "pig properties",
-    "displayType": "content",
-    "isRequired": false,
-    "showLabel": false,
+    "category": "Advanced pig-properties",
     "serviceName": "PIG",
-    "filename": "pig-properties.xml",
-    "category": "Advanced pig-properties"
+    "filename": "pig-properties.xml"
   },
 
 /**********************************************KNOX*****************************************/
   {
-    "id": "site property",
     "name": "content",
-    "displayName": "content",
-    "value": "",
-    "recommendedValue": "",
     "displayType": "content",
-    "isRequired": false,
-    "showLabel": false,
     "serviceName": "KNOX",
     "filename": "topology.xml",
     "category": "Advanced topology"
   },
 
   {
-    "id": "site property",
     "name": "content",
-    "displayName": "content",
-    "value": "",
-    "recommendedValue": "",
     "displayType": "content",
-    "isRequired": false,
-    "showLabel": false,
     "serviceName": "KNOX",
     "filename": "users-ldif.xml",
     "category": "Advanced users-ldif"
   },
   {
-    "id": "puppet var",
     "name": "knox_gateway_host",
     "displayName": "Knox Gateway host",
     "value": "",
@@ -1803,7 +1874,6 @@ var hdp2properties = [
     "description": "The hosts that have been assigned to run Knox Gateway",
     "displayType": "masterHosts",
     "isOverridable": false,
-    "isVisible": true,
     "isRequiredByAgent": false,
     "serviceName": "KNOX",
     "filename": "knox-env.xml",
@@ -1811,27 +1881,14 @@ var hdp2properties = [
     "index": 0
   },
   {
-    "id": "site property",
     "name": "knox_master_secret",
-    "displayName": "Knox Master Secret",
-    "value": "",
-    "recommendedValue": "",
-    "displayType": "password",
-    "isReconfigurable": false,
-    "isOverridable": false,
-    "isRequired": true,
     "serviceName": "KNOX",
     "filename": "knox-env.xml",
     "category": "KNOX_GATEWAY"
   },
   {
-    "id": "puppet var",
     "name": "knox_pid_dir",
-    "displayName": "Knox PID dir",
-    "value": "",
     "displayType": "directory",
-    "isReconfigurable": false,
-    "isOverridable": false,
     "serviceName": "KNOX",
     "filename": "knox-env.xml",
     "category": "Advanced knox-env"
@@ -1839,7 +1896,6 @@ var hdp2properties = [
 
 /********************************************* KAFKA *****************************/
   {
-    "id": "puppet var",
     "name": "kafka_broker_hosts",
     "displayName": "Kafka Broker host",
     "value": "",
@@ -1847,7 +1903,6 @@ var hdp2properties = [
     "description": "The host that has been assigned to run Kafka Broker",
     "displayType": "masterHosts",
     "isOverridable": false,
-    "isVisible": true,
     "isRequiredByAgent": false,
     "serviceName": "KAFKA",
     "filename": "kafka-broker.xml",
@@ -1855,11 +1910,7 @@ var hdp2properties = [
     "index": 0
   },
   {
-    "id": "site property",
     "name": "log.dirs",
-    "displayName": "log.dirs",
-    "value": "",
-    "recommendedValue": "",
     "defaultDirectory": "/kafka-logs",
     "displayType": "directories",
     "serviceName": "KAFKA",
@@ -1868,11 +1919,7 @@ var hdp2properties = [
     "index": 0
   },
   {
-    "id": "site property",
     "name": "port",
-    "displayName": "port",
-    "value": "",
-    "recommendedValue": "",
     "displayType": "int",
     "serviceName": "KAFKA",
     "filename": "kafka-broker.xml",
@@ -1880,22 +1927,14 @@ var hdp2properties = [
     "index": 0
   },
     {
-    "id": "site property",
     "name": "listeners",
-    "displayName": "listeners",
-    "value": "",
-    "recommendedValue": "",
     "displayType": "advanced",
     "serviceName": "KAFKA",
     "filename": "kafka-broker.xml",
     "category": "KAFKA_BROKER"
   },
   {
-    "id": "site property",
     "name": "log.roll.hours",
-    "displayName": "log.roll.hours",
-    "value": "",
-    "recommendedValue": "",
     "displayType": "advanced",
     "serviceName": "KAFKA",
     "filename": "kafka-broker.xml",
@@ -1903,11 +1942,7 @@ var hdp2properties = [
     "index": 0
   },
   {
-    "id": "site property",
     "name": "log.retention.hours",
-    "displayName": "log.retention.hours",
-    "value": "",
-    "recommendedValue": "",
     "displayType": "advanced",
     "serviceName": "KAFKA",
     "filename": "kafka-broker.xml",
@@ -1915,11 +1950,7 @@ var hdp2properties = [
     "index": 0
   },
   {
-    "id": "site property",
     "name": "zookeeper.connect",
-    "displayName": "zookeeper.connect",
-    "value": "",
-    "recommendedValue": "",
     "displayType": "advanced",
     "serviceName": "KAFKA",
     "filename": "kafka-broker.xml",
@@ -1927,13 +1958,7 @@ var hdp2properties = [
     "index": 0
   },
   {
-    "id": "site property",
     "name": "kafka_pid_dir",
-    "displayName": "Kafka PID dir",
-    "value": "",
-    "recommendedValue": "",
-    "isReconfigurable": false,
-    "isOverridable": false,
     "displayType": "directory",
     "serviceName": "KAFKA",
     "filename": "kafka-env.xml",
@@ -1943,188 +1968,127 @@ var hdp2properties = [
 
 /********************************************* ACCUMULO *****************************/
   {
-    "id": "site property",
     "name": "accumulo_instance_name",
-    "displayName": "Instance Name",
     "displayType": "string",
-    "isOverridable": false,
-    "isReconfigurable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "accumulo_root_password",
-    "displayName": "Accumulo root password",
-    "displayType": "password",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "trace.user",
-    "displayName": "Trace user",
     "displayType": "string",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "trace_password",
-    "displayName": "Trace user password",
-    "displayType": "password",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "instance_secret",
-    "displayName": "Instance Secret",
     "displayType": "password",
-    "isOverridable": false,
-    "isReconfigurable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "General"
   },
   {
-    "id": "site property",
     "name": "server_content",
-    "displayName": "Server accumulo-env template",
     "displayType": "content",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "puppet var",
     "name": "accumulo_master_heapsize",
-    "displayName": "Accumulo Master Maximum Java heap size",
     "displayType": "int",
-    "unit": "MB",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "puppet var",
     "name": "accumulo_tserver_heapsize",
-    "displayName": "Accumulo TServer Maximum Java heap size",
     "displayType": "int",
-    "unit": "MB",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "puppet var",
     "name": "accumulo_monitor_heapsize",
-    "displayName": "Accumulo Monitor Maximum Java heap size",
     "displayType": "int",
-    "unit": "MB",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "puppet var",
     "name": "accumulo_gc_heapsize",
-    "displayName": "Accumulo GC Maximum Java heap size",
     "displayType": "int",
-    "unit": "MB",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "puppet var",
     "name": "accumulo_other_heapsize",
-    "displayName": "Accumulo Other Maximum Java heap size",
     "displayType": "int",
-    "unit": "MB",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "puppet var",
     "name": "accumulo_log_dir",
-    "displayName": "Accumulo Log Dir",
-    "isReconfigurable": false,
     "displayType": "directory",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "puppet var",
     "name": "accumulo_pid_dir",
-    "displayName": "Accumulo PID Dir",
-    "isReconfigurable": false,
     "displayType": "directory",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "puppet var",
     "name": "accumulo_monitor_bind_all",
-    "displayName": "Monitor Bind All Interfaces",
     "displayType": "checkbox",
-    "recommendedValue": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-env.xml",
     "category": "Advanced accumulo-env"
   },
   {
-    "id": "site property",
     "name": "instance.volumes",
-    "displayName": "instance.volumes",
     "displayType": "string",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
     "category": "Advanced accumulo-site",
     "index": 0
   },
   {
-    "id": "site property",
     "name": "instance.zookeeper.host",
-    "displayName": "instance.zookeeper.host",
     "displayType": "string",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
     "category": "Advanced accumulo-site",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "instance.zookeeper.timeout",
-    "displayName": "instance.zookeeper.timeout",
     "displayType": "string",
-    "isOverridable": false,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
     "category": "Advanced accumulo-site",
     "index": 2
   },
   {
-    "id": "site property",
     "name": "master.port.client",
-    "displayName": "master.port.client",
     "displayType": "int",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
@@ -2132,9 +2096,7 @@ var hdp2properties = [
     "index": 3
   },
   {
-    "id": "site property",
     "name": "tserver.port.client",
-    "displayName": "tserver.port.client",
     "displayType": "int",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
@@ -2142,9 +2104,7 @@ var hdp2properties = [
     "index": 4
   },
   {
-    "id": "site property",
     "name": "monitor.port.client",
-    "displayName": "monitor.port.client",
     "displayType": "int",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
@@ -2152,9 +2112,7 @@ var hdp2properties = [
     "index": 5
   },
   {
-    "id": "site property",
     "name": "monitor.port.log4j",
-    "displayName": "monitor.port.log4j",
     "displayType": "int",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
@@ -2162,9 +2120,7 @@ var hdp2properties = [
     "index": 6
   },
   {
-    "id": "site property",
     "name": "gc.port.client",
-    "displayName": "gc.port.client",
     "displayType": "int",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
@@ -2172,9 +2128,7 @@ var hdp2properties = [
     "index": 7
   },
   {
-    "id": "site property",
     "name": "trace.port.client",
-    "displayName": "trace.port.client",
     "displayType": "int",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
@@ -2182,20 +2136,15 @@ var hdp2properties = [
     "index": 8
   },
   {
-    "id": "site property",
     "name": "tserver.memory.maps.native.enabled",
-    "displayName": "tserver.memory.maps.native.enabled",
     "displayType": "checkbox",
-    "recommendedValue": true,
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
     "category": "Advanced accumulo-site",
     "index": 9
   },
   {
-    "id": "site property",
     "name": "general.classpaths",
-    "displayName": "general.classpaths",
     "displayType": "content",
     "serviceName": "ACCUMULO",
     "filename": "accumulo-site.xml",
@@ -2205,12 +2154,7 @@ var hdp2properties = [
 
 /*******************************************kerberos***********************************/
   {
-    "id": "puppet var",
     "name": "kdc_type",
-    "displayName": "KDC type",
-    "isOverridable": false,
-    "isVisible": true,
-    "isRequiredByAgent": true,
     "displayType": "masterHost",
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
@@ -2218,12 +2162,7 @@ var hdp2properties = [
     "index": 0
   },
   {
-    "id": "puppet var",
     "name": "kdc_host",
-    "displayName": "KDC host",
-    "isOverridable": false,
-    "isVisible": true,
-    "isRequiredByAgent": true,
     "displayType": "supportTextConnection",
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
@@ -2231,84 +2170,54 @@ var hdp2properties = [
     "index": 1
   },
   {
-    "id": "puppet var",
     "name": "realm",
-    "displayName": "Realm name",
     "displayType": "host",
-    "isOverridable": false,
-    "isVisible": true,
-    "isRequiredByAgent": true,
-    "isReconfigurable": false,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "KDC",
     "index": 2
   },
   {
-    "id": "puppet var",
     "name": "ldap_url",
-    "displayName": "LDAP url",
     "displayType": "host",
-    "isOverridable": false,
-    "isVisible": false,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "KDC",
     "index": 3
   },
   {
-    "id": "puppet var",
     "name": "container_dn",
-    "displayName": "Container DN",
-    "isVisible": false,
-    "isOverridable": false,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "KDC",
     "index": 4
   },
   {
-    "id": "puppet var",
     "name": "manage_identities",
-    "displayName": "Manage Kerberos Identities",
     "displayType": "checkbox",
-    "isVisible": false,
-    "isOverridable": false,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 0
   },
   {
-    "id": "puppet var",
     "name": "install_packages",
-    "displayName": "Install OS-specific Kerberos client package(s)",
     "displayType": "checkbox",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 1
   },
   {
-    "id": "puppet var",
     "name": "executable_search_paths",
-    "displayName": "Executable Search Paths",
     "displayType": "multiline",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 2
   },
   {
-    "id": "puppet var",
     "name": "encryption_types",
-    "displayName": "Encryption Types",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "displayType": "multiLine",
@@ -2316,158 +2225,103 @@ var hdp2properties = [
     "index" : 3
   },
   {
-    "id": "puppet var",
     "name": "password_length",
-    "displayName": "Password Length",
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 4
   },
   {
-    "id": "puppet var",
     "name": "password_min_lowercase_letters",
-    "displayName": "Password Minimum # Lowercase Letters",
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 5
   },
   {
-    "id": "puppet var",
     "name": "password_min_uppercase_letters",
-    "displayName": "Password Minimum # Uppercase Letters",
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 6
   },
   {
-    "id": "puppet var",
     "name": "password_min_digits",
-    "displayName": "Password Minimum # Digits",
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 7
   },
   {
-    "id": "puppet var",
     "name": "password_min_punctuation",
-    "displayName": "Password Minimum # Punctuation Characters",
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 8
   },
   {
-    "id": "puppet var",
     "name": "password_min_whitespace",
-    "displayName": "Password Minimum # Whitespace Characters",
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 9
   },
   {
-    "id": "puppet var",
     "name": "service_check_principal_name",
-    "displayName": "Test Kerberos Principal",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 10
   },
   {
-    "id": "puppet var",
     "name": "ad_create_attributes_template",
-    "displayName": "Account Attribute Template",
     "displayType": "content",
-    "isOverridable": false,
-    "isVisible": true,
-    "isRequired": false,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 11
   },
   {
-    "id": "puppet var",
     "name": "kdc_create_attributes",
-    "displayName": "Principal Attributes",
-    "isOverridable": false,
-    "isVisible": true,
-    "isRequired": false,
     "serviceName": "KERBEROS",
     "filename": "kerberos-env.xml",
     "category": "Advanced kerberos-env",
     "index" : 12
   },
   {
-    "id": "puppet var",
     "name": "case_insensitive_user

<TRUNCATED>

[4/6] ambari git commit: AMBARI-13069. Attributes of configuration property should be stack API driven. (jaimin)

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-site.xml
index 5811e4f..aa21e53 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-site.xml
@@ -47,6 +47,9 @@ limitations under the License.
       Read/write locks - when hive.lock.manager is set to
       org.apache.hadoop.hive.ql.lockmgr.zookeeper.ZooKeeperHiveLockManager,
       2. When HiveServer2 supports service discovery via Zookeeper.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -341,13 +344,21 @@ limitations under the License.
     <name>javax.jdo.option.ConnectionPassword</name>
     <value></value>
     <property-type>PASSWORD</property-type>
+    <display-name>Database Password</display-name>
     <description>password to use against metastore database</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionURL</name>
     <value>jdbc:mysql://localhost/hive?createDatabaseIfNotExist=true</value>
+    <display-name>Database URL</display-name>
     <description>JDBC connect string for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -403,13 +414,21 @@ limitations under the License.
   <property>
     <name>javax.jdo.option.ConnectionDriverName</name>
     <value>com.mysql.jdbc.Driver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>Driver class name for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionUserName</name>
     <value>hive</value>
-    <description>Username to use against metastore database</description>
+    <display-name>Database Username</display-name>
+    <description>username to use against metastore database</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -1061,7 +1080,13 @@ limitations under the License.
   <property>
     <name>hive.server2.thrift.port</name>
     <value>10000</value>
-    <description>Port number of HiveServer2 Thrift interface when hive.server2.transport.mode is 'binary'.</description>
+    <display-name>HiveServer2 Port</display-name>
+    <description>
+      TCP port number to listen on, default 10000.
+    </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hive.server2.thrift.sasl.qop</name>
@@ -1371,7 +1396,11 @@ limitations under the License.
   <property>
     <name>ambari.hive.db.schema.name</name>
     <value>hive</value>
+    <display-name>Database Name</display-name>
     <description>Database name used as the Hive Metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/ranger-hive-plugin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/ranger-hive-plugin-properties.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/ranger-hive-plugin-properties.xml
index 1b121bc..fc9928f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/ranger-hive-plugin-properties.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/ranger-hive-plugin-properties.xml
@@ -23,6 +23,7 @@
   <property>
     <name>policy_user</name>
     <value>ambari-qa</value>
+    <display-name>policy User for HIVE</display-name>
     <description>This user must be system user and also present at Ranger admin portal</description>
   </property> 
 
@@ -36,11 +37,15 @@
     <name>common.name.for.certificate</name>
     <value></value>
     <description>Used for repository creation on ranger admin</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>REPOSITORY_CONFIG_USERNAME</name>
     <value>hive</value>
+    <display-name>Ranger repository config user</display-name>
     <description>Used for repository creation on ranger admin</description>
   </property>
 
@@ -54,12 +59,14 @@
   <property>
     <name>XAAUDIT.DB.IS_ENABLED</name>
     <value>true</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property> 
 
   <property>
     <name>XAAUDIT.HDFS.IS_ENABLED</name>
     <value>false</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -158,6 +165,7 @@
   <property>
     <name>UPDATE_XAPOLICIES_ON_GRANT_REVOKE</name>
     <value>true</value>
+    <display-name>Should Hive GRANT/REVOKE update XA policies</display-name>
     <description></description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/webhcat-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/webhcat-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/webhcat-site.xml
index 49563de..2fad897 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/webhcat-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/webhcat-site.xml
@@ -45,6 +45,9 @@ limitations under the License.
     <name>templeton.pig.archive</name>
     <value>hdfs:///hdp/apps/${hdp.version}/pig/pig.tar.gz</value>
     <description>The path to the Pig archive in HDFS.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -63,6 +66,9 @@ limitations under the License.
     <name>templeton.hive.archive</name>
     <value>hdfs:///hdp/apps/${hdp.version}/hive/hive.tar.gz</value>
     <description>The path to the Hive archive.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/ranger-storm-plugin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/ranger-storm-plugin-properties.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/ranger-storm-plugin-properties.xml
index e0c47db..8b77716 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/ranger-storm-plugin-properties.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/ranger-storm-plugin-properties.xml
@@ -23,6 +23,7 @@
   <property>
     <name>policy_user</name>
     <value>storm</value>
+    <display-name>policy User for STORM</display-name>
     <description>This user must be system user and also present at Ranger admin portal</description>
   </property> 
 
@@ -30,17 +31,25 @@
     <name>common.name.for.certificate</name>
     <value></value>
     <description>Used for repository creation on ranger admin</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   
   <property>
     <name>ranger-storm-plugin-enabled</name>
     <value>No</value>
+    <display-name>Enable Ranger for STORM</display-name>
     <description>Enable ranger storm plugin ?</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>REPOSITORY_CONFIG_USERNAME</name>
     <value>stormtestuser@EXAMPLE.COM</value>
+    <display-name>Ranger repository config user</display-name>
     <description>Used for repository creation on ranger admin</description>
   </property>
   
@@ -54,12 +63,14 @@
   <property>
     <name>XAAUDIT.DB.IS_ENABLED</name>
     <value>true</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property> 
 
   <property>
     <name>XAAUDIT.HDFS.IS_ENABLED</name>
     <value>false</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/storm-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/storm-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/storm-site.xml
index aaf027d..884b3f1 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/storm-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/STORM/configuration/storm-site.xml
@@ -51,6 +51,9 @@
     <name>nimbus.childopts</name>
     <value>-Xmx1024m _JAAS_PLACEHOLDER -javaagent:/usr/hdp/current/storm-nimbus/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8649,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-nimbus/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Nimbus_JVM</value>
     <description>This parameter is used by the storm-deploy project to configure the jvm options for the nimbus daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -75,6 +78,9 @@
     <name>supervisor.childopts</name>
     <value>-Xmx256m _JAAS_PLACEHOLDER -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port={{jmxremote_port}} -javaagent:/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8650,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Supervisor_JVM</value>
     <description>This parameter is used by the storm-deploy project to configure the jvm options for the supervisor daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   
    <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/core-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/core-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/core-site.xml
index 8b382dd..7a7f4c9 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/core-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/core-site.xml
@@ -27,10 +27,12 @@
   <property>
   <name>fs.AbstractFileSystem.glusterfs.impl</name>
   <value>org.apache.hadoop.fs.local.GlusterFs</value>
+  <display-name>GlusterFS Abstract File System Implementation</display-name>
   </property>
 
   <property>
   <name>fs.glusterfs.impl</name>
+  <display-name>GlusterFS fs impl</display-name>
   <value>org.apache.hadoop.fs.glusterfs.GlusterFileSystem</value>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml
index e9078e2..1de50bd 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml
@@ -25,26 +25,52 @@
     <name>hadoop_pid_dir_prefix</name>
     <value>/var/run/hadoop</value>
     <description>Hadoop PID Dir Prefix</description>
+    <display-name>Hadoop PID Dir Prefix</display-name>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+      <visible>false</visible>
+    </value-attributes>
   </property>
  <property>
     <name>hadoop_heapsize</name>
     <value>1024</value>
+    <display-name>Hadoop maximum Java heap size</display-name>
     <description>Hadoop maximum Java heap size</description>
+   <value-attributes>
+     <unit>MB</unit>
+   </value-attributes>
   </property>
   <property>
     <name>glusterfs_user</name>
     <value>root</value>
-    <description></description>
+    <display-name>glusterfs user</display-name>
+    <description>glusterfs user</description>
+    <value-attributes>
+      <visible>false</visible>
+    </value-attributes>
   </property>
   <property>
     <name>hdfs_log_dir_prefix</name>
     <value>/var/log/hadoop</value>
+    <display-name>Hadoop Log Dir Prefix</display-name>
     <description>Hadoop Log Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+      <visible>false</visible>
+    </value-attributes>
   </property>
   <property>
     <name>namenode_heapsize</name>
     <value>1024</value>
+    <display-name>Name Node Heap Size</display-name>
     <description>NameNode Java heap size</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+      <visible>false</visible>
+    </value-attributes>
   </property>
   <property>
     <name>namenode_host</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/configuration/hbase-site.xml
index 7cfac16..82b6e09 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/configuration/hbase-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/HBASE/configuration/hbase-site.xml
@@ -50,6 +50,7 @@
   <property>
     <name>hbase.tmp.dir</name>
     <value>/hadoop/hbase</value>
+    <display-name>HBase tmp directory</display-name>
     <description>Temporary directory on the local filesystem.
     Change this setting to point to a location more permanent
     than '/tmp' (The '/tmp' directory is often cleared on

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/OOZIE/configuration/oozie-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/OOZIE/configuration/oozie-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/OOZIE/configuration/oozie-site.xml
index 5208943..0e54ad3 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/OOZIE/configuration/oozie-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3.GlusterFS/services/OOZIE/configuration/oozie-site.xml
@@ -231,6 +231,7 @@
   <property require-input = "true">
     <name>oozie.service.JPAService.jdbc.password</name>
     <value> </value>
+    <display-name>Database Password</display-name>
     <property-type>PASSWORD</property-type>
     <description>
       DB user password.
@@ -238,6 +239,9 @@
       IMPORTANT: if password is emtpy leave a 1 space string, the service trims the value,
       if empty Configuration assumes it is NULL.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/ACCUMULO/configuration/accumulo-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/ACCUMULO/configuration/accumulo-log4j.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/ACCUMULO/configuration/accumulo-log4j.xml
index 20c858e..ff43b57 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/ACCUMULO/configuration/accumulo-log4j.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/ACCUMULO/configuration/accumulo-log4j.xml
@@ -107,6 +107,9 @@ log4j.appender.A1.layout.ConversionPattern=%d{ISO8601} [%-8c{2}] %-5p: %m%n
 log4j.appender.A1.layout=org.apache.log4j.PatternLayout
 
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/hbase-site.xml
index 34dff85..32ad416 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/hbase-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/hbase-site.xml
@@ -23,7 +23,11 @@
   <property>
     <name>hbase.master.port</name>
     <value>16000</value>
+    <display-name>HBase Master Port</display-name>
     <description>The port the HBase Master should bind to.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.master.info.port</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-audit.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-audit.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-audit.xml
index 070b637..553d1ea 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-audit.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-audit.xml
@@ -29,6 +29,7 @@
   <property>
     <name>xasecure.audit.destination.db</name>
     <value>false</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
@@ -72,6 +73,7 @@
   <property>
     <name>xasecure.audit.destination.hdfs</name>
     <value>true</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -90,6 +92,7 @@
   <property>
     <name>xasecure.audit.destination.solr</name>
     <value>false</value>
+    <display-name>Audit to SOLR</display-name>
     <description></description>
   </property>
 
@@ -114,6 +117,7 @@
   <property>
     <name>xasecure.audit.provider.summary.enabled</name>
     <value>true</value>
+    <display-name>Audit provider summary enabled</display-name>
     <description></description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-security.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-security.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-security.xml
index 8958a9e..8aa741f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-security.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HBASE/configuration/ranger-hbase-security.xml
@@ -58,6 +58,7 @@
   <property>
     <name>xasecure.hbase.update.xapolicies.on.grant.revoke</name>
     <value>true</value>
+    <display-name>Should HBase GRANT/REVOKE update XA policies</display-name>
     <description>Should HBase plugin update Ranger policies for updates to permissions done using GRANT/REVOKE?</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hadoop-env.xml
index 3b332ad..9222b1d 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hadoop-env.xml
@@ -155,8 +155,12 @@ export HADOOP_OPTS="-Dhdp.version=$HDP_VERSION $HADOOP_OPTS"
   </property>
   <property>
     <name>nfsgateway_heapsize</name>
+    <display-name>NFSGateway maximum Java heap size</display-name>
     <value>1024</value>
     <description>Maximum Java heap size for NFSGateway (Java option -Xmx)</description>
+    <value-attributes>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hdfs-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hdfs-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hdfs-site.xml
index b14d73a..fbce6e8 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hdfs-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/hdfs-site.xml
@@ -25,6 +25,7 @@
   <property>
     <name>nfs.file.dump.dir</name>
     <value>/tmp/.hdfs-nfs</value>
+    <display-name>NFSGateway dump directory</display-name>
     <description>
       This directory is used to temporarily save out-of-order writes before
       writing to HDFS. For each file, the out-of-order writes are dumped after
@@ -36,6 +37,7 @@
   <property>
     <name>nfs.exports.allowed.hosts</name>
     <value>* rw</value>
+    <display-name>Allowed hosts</display-name>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/ranger-hdfs-audit.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/ranger-hdfs-audit.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/ranger-hdfs-audit.xml
index 57329e3..0451d2d 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/ranger-hdfs-audit.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HDFS/configuration/ranger-hdfs-audit.xml
@@ -29,6 +29,7 @@
   <property>
     <name>xasecure.audit.destination.db</name>
     <value>false</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
@@ -72,6 +73,7 @@
   <property>
     <name>xasecure.audit.destination.hdfs</name>
     <value>true</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -90,6 +92,7 @@
   <property>
     <name>xasecure.audit.destination.solr</name>
     <value>false</value>
+    <display-name>Audit to SOLR</display-name>
     <description></description>
   </property>
 
@@ -114,6 +117,7 @@
   <property>
     <name>xasecure.audit.provider.summary.enabled</name>
     <value>false</value>
+    <display-name>Audit provider summary enabled</display-name>
     <description></description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-audit.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-audit.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-audit.xml
index d5f07a9..7c5c77f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-audit.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-audit.xml
@@ -29,6 +29,7 @@
   <property>
     <name>xasecure.audit.destination.db</name>
     <value>false</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
@@ -72,6 +73,7 @@
   <property>
     <name>xasecure.audit.destination.hdfs</name>
     <value>true</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -90,6 +92,7 @@
   <property>
     <name>xasecure.audit.destination.solr</name>
     <value>false</value>
+    <display-name>Audit to SOLR</display-name>
     <description></description>
   </property>
 
@@ -114,6 +117,7 @@
   <property>
     <name>xasecure.audit.provider.summary.enabled</name>
     <value>false</value>
+    <display-name>Audit provider summary enabled</display-name>
     <description></description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-security.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-security.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-security.xml
index 5407ccf..2a982b6 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-security.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/HIVE/configuration/ranger-hive-security.xml
@@ -59,6 +59,7 @@
   <property>
     <name>xasecure.hive.update.xapolicies.on.grant.revoke</name>
     <value>true</value>
+    <display-name>Should Hive GRANT/REVOKE update XA policies</display-name>
     <description>Should Hive plugin update Ranger policies for updates to permissions done using GRANT/REVOKE?</description>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-audit.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-audit.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-audit.xml
index 1433d0a..76b84bb 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-audit.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-audit.xml
@@ -29,6 +29,7 @@
   <property>
     <name>xasecure.audit.destination.db</name>
     <value>false</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
@@ -72,6 +73,7 @@
   <property>
     <name>xasecure.audit.destination.hdfs</name>
     <value>true</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -90,6 +92,7 @@
   <property>
     <name>xasecure.audit.destination.solr</name>
     <value>true</value>
+    <display-name>Audit to SOLR</display-name>
     <description></description>
   </property>
 
@@ -114,6 +117,7 @@
   <property>
     <name>xasecure.audit.provider.summary.enabled</name>
     <value>true</value>
+    <display-name>Audit provider summary enabled</display-name>
     <description></description>
   </property>  
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-plugin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-plugin-properties.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-plugin-properties.xml
index 893652d..8343a3a 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-plugin-properties.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/KAFKA/configuration/ranger-kafka-plugin-properties.xml
@@ -30,12 +30,18 @@
     <name>hadoop.rpc.protection</name>
     <value></value>
     <description>Used for repository creation on ranger admin</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>common.name.for.certificate</name>
     <value></value>
     <description>Used for repository creation on ranger admin</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   
   <property>
@@ -47,7 +53,11 @@
   <property>
     <name>ranger-kafka-plugin-enabled</name>
     <value>No</value>
+    <display-name>Enable Ranger for KAFKA</display-name>
     <description>Enable ranger kafka plugin ?</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/KNOX/configuration/ranger-knox-audit.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/KNOX/configuration/ranger-knox-audit.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/KNOX/configuration/ranger-knox-audit.xml
index ba8710a..74ab59a 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/KNOX/configuration/ranger-knox-audit.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/KNOX/configuration/ranger-knox-audit.xml
@@ -29,6 +29,7 @@
   <property>
     <name>xasecure.audit.destination.db</name>
     <value>false</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
@@ -72,6 +73,7 @@
   <property>
     <name>xasecure.audit.destination.hdfs</name>
     <value>true</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -90,6 +92,7 @@
   <property>
     <name>xasecure.audit.destination.solr</name>
     <value>false</value>
+    <display-name>Audit to SOLR</display-name>
     <description></description>
   </property>
 
@@ -114,6 +117,7 @@
   <property>
     <name>xasecure.audit.provider.summary.enabled</name>
     <value>false</value>
+    <display-name>Audit provider summary enabled</display-name>
     <description></description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/PIG/configuration/pig-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/PIG/configuration/pig-properties.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/PIG/configuration/pig-properties.xml
index c18e25a..ac248b3 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/PIG/configuration/pig-properties.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/PIG/configuration/pig-properties.xml
@@ -629,6 +629,11 @@ pig.tez.grace.parallelism=true
 # pig.streaming.udf.python.command=python
 
     </value>
+    <description>Describe all the Pig agent configurations</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-admin-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-admin-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-admin-site.xml
index 57d21dd..49fce8c 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-admin-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-admin-site.xml
@@ -27,7 +27,11 @@
   <property>
     <name>ranger.service.http.enabled</name>
     <value>true</value>
+    <display-name>HTTP enabled</display-name>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -76,19 +80,32 @@
   <property>
     <name>ranger.externalurl</name>
     <value>{{ranger_external_url}}</value>
+    <display-name>External URL</display-name>
     <description></description>
+    <value-attributes>
+      <visible>false</visible>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.jpa.jdbc.driver</name>
     <value>com.mysql.jdbc.Driver</value>
+    <display-name>Driver class name for a JDBC Ranger database</display-name>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.jpa.jdbc.url</name>
     <value>jdbc:mysql://localhost</value>
+    <display-name>JDBC connect string for a Ranger database</display-name>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property> 
 
   <property>
@@ -131,19 +148,29 @@
   <property>
     <name>ranger.authentication.method</name>
     <value>UNIX</value>
+    <display-name>Authentication method</display-name>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.url</name>
     <value>ldap://71.127.43.33:389</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property> 
 
   <property>
     <name>ranger.ldap.user.dnpattern</name>
     <value>uid={0},ou=users,dc=xasecure,dc=net</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -162,24 +189,36 @@
     <name>ranger.ldap.user.searchfilter</name>
     <value>(uid={0})</value>
     <description>Search filter used for Bind Authentication</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.group.roleattribute</name>
     <value>cn</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.base.dn</name>
     <value>dc=example,dc=com</value>
     <description>The Distinguished Name (DN) of the starting point for directory server searches.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.bind.dn</name>
     <value>cn=adadmin,cn=Users,dc=example,dc=com</value>
     <description>Full distinguished name (DN), including common name (CN), of an LDAP user account that has privileges to search for users. </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -187,36 +226,54 @@
     <value></value>
     <property-type>PASSWORD</property-type>
     <description>Password for the account that can search for users</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.referral</name>
     <value>ignore</value>
     <description>Set to follow if multiple LDAP servers are configured to return continuation references for results. Set to ignore (default) if no referrals should be followed</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.ad.domain</name>
     <value>localhost</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.ad.url</name>
     <value>ldap://ad.xasecure.net:389</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.ad.base.dn</name>
     <value>dc=example,dc=com</value>
     <description>The Distinguished Name (DN) of the starting point for directory server searches.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.ad.bind.dn</name>
     <value>cn=adadmin,cn=Users,dc=example,dc=com</value>
     <description>Full distinguished name (DN), including common name (CN), of an LDAP user account that has privileges to search for users.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -224,18 +281,27 @@
     <value></value>
     <property-type>PASSWORD</property-type>
     <description>Password for the account that can search for users</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.ad.user.searchfilter</name>
     <value>(sAMAccountName={0})</value>
     <description>Search filter used for Bind Authentication</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.ldap.ad.referral</name>
     <value>ignore</value>
     <description>"Set to follow if multiple LDAP servers are configured to return continuation references for results. Set to ignore (default) if no referrals should be followed"</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -272,19 +338,29 @@
   <property>
     <name>ranger.unixauth.remote.login.enabled</name>
     <value>true</value>
+    <display-name>Allow remote Login</display-name>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.unixauth.service.hostname</name>
     <value>localhost</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.unixauth.service.port</name>
     <value>5151</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>    
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-env.xml
index dd6270c..8308865 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-env.xml
@@ -29,6 +29,7 @@
   <property>
     <name>create_db_dbuser</name>
     <value>true</value>
+    <display-name>Setup DB and DB user</display-name>
     <description>Setup Ranger Database and Database User?</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-ugsync-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-ugsync-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-ugsync-site.xml
index d7dce19..3cc017e 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-ugsync-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/RANGER/configuration/ranger-ugsync-site.xml
@@ -108,6 +108,9 @@
     <name>ranger.usersync.source.impl.class</name>
     <value>org.apache.ranger.unixusersync.process.UnixUserGroupBuilder</value>
     <description>For Ldap: org.apache.ranger.ldapusersync.process.LdapUserGroupBuilder, For Unix: org.apache.ranger.unixusersync.process.UnixUserGroupBuilder, org.apache.ranger.unixusersync.process.FileSourceUserGroupBuilder</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -139,6 +142,9 @@
     <value></value>
     <property-type>PASSWORD</property-type>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -151,12 +157,18 @@
     <name>ranger.usersync.ldap.bindkeystore</name>
     <value></value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.usersync.ldap.searchBase</name>
     <value>dc=hadoop,dc=apache,dc=org</value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -193,6 +205,9 @@
     <name>ranger.usersync.ldap.referral</name>
     <value>ignore</value>
     <description>Set to follow if multiple LDAP servers are configured to return continuation references for results. Set to ignore (default) if no referrals should be followed</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -223,48 +238,72 @@
     <name>ranger.usersync.group.searchenabled</name>
     <value>false</value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.usersync.group.usermapsyncenabled</name>
     <value>false</value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.usersync.group.searchbase</name>
     <value> </value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.usersync.group.searchscope</name>
     <value> </value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.usersync.group.objectclass</name>
     <value> </value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.usersync.group.searchfilter</name>
     <value> </value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.usersync.group.nameattribute</name>
     <value> </value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger.usersync.group.memberattributename</name>
     <value> </value>
     <description></description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-audit.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-audit.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-audit.xml
index 3687e88..18726e5 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-audit.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/ranger-storm-audit.xml
@@ -29,6 +29,7 @@
   <property>
     <name>xasecure.audit.destination.db</name>
     <value>false</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
@@ -72,6 +73,7 @@
   <property>
     <name>xasecure.audit.destination.hdfs</name>
     <value>true</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -90,6 +92,7 @@
   <property>
     <name>xasecure.audit.destination.solr</name>
     <value>false</value>
+    <display-name>Audit to SOLR</display-name>
     <description></description>
   </property>
 
@@ -114,6 +117,7 @@
   <property>
     <name>xasecure.audit.provider.summary.enabled</name>
     <value>false</value>
+    <display-name>Audit provider summary enabled</display-name>
     <description></description>
   </property>  
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-site.xml
index bbe0a3d..2227f53 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/STORM/configuration/storm-site.xml
@@ -23,6 +23,10 @@
     <name>nimbus.seeds</name>
     <value>localhost</value>
     <description>Comma-delimited list of the hosts running nimbus server.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>topology.min.replication.count.default</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml
index be534f1..37db69f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/TEZ/configuration/tez-site.xml
@@ -24,6 +24,9 @@
     <description>AM view ACLs. This allows the specified users/groups to view the status of the AM and all DAGs that run within this AM.
       Value format: Comma separated list of users, followed by whitespace, followed by a comma separated list of groups.
     </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-audit.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-audit.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-audit.xml
index 044f8ec..43d95f9 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-audit.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-audit.xml
@@ -29,6 +29,7 @@
   <property>
     <name>xasecure.audit.destination.db</name>
     <value>false</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
@@ -72,6 +73,7 @@
   <property>
     <name>xasecure.audit.destination.hdfs</name>
     <value>true</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -90,6 +92,7 @@
   <property>
     <name>xasecure.audit.destination.solr</name>
     <value>false</value>
+    <display-name>Audit to SOLR</display-name>
     <description></description>
   </property>
 
@@ -114,6 +117,7 @@
   <property>
     <name>xasecure.audit.provider.summary.enabled</name>
     <value>false</value>
+    <display-name>Audit provider summary enabled</display-name>
     <description></description>
   </property>  
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-plugin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-plugin-properties.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-plugin-properties.xml
index db456da..1b8ba55 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-plugin-properties.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/ranger-yarn-plugin-properties.xml
@@ -30,18 +30,28 @@
     <name>hadoop.rpc.protection</name>
     <value></value>
     <description>Used for repository creation on ranger admin</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>common.name.for.certificate</name>
     <value></value>
     <description>Used for repository creation on ranger admin</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger-yarn-plugin-enabled</name>
     <value>No</value>
+    <display-name>Enable Ranger for YARN</display-name>
     <description>Enable ranger yarn plugin ?</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-log4j.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-log4j.xml
index 28a4836..b52af80 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-log4j.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-log4j.xml
@@ -75,6 +75,9 @@ log4j.appender.EWMA.cleanupInterval=${yarn.ewma.cleanupInterval}
 log4j.appender.EWMA.messageAgeLimitSeconds=${yarn.ewma.messageAgeLimitSeconds}
 log4j.appender.EWMA.maxUniqueMessages=${yarn.ewma.maxUniqueMessages}
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-site.xml
index f2774fc..12a8a21 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.3/services/YARN/configuration/yarn-site.xml
@@ -35,6 +35,9 @@
     <name>yarn.admin.acl</name>
     <value>yarn</value>
     <description> ACL of who can be admin of the YARN cluster. </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
 </configuration>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/configuration/cluster-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/configuration/cluster-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/configuration/cluster-env.xml
index 24294a4..2c661d9 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/configuration/cluster-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/configuration/cluster-env.xml
@@ -24,14 +24,24 @@
   <property>
     <name>hadoop.user.name</name>
     <value>hadoop</value>
+    <display-name>Hadoop User Name</display-name>
     <property-type>USER</property-type>
     <description>User to run Hadoop services under</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property require-input="true">
     <name>hadoop.user.password</name>
+    <display-name>Hadoop User Password</display-name>
     <value> </value>
     <property-type>PASSWORD</property-type>
     <description>Password for hadoop user</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>security_enabled</name>
@@ -45,9 +55,13 @@
   </property>
   <property>
     <name>ignore_groupsusers_create</name>
+    <display-name>Skip group modifications during install</display-name>
     <property-type>ADDITIONAL_USER_PROPERTY</property-type>
     <value>false</value>
     <description>Whether to ignore failures on users and group creation</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>smokeuser</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-env.xml
index ff779d1..1a8969c 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-env.xml
@@ -26,21 +26,25 @@
   <property>
     <name>metrics_collector_log_dir</name>
     <value>C:\var\log\ambari-metrics-collector</value>
+    <display-name>Metrics Collector log dir</display-name>
     <description>Collector log directory.</description>
   </property>
   <property>
     <name>metrics_collector_pid_dir</name>
     <value>C:\var\run\ambari-metrics-collector</value>
+    <display-name>Metrics Collector pid dir</display-name>
     <description>Collector pid directory.</description>
   </property>
   <property>
     <name>metrics_monitor_pid_dir</name>
     <value>C:\var\run\ambari-metrics-monitor</value>
+    <display-name>Metrics Monitor pid dir</display-name>
     <description>Monitor pid directory.</description>
   </property>
   <property>
     <name>metrics_monitor_log_dir</name>
     <value>C:\var\log\ambari-metrics-monitor</value>
+    <display-name>Metrics Monitor log dir</display-name>
     <description>Monitor log directory.</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-site.xml
index 097de9d..a68c912 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/AMBARI_METRICS/configuration/ams-site.xml
@@ -24,6 +24,7 @@
   <property>
     <name>timeline.metrics.aggregator.checkpoint.dir</name>
     <value>c:\ambari\ambari-metrics-collector\checkpoint</value>
+    <display-name>Aggregator checkpoint directory</display-name>
     <description>
       Directory to store aggregator checkpoints. Change to a permanent
       location so that checkpoint ar not lost.

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FALCON/configuration/falcon-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FALCON/configuration/falcon-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FALCON/configuration/falcon-env.xml
index 6ececc6..f0fc01b 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FALCON/configuration/falcon-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FALCON/configuration/falcon-env.xml
@@ -26,16 +26,27 @@
   <property>
     <name>falcon_log_dir</name>
     <value>c:\hadoop\logs\falcon</value>
+    <display-name>Falcon Log Dir</display-name>
     <description>Falcon log directory.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>falcon_pid_dir</name>
     <value>c:\hadoop\run\falcon</value>
+    <display-name>Falcon PID Dir</display-name>
     <description>Falcon pid-file directory.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>falcon_local_dir</name>
     <value>c:\hadoop\falcon</value>
+    <display-name>Falcon data directory</display-name>
     <description>Directory where Falcon data, such as activemq data, is stored.</description>
   </property>
   <!--embeddedmq properties-->

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FLUME/configuration/flume-conf.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FLUME/configuration/flume-conf.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FLUME/configuration/flume-conf.xml
index 8ff764b..94ae058 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FLUME/configuration/flume-conf.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/FLUME/configuration/flume-conf.xml
@@ -29,5 +29,9 @@
     <value>
 # Flume agent config
     </value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-env.xml
index 642e746..585c6ca 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-env.xml
@@ -24,12 +24,22 @@
   <property>
     <name>hbase_log_dir</name>
     <value>c:\hadoop\logs\hbase</value>
+    <display-name>HBase Log Dir Prefix</display-name>
     <description>Log Directories for HBase.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hbase_pid_dir</name>
     <value>c:\hadoop\run\hbase</value>
+    <display-name>HBase PID Dir</display-name>
     <description>Pid Directory for HBase.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-site.xml
index d551d4d..5f834d7 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HBASE/configuration/hbase-site.xml
@@ -27,6 +27,7 @@
   <property>
     <name>hbase.tmp.dir</name>
     <value>c:\hadoop\temp\hbase</value>
+    <display-name>HBase tmp directory</display-name>
     <description>Temporary directory on the local filesystem.
       Change this setting to point to a location more permanent
       than '/tmp' (The '/tmp' directory is often cleared on

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hadoop-env.xml
index b5451d8..243b4ff 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hadoop-env.xml
@@ -29,15 +29,26 @@
     <name>hdfs_log_dir_prefix</name>
     <value>c:\hadoop\logs\hadoop</value>
     <description>Hadoop Log Dir Prefix</description>
+    <display-name>Hadoop Log Dir Prefix</display-name>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hadoop_pid_dir_prefix</name>
     <value>c:\hadoop\run\hadoop</value>
+    <display-name>Hadoop PID Dir Prefix</display-name>
     <description>Hadoop PID Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>dfs.datanode.data.dir.mount.file</name>
     <value>file:///c:/hadoop/conf/dfs_data_dir_mount.hist</value>
+    <display-name>File that stores mount point for each data dir</display-name>
     <description>File path that contains the last known mount point for each data dir. This file is used to avoid creating a DFS data dir on the root drive (and filling it up) if a path was previously mounted on a drive.</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hdfs-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hdfs-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hdfs-site.xml
index b235da4..f0b0a01 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hdfs-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HDFS/configuration/hdfs-site.xml
@@ -24,15 +24,20 @@
   <property>
     <name>dfs.namenode.name.dir</name>
     <value>file:///c:/hdpdata/hdfs/nn</value>
+    <display-name>NameNode directories</display-name>
     <description>Determines where on the local filesystem the DFS name node
       should store the name table.  If this is a comma-delimited list
       of directories then the name table is replicated in all of the
       directories, for redundancy. </description>
     <final>true</final>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>dfs.datanode.data.dir</name>
     <value>file:///c:/hdpdata/hdfs/dn</value>
+    <display-name>DataNode directories</display-name>
     <description>Determines where on the local filesystem an DFS data node
     should store its blocks.  If this is a comma-delimited
     list of directories, then data will be stored in all named
@@ -60,11 +65,15 @@
   <property>
     <name>dfs.namenode.checkpoint.dir</name>
     <value>file:///c:/hadoop/hdfs/snn</value>
+    <display-name>SecondaryNameNode Checkpoint directories</display-name>
     <description>Determines where on the local filesystem the DFS secondary
       name node should store the temporary images to merge.
       If this is a comma-delimited list of directories then the image is
       replicated in all of the directories for redundancy.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-env.xml
index 6fa7a08..a81c033 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-env.xml
@@ -24,14 +24,22 @@
   <property>
     <name>hive_database_type</name>
     <value>mssql</value>
+    <display-name>Hive Database Type</display-name>
     <description>Default HIVE DB type.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hive_database</name>
     <value>Existing MSSQL Server database with SQL authentication</value>
+    <display-name>Hive Database</display-name>
     <description>
       Property that determines whether the HIVE DB is managed by Ambari.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hive_ambari_database</name>
@@ -41,12 +49,22 @@
   <property>
     <name>hive_log_dir</name>
     <value>c:\hadoop\logs\hive</value>
+    <display-name>Hive Log Dir</display-name>
     <description>Directory for Hive Log files.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hive_pid_dir</name>
     <value>c:\hadoop\run\hive</value>
+    <display-name>Hive PID Dir</display-name>
     <description>Hive PID Dir.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hive_user</name>
@@ -57,12 +75,22 @@
   <property>
     <name>hcat_log_dir</name>
     <value>c:\hadoop\logs\webhcat</value>
+    <display-name>WebHCat Log Dir</display-name>
     <description>WebHCat Log Dir.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hcat_pid_dir</name>
     <value>c:\hadooop\run\webhcat</value>
+    <display-name>WebHCat Pid Dir</display-name>
     <description>WebHCat Pid Dir.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hcat_user</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-site.xml
index 18aaf5f..4074368 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/HIVE/configuration/hive-site.xml
@@ -7,13 +7,21 @@
   <property>
     <name>javax.jdo.option.ConnectionURL</name>
     <value>jdbc:sqlserver://localhost;databaseName=hive</value>
+    <display-name>Database URL</display-name>
     <description>JDBC connect string for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionDriverName</name>
     <value>com.microsoft.sqlserver.jdbc.SQLServerDriver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>Driver class name for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-env.xml
index 138e3e2..57c492a 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-env.xml
@@ -28,29 +28,52 @@
   <property>
     <name>oozie_hostname</name>
     <value></value>
+    <display-name>Database Host</display-name>
     <description>
       Specify the host on which the OOZIE database is hosted.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_database</name>
     <value>Existing MSSQL Server database with SQL authentication</value>
+    <display-name>Oozie Database</display-name>
     <description>Oozie Server Database.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_data_dir</name>
     <value>c:\hadoop\oozie\data</value>
+    <display-name>Oozie Data Dir</display-name>
     <description>Data directory in which the Oozie DB exists</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_log_dir</name>
     <value>c:\hadoop\logs\oozie</value>
+    <display-name>Oozie Log Dir</display-name>
     <description>Directory for oozie logs</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_pid_dir</name>
     <value>c:\hadoop\run\oozie</value>
+    <display-name>Oozie PID Dir</display-name>
     <description>Directory in which the pid files for oozie reside.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <!-- oozie-env.cmd -->

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-site.xml
index 1693648..ab9cf3f 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/OOZIE/configuration/oozie-site.xml
@@ -25,16 +25,24 @@
   <property>
     <name>oozie.service.JPAService.jdbc.driver</name>
     <value>com.microsoft.sqlserver.jdbc.SQLServerDriver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>
       JDBC driver class.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie.service.JPAService.jdbc.url</name>
     <value>jdbc:sqlserver://localhost;databaseName=oozie</value>
+    <display-name>Database URL</display-name>
     <description>
       JDBC URL.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie.service.HadoopAccessorService.hadoop.configurations</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration-mapred/mapred-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration-mapred/mapred-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration-mapred/mapred-env.xml
index a8feead..f1445b2 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration-mapred/mapred-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration-mapred/mapred-env.xml
@@ -24,12 +24,22 @@
   <property>
     <name>mapred_log_dir_prefix</name>
     <value>c:\hadoop\logs\hadoop-mapreduce</value>
+    <display-name>Mapreduce Log Dir Prefix</display-name>
     <description>Mapreduce Log Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>mapred_pid_dir_prefix</name>
     <value>c:\hadoop\run\hadoop-mapreduce</value>
+    <display-name>Mapreduce PID Dir Prefix</display-name>
     <description>Mapreduce PID Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>mapred_user</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration/yarn-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration/yarn-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration/yarn-env.xml
index 726704d..af4efca 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration/yarn-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/YARN/configuration/yarn-env.xml
@@ -24,12 +24,22 @@
   <property>
     <name>yarn_log_dir_prefix</name>
     <value>c:\hadoop\logs\hadoop-yarn</value>
+    <display-name>YARN Log Dir Prefix</display-name>
     <description>YARN Log Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>yarn_pid_dir_prefix</name>
     <value>c:\hadoop\run\hadoop-yarn</value>
+    <display-name>YARN PID Dir Prefix</display-name>
     <description>YARN PID Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>yarn_user</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zoo.cfg.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zoo.cfg.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zoo.cfg.xml
index 6505500..6c47094 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zoo.cfg.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zoo.cfg.xml
@@ -24,6 +24,7 @@
   <property>
     <name>dataDir</name>
     <value>c:\\\\hadoop\\\\zookeeper</value>
+    <display-name>ZooKeeper directory</display-name>
     <description>Data directory for ZooKeeper.</description>
   </property>
 </configuration>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zookeeper-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zookeeper-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zookeeper-env.xml
index 64dd971..2ed40ac 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zookeeper-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.1/services/ZOOKEEPER/configuration/zookeeper-env.xml
@@ -28,12 +28,22 @@
   <property>
     <name>zk_log_dir</name>
     <value>c:\hadoop\log\zookeeper</value>
+    <display-name>ZooKeeper Log Dir</display-name>
     <description>ZooKeeper Log Dir</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>zk_pid_dir</name>
     <value>c:\hadoop\run\zookeeper</value>
+    <display-name>ZooKeeper PID Dir</display-name>
     <description>ZooKeeper Pid Dir</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <!-- zookeeper-env.sh -->
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-env.xml
index e46932a..fe58adb 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-env.xml
@@ -25,5 +25,9 @@
     <name>hbase_max_direct_memory_size</name>
     <value></value>
     <description>If not empty, adds '-XX:MaxDirectMemorySize={{hbase_max_direct_memory_size}}m' to HBASE_REGIONSERVER_OPTS.</description>
+    <display-name>HBase off-heap MaxDirectMemorySize</display-name>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-site.xml
index 3de0397..fd157be 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HBASE/configuration/hbase-site.xml
@@ -60,6 +60,7 @@
   <property>
     <name>hbase.hregion.memstore.block.multiplier</name>
     <value>4</value>
+    <display-name>HBase Region Block Multiplier</display-name>
     <description>
     Block updates if memstore has hbase.hregion.memstore.block.multiplier
     times hbase.hregion.memstore.flush.size bytes.  Useful preventing
@@ -90,16 +91,25 @@
     <value></value>
     <description>Where to store the contents of the bucketcache. One of: onheap,
       offheap, or file. If a file, set it to file:PATH_TO_FILE.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.bucketcache.size</name>
     <value></value>
     <description>The size of the buckets for the bucketcache if you only use a single size.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.bucketcache.percentage.in.combinedcache</name>
     <value></value>
     <description>Value to be set between 0.0 and 1.0</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.regionserver.global.memstore.size</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HDFS/configuration/hdfs-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HDFS/configuration/hdfs-log4j.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HDFS/configuration/hdfs-log4j.xml
index bc8d959..f627add 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HDFS/configuration/hdfs-log4j.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HDFS/configuration/hdfs-log4j.xml
@@ -217,6 +217,9 @@ log4j.logger.org.apache.hadoop.conf.Configuration.deprecation=WARN
 # messages from BlockManager in NameNode.
 #log4j.logger.BlockStateChange=WARN
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>


[3/6] ambari git commit: AMBARI-13069. Attributes of configuration property should be stack API driven. (jaimin)

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/hive-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/hive-site.xml
index 3446bc6..72e816b 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/hive-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/hive-site.xml
@@ -47,6 +47,9 @@ limitations under the License.
       Read/write locks - when hive.lock.manager is set to
       org.apache.hadoop.hive.ql.lockmgr.zookeeper.ZooKeeperHiveLockManager,
       2. When HiveServer2 supports service discovery via Zookeeper.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -318,13 +321,21 @@ limitations under the License.
   <property>
     <name>javax.jdo.option.ConnectionPassword</name>
     <value></value>
+    <display-name>Database Password</display-name>
     <description>password to use against metastore database</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionURL</name>
     <value>jdbc:sqlserver://localhost;databaseName=hive</value>
+    <display-name>Database URL</display-name>
     <description>JDBC connect string for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -380,13 +391,21 @@ limitations under the License.
   <property>
     <name>javax.jdo.option.ConnectionDriverName</name>
     <value>com.microsoft.sqlserver.jdbc.SQLServerDriver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>Driver class name for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionUserName</name>
     <value>hive</value>
-    <description>Username to use against metastore database</description>
+    <display-name>Database Username</display-name>
+    <description>username to use against metastore database</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -1051,7 +1070,13 @@ limitations under the License.
   <property>
     <name>hive.server2.thrift.port</name>
     <value>10000</value>
-    <description>Port number of HiveServer2 Thrift interface when hive.server2.transport.mode is 'binary'.</description>
+    <display-name>HiveServer2 Port</display-name>
+    <description>
+      TCP port number to listen on, default 10000.
+    </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hive.server2.thrift.sasl.qop</name>
@@ -1376,7 +1401,11 @@ limitations under the License.
   <property>
     <name>ambari.hive.db.schema.name</name>
     <value>hive</value>
+    <display-name>Database Name</display-name>
     <description>Database name used as the Hive Metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/webhcat-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/webhcat-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/webhcat-site.xml
index 2de5225..023c248 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/webhcat-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/HIVE/configuration/webhcat-site.xml
@@ -27,6 +27,9 @@ limitations under the License.
     <name>templeton.pig.archive</name>
     <value>hdfs:///hdp/apps/${hdp.version}/pig/pig.tar.gz</value>
     <description>The path to the Pig archive in HDFS.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -39,6 +42,9 @@ limitations under the License.
     <name>templeton.hive.archive</name>
     <value>hdfs:///hdp/apps/${hdp.version}/hive/hive.tar.gz</value>
     <description>The path to the Hive archive.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/STORM/configuration/storm-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/STORM/configuration/storm-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/STORM/configuration/storm-site.xml
index 480bef8..8c8db0a 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/STORM/configuration/storm-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.2/services/STORM/configuration/storm-site.xml
@@ -47,6 +47,9 @@
   <property>
     <name>nimbus.childopts</name>
     <value>-Xmx1024m _JAAS_PLACEHOLDER -javaagent:/usr/hdp/current/storm-nimbus/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8649,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-nimbus/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Nimbus_JVM</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -62,6 +65,9 @@
   <property>
     <name>supervisor.childopts</name>
     <value>-Xmx256m _JAAS_PLACEHOLDER -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=56431 -javaagent:/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8650,wireformat31x=true,mode=multicast,config=/usr/hdp/current/storm-supervisor/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Supervisor_JVM</value>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   
    <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HBASE/configuration/hbase-site.xml
index 2939836..77d8fa4 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HBASE/configuration/hbase-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HBASE/configuration/hbase-site.xml
@@ -23,7 +23,11 @@
   <property>
     <name>hbase.master.port</name>
     <value>16000</value>
+    <display-name>HBase Master Port</display-name>
     <description>The port the HBase Master should bind to.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.master.info.port</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HDFS/configuration/hdfs-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HDFS/configuration/hdfs-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HDFS/configuration/hdfs-site.xml
index 5f2db0c..ff28e3e 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HDFS/configuration/hdfs-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/HDFS/configuration/hdfs-site.xml
@@ -25,6 +25,7 @@
   <property>
     <name>nfs.file.dump.dir</name>
     <value>/tmp/.hdfs-nfs</value>
+    <display-name>NFSGateway dump directory</display-name>
     <description>
       This directory is used to temporarily save out-of-order writes before
       writing to HDFS. For each file, the out-of-order writes are dumped after
@@ -36,6 +37,7 @@
   <property>
     <name>nfs.exports.allowed.hosts</name>
     <value>* rw</value>
+    <display-name>Allowed hosts</display-name>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-env.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-env.xml
index 1db1b6e..aa33b0a 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-env.xml
@@ -28,29 +28,52 @@
   <property>
     <name>oozie_hostname</name>
     <value></value>
+    <display-name>Database Host</display-name>
     <description>
       Specify the host on which the OOZIE database is hosted.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_database</name>
     <value>Existing MSSQL Server database with SQL authentication</value>
+    <display-name>Oozie Database</display-name>
     <description>Oozie Server Database.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_data_dir</name>
     <value>c:\hadoop\oozie\data</value>
+    <display-name>Oozie Data Dir</display-name>
     <description>Data directory in which the Oozie DB exists</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_log_dir</name>
     <value>c:\hadoop\logs\oozie</value>
+    <display-name>Oozie Log Dir</display-name>
     <description>Directory for oozie logs</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_pid_dir</name>
     <value>c:\hadoop\run\oozie</value>
+    <display-name>Oozie PID Dir</display-name>
     <description>Directory in which the pid files for oozie reside.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <!-- oozie-env.cmd -->

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-site.xml
index 4e5bb61..9cd163c 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/OOZIE/configuration/oozie-site.xml
@@ -21,9 +21,13 @@
   <property>
     <name>oozie.service.JPAService.jdbc.url</name>
     <value>jdbc:sqlserver://localhost;databaseName=oozie</value>
+    <display-name>Database URL</display-name>
     <description>
       JDBC URL.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie.service.JPAService.create.db.schema</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/STORM/configuration/storm-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/STORM/configuration/storm-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/STORM/configuration/storm-site.xml
index 67cc62d..9d39e67 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/STORM/configuration/storm-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/STORM/configuration/storm-site.xml
@@ -23,6 +23,10 @@
     <name>nimbus.seeds</name>
     <value>localhost</value>
     <description>Comma-delimited list of the hosts running nimbus server.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>topology.min.replication.count.default</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/TEZ/configuration/tez-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/TEZ/configuration/tez-site.xml b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/TEZ/configuration/tez-site.xml
index 8f4ff63..6d66a9c 100644
--- a/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/TEZ/configuration/tez-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDPWIN/2.3/services/TEZ/configuration/tez-site.xml
@@ -24,6 +24,9 @@
     <description>AM view ACLs. This allows the specified users/groups to view the status of the AM and all DAGs that run within this AM.
       Value format: Comma separated list of users, followed by whitespace, followed by a comma separated list of groups.
     </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
index 14c66a2..26253da 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
@@ -18,33 +18,12 @@
 
 package org.apache.ambari.server.api.services;
 
-import static org.easymock.EasyMock.createNiceMock;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.reset;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.FileReader;
-import java.lang.reflect.Field;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-import java.util.UUID;
-
-import javax.persistence.EntityManager;
-
+import com.google.gson.Gson;
+import com.google.inject.AbstractModule;
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+import com.google.inject.util.Modules;
 import junit.framework.Assert;
-
 import org.apache.ambari.server.AmbariException;
 import org.apache.ambari.server.StackAccessException;
 import org.apache.ambari.server.configuration.Configuration;
@@ -96,11 +75,29 @@ import org.junit.rules.TemporaryFolder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.gson.Gson;
-import com.google.inject.AbstractModule;
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-import com.google.inject.util.Modules;
+import javax.persistence.EntityManager;
+import java.io.File;
+import java.io.FileReader;
+import java.lang.reflect.Field;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.UUID;
+
+import static org.easymock.EasyMock.createNiceMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.reset;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
 
 public class AmbariMetaInfoTest {
 
@@ -753,6 +750,7 @@ public class AmbariMetaInfoTest {
     PropertyInfo inheritedProperty = null;
     PropertyInfo newProperty = null;
     PropertyInfo newEnhancedProperty = null;
+    PropertyInfo propertyWithExtraValueAttributes = null;
     PropertyInfo originalProperty = null;
 
     PropertyDependencyInfo propertyDependencyInfo =
@@ -777,6 +775,8 @@ public class AmbariMetaInfoTest {
         newEnhancedProperty = propertyInfo;
       } else if (propertyInfo.getName().equals("yarn.nodemanager.aux-services")) {
         originalProperty = propertyInfo;
+      } else if (propertyInfo.getName().equals("property.with.extra.value.attributes")) {
+        propertyWithExtraValueAttributes = propertyInfo;
       }
     }
 
@@ -815,6 +815,14 @@ public class AmbariMetaInfoTest {
     Assert.assertNull(newEnhancedProperty.getPropertyValueAttributes().getEntries());
     Assert.assertNull(newEnhancedProperty.getPropertyValueAttributes().getEntriesEditable());
 
+    // property with extra value attributes
+    Assert.assertTrue(propertyWithExtraValueAttributes.getPropertyValueAttributes().getEmptyValueValid());
+    Assert.assertTrue(propertyWithExtraValueAttributes.getPropertyValueAttributes().getVisible());
+    Assert.assertTrue(propertyWithExtraValueAttributes.getPropertyValueAttributes().getReadOnly());
+    Assert.assertEquals(Boolean.FALSE, propertyWithExtraValueAttributes.getPropertyValueAttributes().getEditableOnlyAtInstall());
+    Assert.assertEquals(Boolean.FALSE, propertyWithExtraValueAttributes.getPropertyValueAttributes().getOverridable());
+    Assert.assertEquals(Boolean.FALSE, propertyWithExtraValueAttributes.getPropertyValueAttributes().getShowPropertyName());
+
     // Original property
     Assert.assertNotNull(originalProperty);
     Assert.assertEquals("mapreduce.shuffle", originalProperty.getValue());

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-site.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-site.xml
index d26b83e..1c02e86 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-site.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-site.xml
@@ -93,5 +93,19 @@
     </depends-on>
   </property>
 
+  <property>
+    <name>property.with.extra.value.attributes</name>
+    <value>yarn</value>
+    <description> some description. </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <visible>true</visible>
+      <read-only>true</read-only>
+      <editable-only-at-install>false</editable-only-at-install>
+      <overridable>false</overridable>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
+  </property>
+
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/app/assets/test/tests.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/test/tests.js b/ambari-web/app/assets/test/tests.js
index 64ddb30..268e678 100644
--- a/ambari-web/app/assets/test/tests.js
+++ b/ambari-web/app/assets/test/tests.js
@@ -39,7 +39,10 @@ var files = [
   'test/init_test',
   'test/init_model_test',
   'test/app_test',
+  'test/data/HDP2/site_properties_test',
   'test/data/HDP2/secure_mapping_test',
+  'test/data/HDP2.2/site_properties_test',
+  'test/data/HDP2.3/site_properties_test',
   'test/controllers/global/background_operations_test',
   'test/controllers/global/cluster_controller_test',
   'test/controllers/global/update_controller_test',

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/app/data/HDP2.2/site_properties.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/HDP2.2/site_properties.js b/ambari-web/app/data/HDP2.2/site_properties.js
index 019a4eb..d75190f 100644
--- a/ambari-web/app/data/HDP2.2/site_properties.js
+++ b/ambari-web/app/data/HDP2.2/site_properties.js
@@ -45,42 +45,27 @@ var hdp22properties = hdp2properties.filter(function (item) {
 
 hdp22properties.push(
   {
-    "id": "site property",
     "name": "hive.zookeeper.quorum",
-    "displayName": "hive.zookeeper.quorum",
-    "recommendedValue": "localhost:2181",
     "displayType": "multiLine",
-    "isRequired": false,
-    "isVisible": true,
     "serviceName": "HIVE",
     "filename": "hive-site.xml",
     "category": "Advanced hive-site"
   },
   {
-    "id": "site property",
     "name": "hadoop.registry.rm.enabled",
-    "displayName": "hadoop.registry.rm.enabled",
-    "recommendedValue": "false",
     "displayType": "checkbox",
-    "isVisible": true,
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "Advanced yarn-site"
   },
   {
-    "id": "site property",
     "name": "hadoop.registry.zk.quorum",
-    "displayName": "hadoop.registry.zk.quorum",
-    "recommendedValue": "localhost:2181",
-    "isVisible": true,
     "serviceName": "YARN",
     "filename": "yarn-site.xml",
     "category": "Advanced yarn-site"
   },
   {
-    "id": "site property",
     "name": "yarn.timeline-service.leveldb-state-store.path",
-    "displayName": "yarn.timeline-service.leveldb-state-store.path",
     "defaultDirectory": "/hadoop/yarn/timeline",
     "category": "APP_TIMELINE_SERVER",
     "displayType": "directory",
@@ -88,62 +73,26 @@ hdp22properties.push(
     "filename": "yarn-site.xml"
   },
   {
-    "id": "site property",
     "name": "yarn.timeline-service.state-store-class",
-    "displayName": "yarn.timeline-service.state-store-class",
     "category": "APP_TIMELINE_SERVER",
     "serviceName": "YARN",
     "filename": "yarn-site.xml"
   },
   {
-    "id": "site property",
-    "name": "hadoop.security.key.provider.path",
-    "displayName": "hadoop.security.key.provider.path",
-    "defaultValue": "",
-    "isRequired": false,
-    "category": "Advanced core-site",
-    "serviceName": "HDFS",
-    "filename": "core-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "dfs.encryption.key.provider.uri",
-    "displayName": "dfs.encryption.key.provider.uri",
-    "defaultValue": "",
-    "isRequired": false,
-    "category": "Advanced hdfs-site",
-    "serviceName": "HDFS",
-    "filename": "hdfs-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "keyserver_port",
-    "isRequired": false,
-    "category": "Advanced hadoop-env",
-    "serviceName": "HDFS",
-    "filename": "hadoop-env.xml"
-  },
-  {
-    "id": "site property",
     "name": "*.falcon.graph.blueprints.graph",
-    "displayName": "*.falcon.graph.blueprints.graph",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   {
-    "id": "site property",
     "name": "*.falcon.graph.storage.backend",
-    "displayName": "*.falcon.graph.storage.backend",
     "category": "FalconStartupSite",
     "serviceName": "FALCON",
     "filename": "falcon-startup.properties.xml"
   },
   /*********RANGER FOR HDFS************/
   {
-    "id": "site property",
     "name": "XAAUDIT.HDFS.IS_ENABLED",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "dependentConfigPattern": "^XAAUDIT.HDFS",
     "filename": "ranger-hdfs-plugin-properties.xml",
@@ -151,48 +100,35 @@ hdp22properties.push(
     "serviceName": "HDFS"
   },
   {
-    "id": "site property",
     "name": "XAAUDIT.DB.IS_ENABLED",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-hdfs-plugin-properties.xml",
     "category": "Advanced ranger-hdfs-plugin-properties",
     "serviceName": "HDFS"
   },
   {
-    "id": "site property",
     "name": "ranger-hdfs-plugin-enabled",
     "displayType": "checkbox",
-    "displayName": "Enable Ranger for HDFS",
-    "isOverridable": false,
     "filename": "ranger-hdfs-plugin-properties.xml",
     "category": "Advanced ranger-hdfs-plugin-properties",
     "serviceName": "HDFS",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "policy_user",
-    "value": "ambari-qa",
-    "recommendedValue": "ambari-qa",
-    "displayName": "policy User for HDFS",
     "filename": "ranger-hdfs-plugin-properties.xml",
     "category": "Advanced ranger-hdfs-plugin-properties",
     "serviceName": "HDFS"
   },
   {
-    "id": "site property",
     "name": "REPOSITORY_CONFIG_USERNAME",
-    "displayName": "Ranger repository config user",
     "filename": "ranger-hdfs-plugin-properties.xml",
     "category": "Advanced ranger-hdfs-plugin-properties",
     "serviceName": "HDFS"
   },
   /*********RANGER FOR HIVE************/
   {
-    "id": "site property",
     "name": "XAAUDIT.HDFS.IS_ENABLED",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "dependentConfigPattern": "^XAAUDIT.HDFS",
     "filename": "ranger-hive-plugin-properties.xml",
@@ -200,47 +136,34 @@ hdp22properties.push(
     "serviceName": "HIVE"
   },
   {
-    "id": "site property",
     "name": "XAAUDIT.DB.IS_ENABLED",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-hive-plugin-properties.xml",
     "category": "Advanced ranger-hive-plugin-properties",
     "serviceName": "HIVE"
   },
   {
-    "id": "site property",
     "name": "policy_user",
-    "value": "ambari-qa",
-    "recommendedValue": "ambari-qa",
-    "displayName": "policy User for HIVE",
     "filename": "ranger-hive-plugin-properties.xml",
     "category": "Advanced ranger-hive-plugin-properties",
     "serviceName": "HIVE"
   },
   {
-    "id": "site property",
     "name": "REPOSITORY_CONFIG_USERNAME",
-    "displayName": "Ranger repository config user",
     "filename": "ranger-hive-plugin-properties.xml",
     "category": "Advanced ranger-hive-plugin-properties",
     "serviceName": "HIVE"
   },
   {
-    "id": "site property",
     "name": "UPDATE_XAPOLICIES_ON_GRANT_REVOKE",
-    "recommendedValue": true,
     "displayType": "checkbox",
-    "displayName": "Should Hive GRANT/REVOKE update XA policies?",
     "filename": "ranger-hive-plugin-properties.xml",
     "category": "Advanced ranger-hive-plugin-properties",
     "serviceName": "HIVE"
   },
   /*********RANGER FOR HBASE************/
   {
-    "id": "site property",
     "name": "XAAUDIT.HDFS.IS_ENABLED",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "dependentConfigPattern": "^XAAUDIT.HDFS",
     "filename": "ranger-hbase-plugin-properties.xml",
@@ -248,48 +171,34 @@ hdp22properties.push(
     "serviceName": "HBASE"
   },
   {
-    "id": "site property",
     "name": "XAAUDIT.DB.IS_ENABLED",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-hbase-plugin-properties.xml",
     "category": "Advanced ranger-hbase-plugin-properties",
     "serviceName": "HBASE"
   },
   {
-    "id": "site property",
     "name": "ranger-hbase-plugin-enabled",
     "displayType": "checkbox",
-    "displayName": "Enable Ranger for HBASE",
-    "isOverridable": false,
     "filename": "ranger-hbase-plugin-properties.xml",
     "category": "Advanced ranger-hbase-plugin-properties",
     "serviceName": "HBASE",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "policy_user",
-    "value": "ambari-qa",
-    "recommendedValue": "ambari-qa",
-    "displayName": "policy User for HBASE",
     "filename": "ranger-hbase-plugin-properties.xml",
     "category": "Advanced ranger-hbase-plugin-properties",
     "serviceName": "HBASE"
   },
   {
-    "id": "site property",
     "name": "REPOSITORY_CONFIG_USERNAME",
-    "displayName": "Ranger repository config user",
     "filename": "ranger-hbase-plugin-properties.xml",
     "category": "Advanced ranger-hbase-plugin-properties",
     "serviceName": "HBASE"
   },
   {
-    "id": "site property",
     "name": "UPDATE_XAPOLICIES_ON_GRANT_REVOKE",
-    "recommendedValue": true,
-    "displayName": "Should HBase GRANT/REVOKE update XA policies?",
     "displayType": "checkbox",
     "filename": "ranger-hbase-plugin-properties.xml",
     "category": "Advanced ranger-hbase-plugin-properties",
@@ -297,9 +206,7 @@ hdp22properties.push(
   },
   /*********RANGER FOR STORM************/
   {
-    "id": "site property",
     "name": "XAAUDIT.HDFS.IS_ENABLED",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "dependentConfigPattern": "^XAAUDIT.HDFS",
     "filename": "ranger-storm-plugin-properties.xml",
@@ -307,48 +214,35 @@ hdp22properties.push(
     "serviceName": "STORM"
   },
   {
-    "id": "site property",
     "name": "XAAUDIT.DB.IS_ENABLED",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-storm-plugin-properties.xml",
     "category": "Advanced ranger-storm-plugin-properties",
     "serviceName": "STORM"
   },
   {
-    "id": "site property",
     "name": "ranger-storm-plugin-enabled",
     "displayType": "checkbox",
-    "displayName": "Enable Ranger for STORM",
-    "isOverridable": false,
     "filename": "ranger-storm-plugin-properties.xml",
     "category": "Advanced ranger-storm-plugin-properties",
     "serviceName": "STORM",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "policy_user",
-    "value": "ambari-qa",
-    "recommendedValue": "ambari-qa",
-    "displayName": "policy User for STORM",
     "filename": "ranger-storm-plugin-properties.xml",
     "category": "Advanced ranger-storm-plugin-properties",
     "serviceName": "STORM"
   },
   {
-    "id": "site property",
     "name": "REPOSITORY_CONFIG_USERNAME",
-    "displayName": "Ranger repository config user",
     "filename": "ranger-storm-plugin-properties.xml",
     "category": "Advanced ranger-storm-plugin-properties",
     "serviceName": "STORM"
   },
   /*********RANGER FOR KNOX************/
   {
-    "id": "site property",
     "name": "XAAUDIT.HDFS.IS_ENABLED",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "dependentConfigPattern": "^XAAUDIT.HDFS",
     "filename": "ranger-knox-plugin-properties.xml",
@@ -356,98 +250,60 @@ hdp22properties.push(
     "serviceName": "KNOX"
   },
   {
-    "id": "site property",
     "name": "XAAUDIT.DB.IS_ENABLED",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-knox-plugin-properties.xml",
     "category": "Advanced ranger-knox-plugin-properties",
     "serviceName": "KNOX"
   },
   {
-    "id": "site property",
     "name": "ranger-knox-plugin-enabled",
     "displayType": "checkbox",
-    "displayName": "Enable Ranger for KNOX",
-    "isOverridable": false,
     "filename": "ranger-knox-plugin-properties.xml",
     "category": "Advanced ranger-knox-plugin-properties",
     "serviceName": "KNOX",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "policy_user",
-    "value": "ambari-qa",
-    "recommendedValue": "ambari-qa",
-    "displayName": "policy User for KNOX",
     "filename": "ranger-knox-plugin-properties.xml",
     "category": "Advanced ranger-knox-plugin-properties",
     "serviceName": "KNOX"
   },
   {
-    "id": "site property",
     "name": "REPOSITORY_CONFIG_USERNAME",
-    "displayName": "Ranger repository config user",
     "filename": "ranger-knox-plugin-properties.xml",
     "category": "Advanced ranger-knox-plugin-properties",
     "serviceName": "KNOX"
   },
   /**********************************************SPARK***************************************/
   {
-    "id": "site property",
     "name": "spark.driver.extraJavaOptions",
-    "displayName": "spark.driver.extraJavaOptions",
-    "recommendedValue": "",
-    "isRequired": false,
     "category": "Advanced spark-defaults",
     "serviceName": "SPARK",
     "filename": "spark-defaults.xml"
   },
   {
-    "id": "site property",
     "name": "spark.yarn.am.extraJavaOptions",
-    "displayName": "spark.yarn.am.extraJavaOptions",
-    "recommendedValue": "",
-    "isRequired": false,
     "category": "Advanced spark-defaults",
     "serviceName": "SPARK",
     "filename": "spark-defaults.xml"
   },
   /**********************************************RANGER***************************************/
   {
-    "id": "site property",
     "name": "ranger_admin_password",
-    "displayName": "Ranger Admin user's password for Ambari",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "password",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-env.xml",
     "category": "AdminSettings"
   },
   {
-    "id": "site property",
     "name": "SQL_CONNECTOR_JAR",
-    "displayName": "Location of Sql Connector Jar",
-    "recommendedValue": "/usr/share/java/mysql-connector-java.jar",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "AdminSettings"
   },
   {
-    "id": "site property",
     "name": "DB_FLAVOR",
-    "displayName": "DB FLAVOR",
-    "value": "MYSQL",
-    "recommendedValue": "MYSQL",
-    "isReconfigurable": true,
     "options": [
       {
         displayName: 'MYSQL'
@@ -458,77 +314,40 @@ hdp22properties.push(
     ],
     "displayType": "radio button",
     "radioName": "RANGER DB_FLAVOR",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "SQL_COMMAND_INVOKER",
-    "displayName": "SQL Command Invoker",
-    "recommendedValue": "mysql",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings"
   },
   {
-    "id": "site property",
     "name": "db_host",
-    "displayName": "Ranger DB host",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 2
   },
   {
-    "id": "site property",
     "name": "db_root_user",
-    "displayName": "Ranger DB root user",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 5
   },
   {
-    "id": "site property",
     "name": "db_root_password",
-    "displayName": "Ranger DB root password",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "password",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 6
   },
   {
-    "id": "site property",
     "name": "db_name",
-    "displayName": "Ranger DB name",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
@@ -536,132 +355,67 @@ hdp22properties.push(
   },
 
   {
-    "id": "site property",
     "name": "db_user",
-    "displayName": "Ranger DB username",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 3
   },
   {
-    "id": "site property",
     "name": "db_password",
-    "displayName": "Ranger DB password",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "password",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 4
   },
   {
-    "id": "site property",
     "name": "audit_db_name",
-    "displayName": "Ranger Audit DB name",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 11
   },
   {
-    "id": "site property",
     "name": "audit_db_user",
-    "displayName": "Ranger Audit DB username",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 12
   },
   {
-    "id": "site property",
     "name": "audit_db_password",
-    "displayName": "Ranger Audit DB password",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "password",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 13
   },
   {
-    "id": "puppet var",
     "name": "policymgr_external_url",
-    "displayName": "External URL",
-    "recommendedValue": "http://localhost:6080",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "puppet var",
     "name": "policymgr_http_enabled",
-    "displayName": "HTTP enabled",
-    "recommendedValue": true,
-    "isReconfigurable": true,
     "displayType": "checkbox",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "puppet var",
     "name": "ranger_user",
-    "displayName": "Used to create user and assign permission",
-    "recommendedValue": "ranger",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-env.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "puppet var",
     "name": "ranger_group",
-    "displayName": "Used to create group and assign permission",
-    "recommendedValue": "ranger",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-env.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "site property",
     "name": "authentication_method",
-    "displayName": "Authentication method",
-    "recommendedValue": "NONE",
     "options": [
       {
         displayName: 'LDAP',
@@ -681,232 +435,137 @@ hdp22properties.push(
     ],
     "displayType": "radio button",
     "radioName": "authentication-method",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "site property",
     "name": "remoteLoginEnabled",
-    "displayName": "Allow remote Login",
-    "recommendedValue": true,
-    "isReconfigurable": true,
     "displayType": "checkbox",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "UnixAuthenticationSettings"
   },
   {
-    "id": "site property",
     "name": "authServiceHostName",
-    "displayName": "authServiceHostName",
-    "recommendedValue": 'localhost',
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "UnixAuthenticationSettings"
   },
   {
-    "id": "site property",
     "name": "authServicePort",
-    "displayName": "authServicePort",
-    "recommendedValue": '5151',
-    "isReconfigurable": true,
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "UnixAuthenticationSettings"
   },
   {
-    "id": "site property",
     "name": "xa_ldap_url",
-    "displayName": "xa_ldap_url",
-    "isReconfigurable": true,
     "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "xa_ldap_userDNpattern",
-    "displayName": "xa_ldap_userDNpattern",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "xa_ldap_groupRoleAttribute",
-    "displayName": "xa_ldap_groupRoleAttribute",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "xa_ldap_ad_domain",
-    "displayName": "xa_ldap_ad_domain",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "ADSettings"
   },
   {
-    "id": "site property",
     "name": "xa_ldap_ad_url",
-    "displayName": "xa_ldap_ad_url",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "ADSettings"
   },
   {
-    "id": "site property",
     "name": "common.name.for.certificate",
-    "displayName": "common.name.for.certificate",
     "category": "Advanced ranger-hdfs-plugin-properties",
-    "isRequired": false,
     "serviceName": "HDFS",
     "filename": "ranger-hdfs-plugin-properties.xml"
   },
   {
-    "id": "site property",
     "name": "hadoop.rpc.protection",
-    "displayName": "hadoop.rpc.protection",
     "category": "Advanced ranger-hdfs-plugin-properties",
-    "isRequired": false,
     "serviceName": "HDFS",
     "filename": "ranger-hdfs-plugin-properties.xml"
   },  
   {
-    "id": "site property",
     "name": "common.name.for.certificate",
-    "displayName": "common.name.for.certificate",
-    "category": "Advanced ranger-hive-plugin-properties",
-    "isRequired": false,
     "serviceName": "HIVE",
     "filename": "ranger-hive-plugin-properties.xml"
   },
   {
-    "id": "site property",
     "name": "common.name.for.certificate",
-    "displayName": "common.name.for.certificate",
     "category": "Advanced ranger-hbase-plugin-properties",
-    "isRequired": false,
     "serviceName": "HBASE",
     "filename": "ranger-hbase-plugin-properties.xml"
   },
   {
-    "id": "site property",
     "name": "common.name.for.certificate",
-    "displayName": "common.name.for.certificate",
     "category": "Advanced ranger-knox-plugin-properties",
-    "isRequired": false,
     "serviceName": "KNOX",
     "filename": "ranger-knox-plugin-properties.xml"
   },
   {
-    "id": "site property",
     "name": "common.name.for.certificate",
-    "displayName": "common.name.for.certificate",
     "category": "Advanced ranger-storm-plugin-properties",
-    "isRequired": false,
     "serviceName": "STORM",
     "filename": "ranger-storm-plugin-properties.xml"
   },
   {
-    "id": "site property",
     "name": "SYNC_LDAP_USER_SEARCH_FILTER",
-    "displayName": "SYNC_LDAP_USER_SEARCH_FILTER",
     "category": "Advanced usersync-properties",
-    "isRequired": false,
     "serviceName": "RANGER",
     "filename": "usersync-properties.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.bucketcache.ioengine",
-    "displayName": "hbase.bucketcache.ioengine",
-    "isRequired": false,
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "category": "Advanced hbase-site"
   },
   {
-    "id": "site property",
     "name": "hbase.bucketcache.size",
-    "displayName": "hbase.bucketcache.size",
     "displayType": "int",
-    "isRequired": false,
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "category": "Advanced hbase-site"
   },
   {
-    "id": "site property",
     "name": "hbase.bucketcache.percentage.in.combinedcache",
-    "displayName": "hbase.bucketcache.percentage.in.combinedcache",
     "displayType": "float",
-    "isRequired": false,
     "serviceName": "HBASE",
     "filename": "hbase-site.xml",
     "category": "Advanced hbase-site"
   },
   {
-    "id": "site property",
     "name": "hbase_max_direct_memory_size",
-    "displayName": "HBase off-heap MaxDirectMemorySize",
     "displayType": "int",
-    "isRequired": false,
     "serviceName": "HBASE",
     "filename": "hbase-env.xml",
     "category": "Advanced hbase-env"
   },
   {
-    "id": "site property",
-    "name": "hbase.regionserver.global.memstore.size",
-    "displayName": "hbase.regionserver.global.memstore.size",
-    "category": "Advanced hbase-site",
-    "serviceName": "HBASE",
-    "filename": "hbase-site.xml"
-  },
-  {
-  "id": "site property",
     "name": "hbase.region.server.rpc.scheduler.factory.class",
-    "displayName": "hbase.region.server.rpc.scheduler.factory.class",
-    "defaultValue": "",
-    "isRequired": false,
     "category": "Advanced hbase-site",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"
   },
   {
-    "id": "site property",
     "name": "hbase.rpc.controllerfactory.class",
-    "displayName": "hbase.rpc.controllerfactory.class",
-    "defaultValue": "",
-    "isRequired": false,
     "category": "Advanced hbase-site",
     "serviceName": "HBASE",
     "filename": "hbase-site.xml"

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-web/app/data/HDP2.3/site_properties.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/HDP2.3/site_properties.js b/ambari-web/app/data/HDP2.3/site_properties.js
index 5a25ecb..54ac937 100644
--- a/ambari-web/app/data/HDP2.3/site_properties.js
+++ b/ambari-web/app/data/HDP2.3/site_properties.js
@@ -67,12 +67,7 @@ var hdp23properties = hdp22properties.filter(function (item) {
 });
 
 hdp23properties.push({
-    "id": "site property",
     "name": "DB_FLAVOR",
-    "displayName": "DB FLAVOR",
-    "value": "",
-    "recommendedValue": "",
-    "isReconfigurable": true,
     "options": [
       {
         displayName: 'MYSQL'
@@ -92,22 +87,13 @@ hdp23properties.push({
     ],
     "displayType": "radio button",
     "radioName": "RANGER DB_FLAVOR",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "db_host",
-    "displayName": "Ranger DB host",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
@@ -115,14 +101,12 @@ hdp23properties.push({
   },
   {
     "name": "rangerserver_host",
-    "id": "puppet var",
     "displayName": "Ranger Server host",
     "value": "",
     "recommendedValue": "",
     "description": "The host that has been assigned to run Ranger Server",
     "displayType": "masterHost",
     "isOverridable": false,
-    "isVisible": true,
     "isRequiredByAgent": false,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
@@ -130,9 +114,7 @@ hdp23properties.push({
     "index": 0
   },
   {
-    "id": "site property",
     "name": "create_db_dbuser",
-    "displayName": "Setup DB and DB user",
     "displayType": "checkbox",
     "filename": "ranger-env.xml",
     "category": "Advanced ranger-env",
@@ -140,348 +122,247 @@ hdp23properties.push({
   },
   /**************************************** RANGER - HDFS Plugin ***************************************/
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.db",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-hdfs-audit.xml",
     "category": "Advanced ranger-hdfs-audit",
     "serviceName": "HDFS"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.hdfs",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "filename": "ranger-hdfs-audit.xml",
     "category": "Advanced ranger-hdfs-audit",
     "serviceName": "HDFS"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.solr",
-    "displayName": "Audit to SOLR",
     "displayType": "checkbox",
     "filename": "ranger-hdfs-audit.xml",
     "category": "Advanced ranger-hdfs-audit",
     "serviceName": "HDFS"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.db",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-kms-audit.xml",
     "category": "Advanced ranger-kms-audit",
     "serviceName": "RANGER_KMS"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.hdfs",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "filename": "ranger-kms-audit.xml",
     "category": "Advanced ranger-kms-audit",
     "serviceName": "RANGER_KMS"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.solr",
-    "displayName": "Audit to SOLR",
     "displayType": "checkbox",
     "filename": "ranger-kms-audit.xml",
     "category": "Advanced ranger-kms-audit",
     "serviceName": "RANGER_KMS"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.provider.summary.enabled",
-    "displayName": "Audit provider summary enabled",
     "displayType": "checkbox",
     "filename": "ranger-kms-audit.xml",
     "category": "Advanced ranger-kms-audit",
     "serviceName": "RANGER_KMS"
   },        
   {
-    "id": "site property",
     "name": "ranger-yarn-plugin-enabled",
     "displayType": "checkbox",
-    "displayName": "Enable Ranger for YARN",
-    "isOverridable": false,
     "filename": "ranger-yarn-plugin-properties.xml",
     "category": "Advanced ranger-yarn-plugin-properties",
     "serviceName": "YARN",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "ranger-kafka-plugin-enabled",
     "displayType": "checkbox",
-    "displayName": "Enable Ranger for KAFKA",
-    "isOverridable": false,
     "filename": "ranger-kafka-plugin-properties.xml",
     "category": "Advanced ranger-kafka-plugin-properties",
     "serviceName": "KAFKA",
     "index": 1
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.db",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-hbase-audit.xml",
     "category": "Advanced ranger-hbase-audit",
     "serviceName": "HBASE"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.hdfs",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "filename": "ranger-hbase-audit.xml",
     "category": "Advanced ranger-hbase-audit",
     "serviceName": "HBASE"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.solr",
-    "displayName": "Audit to SOLR",
     "displayType": "checkbox",
     "filename": "ranger-hbase-audit.xml",
     "category": "Advanced ranger-hbase-audit",
     "serviceName": "HBASE"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.db",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-hive-audit.xml",
     "category": "Advanced ranger-hive-audit",
     "serviceName": "HIVE"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.hdfs",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "filename": "ranger-hive-audit.xml",
     "category": "Advanced ranger-hive-audit",
     "serviceName": "HIVE"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.solr",
-    "displayName": "Audit to SOLR",
     "displayType": "checkbox",
     "filename": "ranger-hive-audit.xml",
     "category": "Advanced ranger-hive-audit",
     "serviceName": "HIVE"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.db",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-knox-audit.xml",
     "category": "Advanced ranger-knox-audit",
     "serviceName": "KNOX"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.hdfs",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "filename": "ranger-knox-audit.xml",
     "category": "Advanced ranger-knox-audit",
     "serviceName": "KNOX"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.solr",
-    "displayName": "Audit to SOLR",
     "displayType": "checkbox",
     "filename": "ranger-knox-audit.xml",
     "category": "Advanced ranger-knox-audit",
     "serviceName": "KNOX"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.db",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-storm-audit.xml",
     "category": "Advanced ranger-storm-audit",
     "serviceName": "STORM"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.hdfs",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "filename": "ranger-storm-audit.xml",
     "category": "Advanced ranger-storm-audit",
     "serviceName": "STORM"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.solr",
-    "displayName": "Audit to SOLR",
     "displayType": "checkbox",
     "filename": "ranger-storm-audit.xml",
     "category": "Advanced ranger-storm-audit",
     "serviceName": "STORM"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.db",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-yarn-audit.xml",
     "category": "Advanced ranger-yarn-audit",
     "serviceName": "YARN"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.hdfs",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "filename": "ranger-yarn-audit.xml",
     "category": "Advanced ranger-yarn-audit",
     "serviceName": "YARN"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.solr",
-    "displayName": "Audit to SOLR",
     "displayType": "checkbox",
     "filename": "ranger-yarn-audit.xml",
     "category": "Advanced ranger-yarn-audit",
     "serviceName": "YARN"
   },
   {
-    "id": "site property",
     "name": "nimbus.seeds",
-    "displayName": "nimbus.seeds",
-    "isReconfigurable": false,
-    "isOverridable": false,
     "displayType": "masterHosts",
     "serviceName": "STORM",
     "filename": "storm-site.xml",
     "category": "NIMBUS"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.db",
-    "displayName": "Audit to DB",
     "displayType": "checkbox",
     "filename": "ranger-kafka-audit.xml",
     "category": "Advanced ranger-kafka-audit",
     "serviceName": "KAFKA"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.hdfs",
-    "displayName": "Audit to HDFS",
     "displayType": "checkbox",
     "filename": "ranger-kafka-audit.xml",
     "category": "Advanced ranger-kafka-audit",
     "serviceName": "KAFKA"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.destination.solr",
-    "displayName": "Audit to SOLR",
     "displayType": "checkbox",
     "filename": "ranger-kafka-audit.xml",
     "category": "Advanced ranger-kafka-audit",
     "serviceName": "KAFKA"
   },
   {
-    "id": "site property",
-    "name": "hadoop.rpc.protection",
-    "displayName": "hadoop.rpc.protection",
-    "isRequired": false,
-    "filename": "ranger-kafka-plugin-properties.xml",
-    "category": "Advanced ranger-kafka-plugin-properties",
-    "serviceName": "KAFKA"
-  },
-  {
-    "id": "site property",
-    "name": "common.name.for.certificate",
-    "displayName": "common.name.for.certificate",
-    "isRequired": false,
-    "filename": "ranger-kafka-plugin-properties.xml",
-    "category": "Advanced ranger-kafka-plugin-properties",
-    "serviceName": "KAFKA"
-  },
-  {
-    "id": "site property",
-    "name": "hadoop.rpc.protection",
-    "displayName": "hadoop.rpc.protection",
-    "isRequired": false,
-    "filename": "ranger-yarn-plugin-properties.xml",
-    "category": "Advanced ranger-yarn-plugin-properties",
-    "serviceName": "YARN"
-  },
-  {
-    "id": "site property",
     "name": "xasecure.audit.provider.summary.enabled",
-    "displayName": "Audit provider summary enabled",
     "displayType": "checkbox",
     "filename": "ranger-hdfs-audit.xml",
     "category": "Advanced ranger-hdfs-audit",
     "serviceName": "HDFS"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.provider.summary.enabled",
-    "displayName": "Audit provider summary enabled",
     "displayType": "checkbox",
     "filename": "ranger-hbase-audit.xml",
     "category": "Advanced ranger-hbase-audit",
     "serviceName": "HBASE"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.provider.summary.enabled",
-    "displayName": "Audit provider summary enabled",
     "displayType": "checkbox",
     "filename": "ranger-hive-audit.xml",
     "category": "Advanced ranger-hive-audit",
     "serviceName": "HIVE"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.provider.summary.enabled",
-    "displayName": "Audit provider summary enabled",
     "displayType": "checkbox",
     "filename": "ranger-knox-audit.xml",
     "category": "Advanced ranger-knox-audit",
     "serviceName": "KNOX"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.provider.summary.enabled",
-    "displayName": "Audit provider summary enabled",
     "displayType": "checkbox",
     "filename": "ranger-yarn-audit.xml",
     "category": "Advanced ranger-yarn-audit",
     "serviceName": "YARN"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.provider.summary.enabled",
-    "displayName": "Audit provider summary enabled",
     "displayType": "checkbox",
     "filename": "ranger-storm-audit.xml",
     "category": "Advanced ranger-storm-audit",
     "serviceName": "STORM"
   },
   {
-    "id": "site property",
     "name": "xasecure.audit.provider.summary.enabled",
-    "displayName": "Audit provider summary enabled",
     "displayType": "checkbox",
     "filename": "ranger-kafka-audit.xml",
     "category": "Advanced ranger-kafka-audit",
@@ -489,13 +370,6 @@ hdp23properties.push({
   },
   {
     "name": "ranger.jpa.jdbc.url",
-    "id": "site property",
-    "displayName": "JDBC connect string for a Ranger database",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "DBSettings",
@@ -503,13 +377,6 @@ hdp23properties.push({
   },
   {
     "name": "ranger.jpa.jdbc.driver",
-    "id": "site property",
-    "displayName": "Driver class name for a JDBC Ranger database",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "DBSettings",
@@ -517,13 +384,6 @@ hdp23properties.push({
   },
   {
     "name": "db_root_user",
-    "id": "site property",
-    "displayName": "Ranger DB root user",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
@@ -531,13 +391,6 @@ hdp23properties.push({
   },
   {
     "name": "db_root_password",
-    "id": "site property",
-    "displayName": "Ranger DB root password",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "password",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
@@ -545,58 +398,26 @@ hdp23properties.push({
   },
   {
     "name": "db_name",
-    "id": "site property",
-    "displayName": "Ranger DB name",
-    "recommendedValue": "",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "DBSettings",
     "index": 7
   },
   {
-    "id": "site property",
-    "name": "tez.am.view-acls",
-    "displayName": "tez.am.view-acls",
-    "isRequired": false,
-    "serviceName": "TEZ",
-    "filename": "tez-site.xml",
-    "category": "Advanced tez-site"
-  },
-  {
-    "id": "puppet var",
     "name": "ranger.externalurl",
-    "displayName": "External URL",
-    "recommendedValue": "http://localhost:6080",
-    "isReconfigurable": true,
-    "displayType": "",
-    "isOverridable": false,
-    "isVisible": false,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "puppet var",
     "name": "ranger.service.http.enabled",
-    "displayName": "HTTP enabled",
-    "recommendedValue": true,
-    "isReconfigurable": true,
     "displayType": "checkbox",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.authentication.method",
-    "displayName": "Authentication method",
-    "recommendedValue": "NONE",
     "options": [
       {
         displayName: 'LDAP',
@@ -616,358 +437,129 @@ hdp23properties.push({
     ],
     "displayType": "radio button",
     "radioName": "authentication-method",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "site property",
     "name": "policymgr_external_url",
-    "displayName": "External URL",
-    "isOverridable": false,
     "serviceName": "RANGER",
     "filename": "admin-properties.xml",
     "category": "RangerSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.unixauth.remote.login.enabled",
-    "displayName": "Allow remote Login",
-    "recommendedValue": true,
-    "isReconfigurable": true,
     "displayType": "checkbox",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "UnixAuthenticationSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.unixauth.service.hostname",
-    "displayName": "ranger.unixauth.service.hostname",
-    "recommendedValue": 'localhost',
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "UnixAuthenticationSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.unixauth.service.port",
-    "displayName": "ranger.unixauth.service.port",
-    "recommendedValue": '5151',
-    "isReconfigurable": true,
     "displayType": "int",
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "UnixAuthenticationSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.url",
-    "displayName": "ranger.ldap.url",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.user.dnpattern",
-    "displayName": "ranger.ldap.user.dnpattern",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.group.roleattribute",
-    "displayName": "ranger.ldap.group.roleattribute",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.base.dn",
-    "displayName": "ranger.ldap.base.dn",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.bind.dn",
-    "displayName": "ranger.ldap.bind.dn",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.bind.password",
-    "displayName": "ranger.ldap.bind.password",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.referral",
-    "displayName": "ranger.ldap.referral",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.user.searchfilter",
-    "displayName": "ranger.ldap.user.searchfilter",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "LDAPSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.ad.domain",
-    "displayName": "ranger.ldap.ad.domain",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "ADSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.ad.url",
-    "displayName": "ranger.ldap.ad.url",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "ADSettings"
-  },{
-    "id": "site property",
+  },
+  {
     "name": "ranger.ldap.ad.base.dn",
-    "displayName": "ranger.ldap.ad.base.dn",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "ADSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.ad.bind.dn",
-    "displayName": "ranger.ldap.ad.bind.dn",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "ADSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.ad.bind.password",
-    "displayName": "ranger.ldap.ad.bind.password",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "ADSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.ad.referral",
-    "displayName": "ranger.ldap.ad.referral",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "ADSettings"
   },
   {
-    "id": "site property",
     "name": "ranger.ldap.ad.user.searchfilter",
-    "displayName": "ranger.ldap.ad.user.searchfilter",
-    "isReconfigurable": true,
-    "isOverridable": false,
-    "isVisible": true,
     "serviceName": "RANGER",
     "filename": "ranger-admin-site.xml",
     "category": "ADSettings"
   },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.ldap.bindkeystore",
-    "displayName": "ranger.usersync.ldap.bindkeystore",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.ldap.ldapbindpassword",
-    "displayName": "ranger.usersync.ldap.ldapbindpassword",
-    "displayType": "password",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.group.memberattributename",
-    "displayName": "ranger.usersync.group.memberattributename",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.group.nameattribute",
-    "displayName": "ranger.usersync.group.nameattribute",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.group.objectclass",
-    "displayName": "ranger.usersync.group.objectclass",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.group.searchbase",
-    "displayName": "ranger.usersync.group.searchbase",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.group.searchenabled",
-    "displayName": "ranger.usersync.group.searchenabled",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.group.searchfilter",
-    "displayName": "ranger.usersync.group.searchfilter",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.group.searchscope",
-    "displayName": "ranger.usersync.group.searchscope",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.group.usermapsyncenabled",
-    "displayName": "ranger.usersync.group.usermapsyncenabled",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.ldap.searchBase",
-    "displayName": "ranger.usersync.ldap.searchBase",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.source.impl.class",
-    "displayName": "ranger.usersync.source.impl.class",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "ranger.usersync.ldap.referral",
-    "displayName": "ranger.usersync.ldap.referral",
-    "category": "Advanced ranger-ugsync-site",
-    "isRequired": false,
-    "serviceName": "RANGER",
-    "filename": "ranger-ugsync-site.xml"
-  },
-  {
-    "id": "site property",
-    "name": "common.name.for.certificate",
-    "displayName": "common.name.for.certificate",
-    "category": "Advanced ranger-yarn-plugin-properties",
-    "isRequired": false,
-    "serviceName": "YARN",
-    "filename": "ranger-yarn-plugin-properties.xml"
-  },
-
   /*********RANGER FOR HBASE************/
   {
-    "id": "site property",
     "name": "xasecure.hbase.update.xapolicies.on.grant.revoke",
-    "recommendedValue": true,
-    "displayName": "Should HBase GRANT/REVOKE update XA policies?",
     "displayType": "checkbox",
     "filename": "ranger-hbase-security.xml",
     "category": "Advanced ranger-hbase-security",
@@ -975,10 +567,7 @@ hdp23properties.push({
   },
   /*********RANGER FOR HIVE************/
   {
-    "id": "site property",
     "name": "xasecure.hive.update.xapolicies.on.grant.revoke",
-    "recommendedValue": true,
-    "displayName": "Should Hive GRANT/REVOKE update XA policies?",
     "displayType": "checkbox",
     "filename": "ranger-hive-security.xml",
     "category": "Advanced ranger-hive-security",


[5/6] ambari git commit: AMBARI-13069. Attributes of configuration property should be stack API driven. (jaimin)

Posted by ja...@apache.org.
http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/knox-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/knox-env.xml b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/knox-env.xml
index bbd3d12..1d32afd 100644
--- a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/knox-env.xml
+++ b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/knox-env.xml
@@ -21,33 +21,43 @@
 -->
 
 <configuration supports_final="false">
-    <!-- knox-env.sh -->
+  <!-- knox-env.sh -->
 
-    <property require-input="true">
-        <name>knox_master_secret</name>
-        <value></value>
-        <property-type>PASSWORD</property-type>
-        <description>password to use as the master secret</description>
-    </property>
+  <property require-input="true">
+    <name>knox_master_secret</name>
+    <value></value>
+    <display-name>Knox Master Secret</display-name>
+    <property-type>PASSWORD</property-type>
+    <description>password to use as the master secret</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
+  </property>
 
-    <property>
-        <name>knox_user</name>
-        <value>knox</value>
-        <property-type>USER</property-type>
-        <description>Knox Username.</description>
-    </property>
+  <property>
+    <name>knox_user</name>
+    <value>knox</value>
+    <property-type>USER</property-type>
+    <description>Knox Username.</description>
+  </property>
 
-    <property>
-        <name>knox_group</name>
-        <value>knox</value>
-        <property-type>GROUP</property-type>
-        <description>Knox Group.</description>
-    </property>
+  <property>
+    <name>knox_group</name>
+    <value>knox</value>
+    <property-type>GROUP</property-type>
+    <description>Knox Group.</description>
+  </property>
 
-    <property>
-        <name>knox_pid_dir</name>
-        <value>/var/run/knox</value>
-        <description>Knox PID dir.</description>
-    </property>
+  <property>
+    <name>knox_pid_dir</name>
+    <value>/var/run/knox</value>
+    <display-name>Knox PID dir</display-name>
+    <description>Knox PID dir.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
+  </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ldap-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ldap-log4j.xml b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ldap-log4j.xml
index a0cf658..ce66fbf 100644
--- a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ldap-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ldap-log4j.xml
@@ -62,5 +62,8 @@
     <description>
       content for log4j.properties file for the demo LDAP that comes with Knox.
     </description>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ranger-knox-plugin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ranger-knox-plugin-properties.xml b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ranger-knox-plugin-properties.xml
index 8bf1dd3..6291b64 100644
--- a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ranger-knox-plugin-properties.xml
+++ b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/ranger-knox-plugin-properties.xml
@@ -23,6 +23,7 @@
   <property>
     <name>policy_user</name>
     <value>ambari-qa</value>
+    <display-name>policy User for KNOX</display-name>
     <description>This user must be system user and also present at Ranger admin portal</description>
   </property> 
 
@@ -30,17 +31,25 @@
     <name>common.name.for.certificate</name>
     <value></value>
     <description>Used for repository creation on ranger admin</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger-knox-plugin-enabled</name>
     <value>No</value>
+    <display-name>Enable Ranger for KNOX</display-name>
     <description>Enable ranger knox plugin ?</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>REPOSITORY_CONFIG_USERNAME</name>
     <value>admin</value>
+    <display-name>Ranger repository config user</display-name>
     <description>Used for repository creation on ranger admin</description>
   </property> 
 
@@ -60,12 +69,14 @@
   <property>
     <name>XAAUDIT.DB.IS_ENABLED</name>
     <value>true</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
   <property>
     <name>XAAUDIT.HDFS.IS_ENABLED</name>
     <value>false</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/topology.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/topology.xml b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/topology.xml
index 89527b3..eae1f34 100644
--- a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/topology.xml
+++ b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/topology.xml
@@ -118,5 +118,9 @@
     <description>
         The configuration specifies the Hadoop cluster services Knox will provide access to.
     </description>
+    <value-attributes>
+       <empty-value-valid>true</empty-value-valid>
+       <show-property-name>false</show-property-name>
+    </value-attributes>
     </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/users-ldif.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/users-ldif.xml b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/users-ldif.xml
index ace4858..0fcc639 100644
--- a/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/users-ldif.xml
+++ b/ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/configuration/users-ldif.xml
@@ -131,5 +131,9 @@ member: uid=sam,ou=people,dc=hadoop,dc=apache,dc=org
         <description>
             content for users-ldif file for the demo LDAP that comes with Knox.
         </description>
+      <value-attributes>
+        <empty-value-valid>true</empty-value-valid>
+        <show-property-name>false</show-property-name>
+      </value-attributes>
     </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/configuration/mahout-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/configuration/mahout-log4j.xml b/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/configuration/mahout-log4j.xml
index c5ee937..594c3c6 100644
--- a/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/configuration/mahout-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/configuration/mahout-log4j.xml
@@ -60,6 +60,9 @@ log4j.logger.org.eclipse.jetty=WARN
 log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=WARN
 log4j.logger.org.apache.spark.repl.SparkILoop$SparkILoopInterpreter=WARN
         </value>
+        <value-attributes>
+            <show-property-name>false</show-property-name>
+        </value-attributes>
     </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-env.xml b/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-env.xml
index bc42bc6..ac7ea04 100644
--- a/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-env.xml
+++ b/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-env.xml
@@ -35,7 +35,11 @@
   <property>
     <name>oozie_database</name>
     <value>New Derby Database</value>
+    <display-name>Oozie Database</display-name>
     <description>Oozie Server Database.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_derby_database</name>
@@ -45,22 +49,41 @@
   <property>
     <name>oozie_data_dir</name>
     <value>/hadoop/oozie/data</value>
+    <display-name>Oozie Data Dir</display-name>
     <description>Data directory in which the Oozie DB exists</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_log_dir</name>
     <value>/var/log/oozie</value>
+    <display-name>Oozie Log Dir</display-name>
     <description>Directory for oozie logs</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_pid_dir</name>
     <value>/var/run/oozie</value>
+    <display-name>Oozie PID Dir</display-name>
     <description>Directory in which the pid files for oozie reside.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_admin_port</name>
     <value>11001</value>
+    <display-name>Oozie Server Admin Port</display-name>
     <description>The admin port Oozie server runs.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>oozie_heapsize</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-log4j.xml b/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-log4j.xml
index 7f7158f..2c48cae 100644
--- a/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-log4j.xml
@@ -92,6 +92,9 @@ log4j.logger.org.mortbay=WARN, oozie
 log4j.logger.org.hsqldb=WARN, oozie
 log4j.logger.org.apache.hadoop.security.authentication.server=INFO, oozie
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-site.xml b/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-site.xml
index 329ac64..10b9324 100644
--- a/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-site.xml
+++ b/ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/configuration/oozie-site.xml
@@ -104,10 +104,14 @@
 
   <property>
     <name>oozie.db.schema.name</name>
+    <display-name>Database Name</display-name>
     <value>oozie</value>
     <description>
       Oozie DataBase Name
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -195,30 +199,43 @@
   <property>
     <name>oozie.service.JPAService.jdbc.driver</name>
     <value>org.apache.derby.jdbc.EmbeddedDriver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>
       JDBC driver class.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>oozie.service.JPAService.jdbc.url</name>
     <value>jdbc:derby:${oozie.data.dir}/${oozie.db.schema.name}-db;create=true</value>
+    <display-name>Database URL</display-name>
     <description>
       JDBC URL.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>oozie.service.JPAService.jdbc.username</name>
     <value>oozie</value>
+    <display-name>Database Username</display-name>
     <description>
       Database user name to use to connect to the database
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input = "true">
     <name>oozie.service.JPAService.jdbc.password</name>
     <value> </value>
+    <display-name>Database Password</display-name>
     <property-type>PASSWORD</property-type>
     <description>
       DB user password.
@@ -226,6 +243,9 @@
       IMPORTANT: if password is emtpy leave a 1 space string, the service trims the value,
       if empty Configuration assumes it is NULL.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/configuration/oozie-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/configuration/oozie-site.xml b/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/configuration/oozie-site.xml
index f449421..e03d08f 100644
--- a/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/configuration/oozie-site.xml
+++ b/ambari-server/src/main/resources/common-services/OOZIE/4.2.0.2.3/configuration/oozie-site.xml
@@ -92,22 +92,31 @@
   <property>
     <name>oozie.db.schema.name</name>
     <value>oozie</value>
+    <display-name>Database Name</display-name>
     <description>
       Oozie DataBase Name
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>oozie.service.JPAService.jdbc.username</name>
     <value>oozie</value>
+    <display-name>Database Username</display-name>
     <description>
       Database user name to use to connect to the database
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
     <name>oozie.service.JPAService.jdbc.password</name>
     <value></value>
+    <display-name>Database Password</display-name>
     <property-type>PASSWORD</property-type>
     <description>
       DB user password.
@@ -115,22 +124,33 @@
       IMPORTANT: if password is emtpy leave a 1 space string, the service trims the value,
       if empty Configuration assumes it is NULL.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>oozie.service.JPAService.jdbc.driver</name>
     <value>org.apache.derby.jdbc.EmbeddedDriver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>
       JDBC driver class.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>oozie.service.JPAService.jdbc.url</name>
     <value>jdbc:derby:${oozie.data.dir}/${oozie.db.schema.name}-db;create=true</value>
+    <display-name>Database URL</display-name>
     <description>
       JDBC URL.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-log4j.xml b/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-log4j.xml
index 4fe323c..4f656f4 100644
--- a/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-log4j.xml
@@ -57,6 +57,9 @@ log4j.appender.A=org.apache.log4j.ConsoleAppender
 log4j.appender.A.layout=org.apache.log4j.PatternLayout
 log4j.appender.A.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-properties.xml b/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-properties.xml
index 7916680..b4217ca 100644
--- a/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-properties.xml
+++ b/ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/configuration/pig-properties.xml
@@ -84,6 +84,10 @@ pig.disable.counter=false
 hcat.bin=/usr/bin/hcat
 
     </value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml
index 0558d21..5fdb1b9 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/admin-properties.xml
@@ -24,124 +24,200 @@
   <property>
     <name>DB_FLAVOR</name>
     <value>MYSQL</value>
+    <display-name>DB FLAVOR</display-name>
     <description>The database type to be used (mysql/oracle)</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>SQL_COMMAND_INVOKER</name>
     <value>mysql</value>
+    <display-name>SQL Command Invoker</display-name>
     <description>The executable path to be used to invoke command-line MYSQL</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>SQL_CONNECTOR_JAR</name>
     <value>/usr/share/java/mysql-connector-java.jar</value>
+    <display-name>Location of Sql Connector Jar</display-name>
     <description>Location of DB client library (please check the location of the jar file)</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>db_root_user</name>
     <value>root</value>
+    <display-name>Ranger DB root user</display-name>
     <description>Database admin user</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
     <name>db_root_password</name>
     <value></value>
     <property-type>PASSWORD</property-type>
+    <display-name>Ranger DB root password</display-name>
     <description>Database password for the database admin user-id</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>db_host</name>
     <value></value>
+    <display-name>Ranger DB host</display-name>
     <description>Database host</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>db_name</name>
     <value>ranger</value>
+    <display-name>Ranger DB name</display-name>
     <description>Database name</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>db_user</name>
     <value>rangeradmin</value>
+    <display-name>Ranger DB username</display-name>
     <description>Database user-id used for the Ranger schema</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
     <name>db_password</name>
     <value></value>
     <property-type>PASSWORD</property-type>
+    <display-name>Ranger DB password</display-name>
     <description>Database password for the Ranger schema</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>audit_db_name</name>
     <value>ranger_audit</value>
     <description>Audit database name</description>
+    <display-name>Ranger Audit DB name</display-name>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>audit_db_user</name>
     <value>rangerlogger</value>
+    <display-name>Ranger Audit DB username</display-name>
     <description>Database user-id for storing auditlog information</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
     <name>audit_db_password</name>
     <value></value>
     <property-type>PASSWORD</property-type>
+    <display-name>Ranger Audit DB password</display-name>
     <description>Database password for storing auditlog information</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>policymgr_external_url</name>
     <value></value>
+    <display-name>External URL</display-name>
     <description>Policy Manager external url eg: http://RANGER_HOST:6080</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>policymgr_http_enabled</name>
     <value>true</value>
+    <display-name>HTTP enabled</display-name>
     <description>HTTP Enabled</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>authentication_method</name>
     <value>UNIX</value>
+    <display-name>Authentication method</display-name>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>remoteLoginEnabled</name>
     <value>true</value>
+    <display-name>Allow remote Login</display-name>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>authServiceHostName</name>
     <value>localhost</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>authServicePort</name>
     <value>5151</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>xa_ldap_url</name>
     <value>"ldap://71.127.43.33:389"</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>xa_ldap_userDNpattern</name>
     <value>"uid={0},ou=users,dc=xasecure,dc=net"</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -160,18 +236,27 @@
     <name>xa_ldap_groupRoleAttribute</name>
     <value>"cn"</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>xa_ldap_ad_domain</name>
     <value>"xasecure.net"</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>xa_ldap_ad_url</name>
     <value>"ldap://ad.xasecure.net:389"</value>
     <description></description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/ranger-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/ranger-env.xml b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/ranger-env.xml
index 3eb86fb..95c3b50 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/ranger-env.xml
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/ranger-env.xml
@@ -24,14 +24,22 @@
     <name>ranger_user</name>
     <value>ranger</value>
     <property-type>USER</property-type>
+    <display-name>Used to create user and assign permission</display-name>
     <description>Ranger username</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ranger_group</name>
     <value>ranger</value>
     <property-type>GROUP</property-type>
+    <display-name>Used to create group and assign permission</display-name>
     <description>Ranger group</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -57,7 +65,11 @@
     <name>ranger_admin_password</name>
     <value></value>
     <property-type>PASSWORD</property-type>
+    <display-name>Ranger Admin user's password for Ambari</display-name>
     <description>This is the ambari user password created for creating repositories and policies in Ranger Admin for each plugin</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/usersync-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/usersync-properties.xml b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/usersync-properties.xml
index cb7bd2b..742e971 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/usersync-properties.xml
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/configuration/usersync-properties.xml
@@ -80,6 +80,9 @@
     <name>SYNC_LDAP_USER_SEARCH_FILTER</name>
     <value></value>
     <description>default value is empty</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>SYNC_LDAP_USER_NAME_ATTRIBUTE</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-log4j.xml b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-log4j.xml
index 42db997..8ed83a3 100644
--- a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/kms-log4j.xml
@@ -62,7 +62,10 @@ log4j.rootLogger=ALL, kms
 log4j.logger.org.apache.hadoop.conf=ERROR
 log4j.logger.org.apache.hadoop=INFO
 log4j.logger.com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator=OFF        
-    </value>        
+    </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>     
 
 </configuration>  
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/ranger-kms-audit.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/ranger-kms-audit.xml b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/ranger-kms-audit.xml
index e5bd75e..af47bb1 100644
--- a/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/ranger-kms-audit.xml
+++ b/ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/configuration/ranger-kms-audit.xml
@@ -29,6 +29,7 @@
   <property>
     <name>xasecure.audit.destination.db</name>
     <value>false</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property>
 
@@ -71,6 +72,7 @@
   <property>
     <name>xasecure.audit.destination.hdfs</name>
     <value>true</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -89,6 +91,7 @@
   <property>
     <name>xasecure.audit.destination.solr</name>
     <value>true</value>
+    <display-name>Audit to SOLR</display-name>
     <description></description>
   </property>
 
@@ -113,6 +116,7 @@
   <property>
     <name>xasecure.audit.provider.summary.enabled</name>
     <value>false</value>
+    <display-name>Audit provider summary enabled</display-name>
     <description></description>
   </property>  
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/configuration/slider-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/configuration/slider-log4j.xml b/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/configuration/slider-log4j.xml
index 709867c..c473844 100644
--- a/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/configuration/slider-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/configuration/slider-log4j.xml
@@ -84,6 +84,9 @@ log4j.logger.org.apache.hadoop.yarn.server.nodemanager.containermanager.monitor=
 log4j.logger.org.apache.hadoop.yarn.server.nodemanager.NodeStatusUpdaterImpl=WARN
 log4j.logger.org.apache.zookeeper=WARN
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-defaults.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-defaults.xml b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-defaults.xml
index 4491469..8b13779 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-defaults.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-defaults.xml
@@ -130,6 +130,9 @@
     <description>
       Specifies parameters that are passed to the JVM of the Spark driver.
     </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -138,6 +141,9 @@
     <description>
       Specifies the parameters that are passed to the JVM of the Spark Application Master.
     </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-javaopts-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-javaopts-properties.xml b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-javaopts-properties.xml
index c2db325..f48d79b 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-javaopts-properties.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-javaopts-properties.xml
@@ -23,5 +23,8 @@
     <name>content</name>
     <description>Spark-javaopts-properties</description>
     <value> </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-log4j-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-log4j-properties.xml b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-log4j-properties.xml
index 2ba64fb..6b1d9bf 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-log4j-properties.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-log4j-properties.xml
@@ -38,5 +38,8 @@ log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=INFO
 log4j.logger.org.apache.spark.repl.SparkILoop$SparkILoopInterpreter=INFO
 
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-metrics-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-metrics-properties.xml b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-metrics-properties.xml
index 9af5f2e..3e544e2 100644
--- a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-metrics-properties.xml
+++ b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/configuration/spark-metrics-properties.xml
@@ -156,5 +156,8 @@
 #executor.source.jvm.class=org.apache.spark.metrics.source.JvmSource
 
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/configuration/storm-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/configuration/storm-site.xml b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/configuration/storm-site.xml
index 49d3f04..5055a67 100644
--- a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/configuration/storm-site.xml
+++ b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/configuration/storm-site.xml
@@ -40,6 +40,10 @@
     <name>storm.zookeeper.servers</name>
     <value>['localhost']</value>
     <description>A list of hosts of ZooKeeper servers used to manage the cluster.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>storm.zookeeper.port</name>
@@ -70,11 +74,17 @@
     <name>storm.zookeeper.retry.interval</name>
     <value>1000</value>
     <description>The interval between retries of a Zookeeper operation.</description>
+    <value-attributes>
+      <unit>ms</unit>
+    </value-attributes>
   </property>
   <property>
     <name>storm.zookeeper.retry.intervalceiling.millis</name>
     <value>30000</value>
     <description>The ceiling of the interval between retries of a Zookeeper operation.</description>
+    <value-attributes>
+      <unit>ms</unit>
+    </value-attributes>
   </property>
   <property>
     <name>storm.cluster.mode</name>
@@ -104,6 +114,10 @@
     <name>nimbus.host</name>
     <value>localhost</value>
     <description>The host that the master server is running on.</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.thrift.port</name>
@@ -115,16 +129,25 @@
     <name>nimbus.thrift.max_buffer_size</name>
     <value>1048576</value>
     <description>The maximum buffer size thrift should use when reading messages.</description>
+    <value-attributes>
+      <unit>bytes</unit>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.childopts</name>
     <value>-Xmx1024m -javaagent:/usr/lib/storm/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8649,wireformat31x=true,mode=multicast,config=/usr/lib/storm/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Nimbus_JVM</value>
     <description>This parameter is used by the storm-deploy project to configure the jvm options for the nimbus daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.task.timeout.secs</name>
     <value>30</value>
     <description>How long without heartbeating a task can go before nimbus will consider the task dead and reassign it to another location.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.supervisor.timeout.secs</name>
@@ -139,11 +162,17 @@
        that if a machine ever goes down Nimbus will immediately wake up and take action.
        This parameter is for checking for failures when there's no explicit event like that occuring.
     </description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.cleanup.inbox.freq.secs</name>
     <value>600</value>
     <description>How often nimbus should wake the cleanup thread to clean the inbox.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.inbox.jar.expiration.secs</name>
@@ -155,12 +184,18 @@
        Note that the time it takes to delete an inbox jar file is going to be somewhat more than
        NIMBUS_CLEANUP_INBOX_JAR_EXPIRATION_SECS (depending on how often NIMBUS_CLEANUP_FREQ_SECS is set to).
       </description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.task.launch.secs</name>
     <value>120</value>
     <description>A special timeout used when a task is initially launched. During launch, this is the timeout
        used until the first heartbeat, overriding nimbus.task.timeout.secs.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.reassign</name>
@@ -173,6 +208,9 @@
     <value>600</value>
     <description>During upload/download with the master, how long an upload or download connection is idle
        before nimbus considers it dead and drops the connection.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>nimbus.topology.validator</name>
@@ -232,6 +270,9 @@
     <description>The timeout on DRPC requests within the DRPC server. Defaults to 10 minutes. Note that requests can also
        timeout based on the socket timeout on the DRPC client, and separately based on the topology message
        timeout for the topology implementing the DRPC function.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>drpc.childopts</name>
@@ -266,6 +307,9 @@
     <name>supervisor.childopts</name>
     <value>-Xmx256m -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port={{jmxremote_port}} -javaagent:/usr/lib/storm/contrib/storm-jmxetric/lib/jmxetric-1.0.4.jar=host=localhost,port=8650,wireformat31x=true,mode=multicast,config=/usr/lib/storm/contrib/storm-jmxetric/conf/jmxetric-conf.xml,process=Supervisor_JVM</value>
     <description>This parameter is used by the storm-deploy project to configure the jvm options for the supervisor daemon.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>supervisor.worker.start.timeout.secs</name>
@@ -274,21 +318,33 @@
        the supervisor tries to restart the worker process. This value override
        supervisor.worker.timeout.secs during launch because there is additional
        overhead to starting and configuring the JVM on launch.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>supervisor.worker.timeout.secs</name>
     <value>30</value>
     <description>How long a worker can go without heartbeating before the supervisor tries to restart the worker process.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>supervisor.monitor.frequency.secs</name>
     <value>3</value>
     <description>How often the supervisor checks the worker heartbeats to see if any of them need to be restarted.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>supervisor.heartbeat.frequency.secs</name>
     <value>5</value>
     <description>How often the supervisor sends a heartbeat to the master.</description>
+    <value-attributes>
+      <unit>seconds</unit>
+    </value-attributes>
   </property>
   <property>
     <name>worker.childopts</name>
@@ -346,6 +402,9 @@
     <name>storm.messaging.netty.buffer_size</name>
     <value>5242880</value>
     <description>Netty based messaging: The buffer size for send/recv buffer.</description>
+    <value-attributes>
+      <unit>bytes</unit>
+    </value-attributes>
   </property>
   <property>
     <name>storm.messaging.netty.max_retries</name>
@@ -356,11 +415,17 @@
     <name>storm.messaging.netty.max_wait_ms</name>
     <value>1000</value>
     <description>Netty based messaging: The max # of milliseconds that a peer will wait.</description>
+    <value-attributes>
+      <unit>ms</unit>
+    </value-attributes>
   </property>
   <property>
     <name>storm.messaging.netty.min_wait_ms</name>
     <value>100</value>
     <description>Netty based messaging: The min # of milliseconds that a peer will wait.</description>
+    <value-attributes>
+      <unit>ms</unit>
+    </value-attributes>
   </property>
   <property>
     <name>topology.enable.message.timeouts</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration-mapred/mapred-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration-mapred/mapred-env.xml b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration-mapred/mapred-env.xml
index b387102..8bb96fa 100644
--- a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration-mapred/mapred-env.xml
+++ b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration-mapred/mapred-env.xml
@@ -24,12 +24,22 @@
   <property>
     <name>mapred_log_dir_prefix</name>
     <value>/var/log/hadoop-mapreduce</value>
+    <display-name>Mapreduce Log Dir Prefix</display-name>
     <description>Mapreduce Log Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>mapred_pid_dir_prefix</name>
     <value>/var/run/hadoop-mapreduce</value>
+    <display-name>Mapreduce PID Dir Prefix</display-name>
     <description>Mapreduce PID Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>mapred_user</name>
@@ -39,8 +49,12 @@
   </property>
   <property>
     <name>jobhistory_heapsize</name>
+    <display-name>History Server heap size</display-name>
     <value>900</value>
     <description>Value for JobHistoryServer heap_size variable in hadoop-env.sh</description>
+    <value-attributes>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-env.xml b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-env.xml
index 6eb1a1d..de0f31e 100644
--- a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-env.xml
+++ b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-env.xml
@@ -24,12 +24,22 @@
   <property>
     <name>yarn_log_dir_prefix</name>
     <value>/var/log/hadoop-yarn</value>
+    <display-name>YARN Log Dir Prefix</display-name>
     <description>YARN Log Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>yarn_pid_dir_prefix</name>
     <value>/var/run/hadoop-yarn</value>
+    <display-name>YARN PID Dir Prefix</display-name>
     <description>YARN PID Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>yarn_user</name>
@@ -40,21 +50,35 @@
   <property>
     <name>yarn_heapsize</name>
     <value>1024</value>
+    <display-name>YARN Java heap size</display-name>
     <description>Max heapsize for all YARN components using a numerical value in the scale of MB</description>
+    <value-attributes>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   <property>
     <name>resourcemanager_heapsize</name>
     <value>1024</value>
+    <display-name>ResourceManager Java heap size</display-name>
     <description>Max heapsize for ResourceManager using a numerical value in the scale of MB</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   <property>
     <name>nodemanager_heapsize</name>
     <value>1024</value>
+    <display-name>NodeManager Java heap size</display-name>
     <description>Max heapsize for NodeManager using a numerical value in the scale of MB</description>
+    <value-attributes>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   <property>
     <name>min_user_id</name>
     <value>1000</value>
+    <display-name>Minimum user ID for submitting job</display-name>
     <description>Set to 0 to disallow root from submitting jobs. Set to 1000 to disallow all superusers from submitting jobs</description>
   </property>  
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-log4j.xml b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-log4j.xml
index 8c44b9e..bbd2a3f 100644
--- a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-log4j.xml
@@ -66,6 +66,9 @@ log4j.appender.JSA.layout=org.apache.log4j.PatternLayout
 log4j.logger.org.apache.hadoop.yarn.server.resourcemanager.RMAppManager$ApplicationSummary=${yarn.server.resourcemanager.appsummary.logger}
 log4j.additivity.org.apache.hadoop.yarn.server.resourcemanager.RMAppManager$ApplicationSummary=false
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-site.xml b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-site.xml
index 26a74df..3592ec0 100644
--- a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-site.xml
+++ b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/configuration/yarn-site.xml
@@ -120,6 +120,9 @@
     <name>yarn.admin.acl</name>
     <value></value>
     <description> ACL of who can be admin of the YARN cluster. </description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <!-- NodeManager -->

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zoo.cfg.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zoo.cfg.xml b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zoo.cfg.xml
index 12e2a00..37e9c0d 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zoo.cfg.xml
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zoo.cfg.xml
@@ -24,26 +24,44 @@
   <property>
     <name>tickTime</name>
     <value>2000</value>
+    <display-name>Length of single Tick</display-name>
     <description>The length of a single tick in milliseconds, which is the basic time unit used by ZooKeeper</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <unit>ms</unit>
+    </value-attributes>
   </property>
   <property>
     <name>initLimit</name>
     <value>10</value>
+    <display-name>Ticks to allow for sync at Init</display-name>
     <description>Ticks to allow for sync at Init.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>syncLimit</name>
     <value>5</value>
+    <display-name>Ticks to allow for sync at Runtime</display-name>
     <description>Ticks to allow for sync at Runtime.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>clientPort</name>
     <value>2181</value>
+    <display-name>Port for running ZK Server</display-name>
     <description>Port for running ZK Server.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>dataDir</name>
     <value>/hadoop/zookeeper</value>
+    <display-name>ZooKeeper directory</display-name>
     <description>Data directory for ZooKeeper.</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-env.xml b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-env.xml
index 608f504..e214bf8 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-env.xml
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-env.xml
@@ -30,12 +30,22 @@
   <property>
     <name>zk_log_dir</name>
     <value>/var/log/zookeeper</value>
+    <display-name>ZooKeeper Log Dir</display-name>
     <description>ZooKeeper Log Dir</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>zk_pid_dir</name>
     <value>/var/run/zookeeper</value>
+    <display-name>ZooKeeper PID Dir</display-name>
     <description>ZooKeeper Pid Dir</description>
+    <value-attributes>
+      <editable-only-at-install>true</editable-only-at-install>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-log4j.xml b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-log4j.xml
index 6fcf5bc..5a68745 100644
--- a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-log4j.xml
+++ b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/configuration/zookeeper-log4j.xml
@@ -96,6 +96,9 @@ log4j.appender.TRACEFILE.layout=org.apache.log4j.PatternLayout
 ### Notice we are including log4j's NDC here (%x)
 log4j.appender.TRACEFILE.layout.ConversionPattern=%d{ISO8601} - %-5p [%t:%C{1}@%L][%x] - %m%n
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/properties.json
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/properties.json b/ambari-server/src/main/resources/properties.json
index 2dc1af5..0837af2 100644
--- a/ambari-server/src/main/resources/properties.json
+++ b/ambari-server/src/main/resources/properties.json
@@ -437,6 +437,7 @@
         "StackLevelConfigurations/stack_version",
         "StackLevelConfigurations/property_name",
         "StackLevelConfigurations/property_value",
+        "StackLevelConfigurations/property_display_name",
         "StackLevelConfigurations/property_value_attributes",
         "StackLevelConfigurations/property_depends_on",
         "StackLevelConfigurations/property_description",

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
index 47dffec..3d2c3f2 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
@@ -33,9 +33,13 @@
     </property>
     <property>
         <name>ignore_groupsusers_create</name>
+        <display-name>Skip group modifications during install</display-name>
         <value>false</value>
         <property-type>ADDITIONAL_USER_PROPERTY</property-type>
         <description>Whether to ignore failures on users and group creation</description>
+        <value-attributes>
+            <overridable>false</overridable>
+        </value-attributes>
     </property>
     <property>
         <name>smokeuser</name>
@@ -75,7 +79,11 @@ gpgcheck=0</value>
         <name>override_uid</name>
         <value>true</value>
         <property-type>ADDITIONAL_USER_PROPERTY</property-type>
+        <display-name>Have Ambari manage UIDs</display-name>
         <description>Have Ambari manage UIDs</description>
+        <value-attributes>
+            <overridable>false</overridable>
+        </value-attributes>
     </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/core-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/core-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/core-site.xml
index 7794ac8..12dfafc 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/core-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/core-site.xml
@@ -26,12 +26,14 @@
 
   <property>
   <name>fs.AbstractFileSystem.glusterfs.impl</name>
+  <display-name>GlusterFS fs impl</display-name>
   <value>org.apache.hadoop.fs.local.GlusterFs</value>
   </property>
 
   <property>
   <name>fs.glusterfs.impl</name>
   <value>org.apache.hadoop.fs.glusterfs.GlusterFileSystem</value>
+  <display-name>GlusterFS Abstract File System Implementation</display-name>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml
index bce6b53..9644642 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/GLUSTERFS/configuration/hadoop-env.xml
@@ -25,26 +25,52 @@
     <name>hadoop_pid_dir_prefix</name>
     <value>/var/run/hadoop</value>
     <description>Hadoop PID Dir Prefix</description>
+    <display-name>Hadoop PID Dir Prefix</display-name>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+      <visible>false</visible>
+    </value-attributes>
   </property>
  <property>
     <name>hadoop_heapsize</name>
     <value>1024</value>
-    <description>Hadoop maximum Java heap size</description>
+   <display-name>Hadoop maximum Java heap size</display-name>
+   <description>Hadoop maximum Java heap size</description>
+   <value-attributes>
+     <unit>MB</unit>
+   </value-attributes>
   </property>
   <property>
     <name>glusterfs_user</name>
     <value>root</value>
-    <description></description>
+    <display-name>glusterfs user</display-name>
+    <description>glusterfs user</description>
+    <value-attributes>
+      <visible>false</visible>
+    </value-attributes>
   </property>
   <property>
     <name>hdfs_log_dir_prefix</name>
     <value>/var/log/hadoop</value>
+    <display-name>Hadoop Log Dir Prefix</display-name>
     <description>Hadoop Log Dir Prefix</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+      <visible>false</visible>
+    </value-attributes>
   </property>
   <property>
     <name>namenode_heapsize</name>
     <value>1024</value>
+    <display-name>Name Node Heap Size</display-name>
     <description>NameNode Java heap size</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+      <visible>false</visible>
+    </value-attributes>
   </property>
   <property>
     <name>namenode_host</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/configuration/hbase-site.xml
index cf8ddd3..8bdd8d5 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/configuration/hbase-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HBASE/configuration/hbase-site.xml
@@ -45,7 +45,11 @@
   <property>
     <name>hbase.master.port</name>
     <value>60000</value>
+    <display-name>HBase Master Port</display-name>
     <description>The port the HBase Master should bind to.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.tmp.dir</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.1/services/HIVE/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1/services/HIVE/configuration/hive-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.1/services/HIVE/configuration/hive-site.xml
index 182acfe..4f78228 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1/services/HIVE/configuration/hive-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1/services/HIVE/configuration/hive-site.xml
@@ -22,38 +22,63 @@ limitations under the License.
   <property>
     <name>hive.heapsize</name>
     <value>1024</value>
+    <display-name>HiveServer2 heap size</display-name>
     <description>Hive Java heap size</description>
+    <value-attributes>
+      <unit>MB</unit>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>ambari.hive.db.schema.name</name>
     <value>hive</value>
+    <display-name>Database Name</display-name>
     <description>Database name used as the Hive Metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionURL</name>
     <value>jdbc:mysql://localhost/hive?createDatabaseIfNotExist=true</value>
+    <display-name>Database URL</display-name>
     <description>JDBC connect string for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionDriverName</name>
     <value>com.mysql.jdbc.Driver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>Driver class name for a JDBC metastore</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>javax.jdo.option.ConnectionUserName</name>
     <value>hive</value>
+    <display-name>Database Username</display-name>
     <description>username to use against metastore database</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property require-input="true">
     <name>javax.jdo.option.ConnectionPassword</name>
     <value></value>
     <property-type>PASSWORD</property-type>
+    <display-name>Database Password</display-name>
     <description>password to use against metastore database</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -428,6 +453,9 @@ limitations under the License.
     <name>hive.server2.tez.default.queues</name>
     <value>default</value>
     <description>A comma-separated list of queues configured for the cluster.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
 
   <property>
@@ -545,9 +573,13 @@ limitations under the License.
   <property>
     <name>hive.server2.thrift.port</name>
     <value>10000</value>
+    <display-name>HiveServer2 Port</display-name>
     <description>
       TCP port number to listen on, default 10000.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.1/services/OOZIE/configuration/oozie-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1/services/OOZIE/configuration/oozie-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.1/services/OOZIE/configuration/oozie-site.xml
index a429a13..f46bf8f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1/services/OOZIE/configuration/oozie-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1/services/OOZIE/configuration/oozie-site.xml
@@ -105,9 +105,13 @@
   <property>
     <name>oozie.db.schema.name</name>
     <value>oozie</value>
+    <display-name>Database Name</display-name>
     <description>
       Oozie DataBase Name
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
@@ -200,25 +204,37 @@
   <property>
     <name>oozie.service.JPAService.jdbc.driver</name>
     <value>org.apache.derby.jdbc.EmbeddedDriver</value>
+    <display-name>JDBC Driver Class</display-name>
     <description>
       JDBC driver class.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>oozie.service.JPAService.jdbc.url</name>
     <value>jdbc:derby:${oozie.data.dir}/${oozie.db.schema.name}-db;create=true</value>
+    <display-name>Database URL</display-name>
     <description>
       JDBC URL.
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>oozie.service.JPAService.jdbc.username</name>
     <value>oozie</value>
+    <display-name>Database Username</display-name>
     <description>
       Database user name to use to connect to the database
     </description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.1/services/PIG/configuration/pig-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1/services/PIG/configuration/pig-properties.xml b/ambari-server/src/main/resources/stacks/HDP/2.1/services/PIG/configuration/pig-properties.xml
index 480be75..5746109 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1/services/PIG/configuration/pig-properties.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1/services/PIG/configuration/pig-properties.xml
@@ -86,6 +86,11 @@ pig.location.check.strict=false
 hcat.bin=/usr/bin/hcat
 
     </value>
+    <description>Describe all the Pig agent configurations</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.1/services/YARN/configuration/yarn-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1/services/YARN/configuration/yarn-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.1/services/YARN/configuration/yarn-env.xml
index 9ad95ac..a069962 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1/services/YARN/configuration/yarn-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1/services/YARN/configuration/yarn-env.xml
@@ -24,7 +24,12 @@
   <property>
     <name>apptimelineserver_heapsize</name>
     <value>1024</value>
+    <display-name>AppTimelineServer Java heap size</display-name>
     <description>Max heapsize for AppTimelineServer using a numerical value in the scale of MB</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   
   <!-- yarn-env.sh -->

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-env.xml
index 0e21eb0..5f6b1bd 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-env.xml
@@ -24,12 +24,22 @@
   <property>
     <name>hbase_log_dir</name>
     <value>/var/log/hbase</value>
+    <display-name>HBase Log Dir Prefix</display-name>
     <description>Log Directories for HBase.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hbase_pid_dir</name>
     <value>/var/run/hbase</value>
+    <display-name>HBase PID Dir</display-name>
     <description>Pid Directory for HBase.</description>
+    <value-attributes>
+      <overridable>false</overridable>
+      <editable-only-at-install>true</editable-only-at-install>
+    </value-attributes>
   </property>
   <property>
     <name>hbase_regionserver_xmn_max</name>
@@ -39,10 +49,15 @@ Sets the upper bound on HBase RegionServers' young generation size.
 This value is used in case the young generation size (-Xmn) calculated based on the max heapsize (hbase_regionserver_heapsize)
 and the -Xmn ratio (hbase_regionserver_xmn_ratio) exceeds this value.
     </description>
+    <display-name>RegionServers maximum value for -Xmn</display-name>
+    <value-attributes>
+      <unit>MB</unit>
+    </value-attributes>
   </property>
   <property>
     <name>hbase_regionserver_xmn_ratio</name>
     <value>0.2</value>
+    <display-name>RegionServers -Xmn in -Xmx ratio</display-name>
     <description>Percentage of max heap size (-Xmx) which used for young generation heap (-Xmn).</description>
   </property>
   <property>
@@ -54,7 +69,11 @@ and the -Xmn ratio (hbase_regionserver_xmn_ratio) exceeds this value.
   <property>
     <name>hbase_max_direct_memory_size</name>
     <value></value>
+    <display-name>HBase off-heap MaxDirectMemorySize</display-name>
     <description>If not empty, adds '-XX:MaxDirectMemorySize={{hbase_max_direct_memory_size}}m' to HBASE_REGIONSERVER_OPTS.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>phoenix_sql_enabled</name>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-site.xml
index 3451585..cdb0391 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/hbase-site.xml
@@ -94,16 +94,25 @@
     <value></value>
     <description>Where to store the contents of the bucketcache. One of: onheap,
       offheap, or file. If a file, set it to file:PATH_TO_FILE.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.bucketcache.size</name>
     <value></value>
     <description>The size of the buckets for the bucketcache if you only use a single size.</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.bucketcache.percentage.in.combinedcache</name>
     <value></value>
     <description>Value to be set between 0.0 and 1.0</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>
   <property>
     <name>hbase.regionserver.wal.codec</name>
@@ -119,6 +128,9 @@
   <property>
     <name>hbase.region.server.rpc.scheduler.factory.class</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
     <depends-on>
       <property>
         <type>hbase-env</type>
@@ -129,6 +141,9 @@
   <property>
     <name>hbase.rpc.controllerfactory.class</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
     <depends-on>
       <property>
         <type>hbase-env</type>
@@ -149,6 +164,9 @@
   <property>
     <name>hbase.coprocessor.regionserver.classes</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
     <depends-on>
       <property>
         <type>hbase-site</type>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/ranger-hbase-plugin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/ranger-hbase-plugin-properties.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/ranger-hbase-plugin-properties.xml
index 30af22c..a39ce5d 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/ranger-hbase-plugin-properties.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HBASE/configuration/ranger-hbase-plugin-properties.xml
@@ -23,24 +23,33 @@
   <property>
     <name>common.name.for.certificate</name>
     <value></value>
-    <description>Used for repository creation on ranger admin</description>    
+    <description>Used for repository creation on ranger admin</description>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
   </property>      
 
   <property>
     <name>policy_user</name>
     <value>ambari-qa</value>
+    <display-name>policy User for HBASE</display-name>
     <description>This user must be system user and also present at Ranger admin portal</description>
   </property>
   
   <property>
     <name>ranger-hbase-plugin-enabled</name>
     <value>No</value>
+    <display-name>Enable Ranger for HBASE</display-name>
     <description>Enable ranger hbase plugin ?</description>
+    <value-attributes>
+      <overridable>false</overridable>
+    </value-attributes>
   </property>
 
   <property>
     <name>REPOSITORY_CONFIG_USERNAME</name>
     <value>hbase</value>
+    <display-name>Ranger repository config user</display-name>
     <description>Used for repository creation on ranger admin</description>
   </property> 
 
@@ -54,12 +63,14 @@
   <property>
     <name>XAAUDIT.DB.IS_ENABLED</name>
     <value>true</value>
+    <display-name>Audit to DB</display-name>
     <description></description>
   </property> 
 
   <property>
     <name>XAAUDIT.HDFS.IS_ENABLED</name>
     <value>false</value>
+    <display-name>Audit to HDFS</display-name>
     <description></description>
   </property>
 
@@ -158,6 +169,7 @@
   <property>
     <name>UPDATE_XAPOLICIES_ON_GRANT_REVOKE</name>
     <value>true</value>
+    <display-name>Should HBase GRANT/REVOKE update XA policies</display-name>
     <description></description>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/core-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/core-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/core-site.xml
index 1e68146..37096c4 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/core-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/core-site.xml
@@ -31,6 +31,9 @@
   <property>
     <name>hadoop.security.key.provider.path</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
     <depends-on>
       <property>
         <type>hadoop-env</type>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml
index 4cee438..d91ca71 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hadoop-env.xml
@@ -33,11 +33,12 @@
   </property>
   <property>
     <name>keyserver_port</name>
-    <value> </value>
+    <value></value>
     <display-name>Key Server Port</display-name>
     <description>Port number where Key Management Server is available</description>
     <value-attributes>
       <type>int</type>
+      <empty-value-valid>true</empty-value-valid>
     </value-attributes>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-log4j.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-log4j.xml
index bc8d959..f627add 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-log4j.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-log4j.xml
@@ -217,6 +217,9 @@ log4j.logger.org.apache.hadoop.conf.Configuration.deprecation=WARN
 # messages from BlockManager in NameNode.
 #log4j.logger.BlockStateChange=WARN
     </value>
+    <value-attributes>
+      <show-property-name>false</show-property-name>
+    </value-attributes>
   </property>
 
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-site.xml
index c1ff588..178f436 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/hdfs-site.xml
@@ -49,6 +49,9 @@
   <property>
     <name>dfs.encryption.key.provider.uri</name>
     <value></value>
+    <value-attributes>
+      <empty-value-valid>true</empty-value-valid>
+    </value-attributes>
     <depends-on>
       <property>
         <type>hadoop-env</type>

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/ranger-hdfs-plugin-properties.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/ranger-hdfs-plugin-properties.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/ranger-hdfs-plugin-properties.xml
index 32f7c54..bfbccbb 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/ranger-hdfs-plugin-properties.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HDFS/configuration/ranger-hdfs-plugin-properties.xml
@@ -15,6 +15,7 @@
 	<property>
 		<name>policy_user</name>
 		<value>ambari-qa</value>
+		<display-name>policy User for HDFS</display-name>
 		<description>This user must be system user and also present at Ranger
 			admin portal</description>
 	</property>
@@ -24,6 +25,9 @@
 		<value></value>
 		<description>Used for repository creation on ranger admin
 		</description>
+		<value-attributes>
+			<empty-value-valid>true</empty-value-valid>
+		</value-attributes>
 	</property>
 
 	<property>
@@ -31,17 +35,25 @@
 		<value></value>
 		<description>Used for repository creation on ranger admin
 		</description>
+		<value-attributes>
+			<empty-value-valid>true</empty-value-valid>
+		</value-attributes>
 	</property>
 
 	<property>
 		<name>ranger-hdfs-plugin-enabled</name>
 		<value>No</value>
-		<description>Enable ranger hdfs plugin ?</description>
+		<display-name>Enable Ranger for HDFS</display-name>
+		<description>Enable ranger hdfs plugin</description>
+		<value-attributes>
+			<overridable>false</overridable>
+		</value-attributes>
 	</property>
 
 	<property>
 		<name>REPOSITORY_CONFIG_USERNAME</name>
 		<value>hadoop</value>
+		<display-name>Ranger repository config user</display-name>
 		<description>Used for repository creation on ranger admin
 		</description>
 	</property>
@@ -57,12 +69,14 @@
 	<property>
 		<name>XAAUDIT.DB.IS_ENABLED</name>
 		<value>true</value>
+		<display-name>Audit to DB</display-name>
 		<description></description>
 	</property>
 
 	<property>
 		<name>XAAUDIT.HDFS.IS_ENABLED</name>
 		<value>false</value>
+		<display-name>Audit to HDFS</display-name>
 		<description></description>
 	</property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/70ca8500/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-env.xml
index 443648f..5c6b355 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.2/services/HIVE/configuration/hive-env.xml
@@ -32,6 +32,7 @@
       <maximum>2048</maximum>
       <unit>MB</unit>
       <increment-step>512</increment-step>
+      <overridable>false</overridable>
     </value-attributes>
   </property>