You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by nc...@apache.org on 2014/09/02 22:29:35 UTC

[01/15] AMBARI-7109 Fix test mode in ambari web. (atkach)

Repository: ambari
Updated Branches:
  refs/heads/branch-alerts-dev 7a0f50917 -> 8697c91b8


http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/assets/data/stacks/HDP-2.1/service_components.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/stacks/HDP-2.1/service_components.json b/ambari-web/app/assets/data/stacks/HDP-2.1/service_components.json
index 0e62f20..7bf0093 100644
--- a/ambari-web/app/assets/data/stacks/HDP-2.1/service_components.json
+++ b/ambari-web/app/assets/data/stacks/HDP-2.1/service_components.json
@@ -1,699 +1,1506 @@
 {
-  "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices?fields=StackServices/comments,StackServices/service_version,serviceComponents/*",
+  "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services?fields=StackServices/*,serviceComponents/*&_=1409656091161",
   "items" : [
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/FALCON",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/FALCON",
       "StackServices" : {
         "comments" : "Data management and processing platform",
+        "custom_commands" : [ ],
+        "display_name" : "Falcon",
+        "required_services" : [
+          "OOZIE"
+        ],
+        "service_check_supported" : true,
         "service_name" : "FALCON",
-        "service_version" : "0.4.0.2.1.1",
+        "service_version" : "0.5.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "falcon-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "falcon-runtime.properties" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "falcon-startup.properties" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "oozie-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/FALCON/serviceComponents/FALCON_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/FALCON/components/FALCON_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "FALCON_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : "Falcon Client",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "FALCON",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/FALCON/serviceComponents/FALCON_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/FALCON/components/FALCON_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "FALCON_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "Falcon Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "FALCON",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/FALCON/components/FALCON_SERVER/dependencies/OOZIE_CLIENT",
+              "Dependencies" : {
+                "component_name" : "OOZIE_CLIENT",
+                "dependent_component_name" : "FALCON_SERVER",
+                "dependent_service_name" : "FALCON",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/FALCON/components/FALCON_SERVER/dependencies/OOZIE_SERVER",
+              "Dependencies" : {
+                "component_name" : "OOZIE_SERVER",
+                "dependent_component_name" : "FALCON_SERVER",
+                "dependent_service_name" : "FALCON",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
+        }
+      ]
+    },
+    {
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/FLUME",
+      "StackServices" : {
+        "comments" : "Data management and processing platform",
+        "custom_commands" : [ ],
+        "display_name" : "Flume",
+        "required_services" : [
+          "HDFS"
+        ],
+        "service_check_supported" : true,
+        "service_name" : "FLUME",
+        "service_version" : "1.4.0.2.1",
+        "stack_name" : "HDP",
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "flume-conf" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "flume-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "flume-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
           }
         }
+      },
+      "serviceComponents" : [
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/FLUME/components/FLUME_HANDLER",
+          "StackServiceComponents" : {
+            "cardinality" : "1+",
+            "component_category" : "SLAVE",
+            "component_name" : "FLUME_HANDLER",
+            "custom_commands" : [ ],
+            "display_name" : "Flume",
+            "is_client" : false,
+            "is_master" : false,
+            "service_name" : "FLUME",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          },
+          "dependencies" : [ ]
+        }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/GANGLIA",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/GANGLIA",
       "StackServices" : {
-        "comments" : "Ganglia Metrics Collection system",
+        "comments" : "Ganglia Metrics Collection system (<a href=\"http://oss.oetiker.ch/rrdtool/\" target=\"_blank\">RRDTool</a> will be installed too)",
+        "custom_commands" : [ ],
+        "display_name" : "Ganglia",
+        "required_services" : null,
+        "service_check_supported" : false,
         "service_name" : "GANGLIA",
         "service_version" : "3.5.0",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "ganglia-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/GANGLIA/serviceComponents/GANGLIA_MONITOR",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/GANGLIA/components/GANGLIA_MONITOR",
           "StackServiceComponents" : {
+            "cardinality" : "ALL",
             "component_category" : "SLAVE",
             "component_name" : "GANGLIA_MONITOR",
+            "custom_commands" : [ ],
+            "display_name" : "Ganglia Monitor",
             "is_client" : false,
             "is_master" : false,
             "service_name" : "GANGLIA",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "auto_deploy" : {
+            "enabled" : true
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/GANGLIA/serviceComponents/GANGLIA_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/GANGLIA/components/GANGLIA_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "GANGLIA_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "Ganglia Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "GANGLIA",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HBASE",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HBASE",
       "StackServices" : {
         "comments" : "Non-relational distributed database and centralized service for configuration management &\n        synchronization\n      ",
+        "custom_commands" : [ ],
+        "display_name" : "HBase",
+        "required_services" : [
+          "ZOOKEEPER",
+          "HDFS"
+        ],
+        "service_check_supported" : true,
         "service_name" : "HBASE",
-        "service_version" : "0.96.0.2.1",
+        "service_version" : "0.98.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "hbase-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "hbase-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "hbase-policy" : {
+            "supports" : {
+              "final" : "true"
+            }
+          },
+          "hbase-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HBASE/serviceComponents/HBASE_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HBASE/components/HBASE_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "HBASE_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : "HBase Client",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "HBASE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HBASE/serviceComponents/HBASE_MASTER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HBASE/components/HBASE_MASTER",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "MASTER",
             "component_name" : "HBASE_MASTER",
+            "custom_commands" : [
+              "DECOMMISSION"
+            ],
+            "display_name" : "HBase Master",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "HBASE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HBASE/components/HBASE_MASTER/dependencies/HDFS_CLIENT",
+              "Dependencies" : {
+                "component_name" : "HDFS_CLIENT",
+                "dependent_component_name" : "HBASE_MASTER",
+                "dependent_service_name" : "HBASE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HBASE/components/HBASE_MASTER/dependencies/ZOOKEEPER_SERVER",
+              "Dependencies" : {
+                "component_name" : "ZOOKEEPER_SERVER",
+                "dependent_component_name" : "HBASE_MASTER",
+                "dependent_service_name" : "HBASE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HBASE/serviceComponents/HBASE_REGIONSERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HBASE/components/HBASE_REGIONSERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "SLAVE",
             "component_name" : "HBASE_REGIONSERVER",
+            "custom_commands" : [ ],
+            "display_name" : "RegionServer",
             "is_client" : false,
             "is_master" : false,
             "service_name" : "HBASE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HCATALOG",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HCATALOG",
       "StackServices" : {
         "comments" : "This is comment for HCATALOG service",
+        "custom_commands" : [ ],
+        "display_name" : "HCatalog",
+        "required_services" : [
+          "HIVE"
+        ],
+        "service_check_supported" : true,
         "service_name" : "HCATALOG",
         "service_version" : "0.12.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : { }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HCATALOG/serviceComponents/HCAT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HCATALOG/components/HCAT",
           "StackServiceComponents" : {
+            "cardinality" : null,
             "component_category" : "CLIENT",
             "component_name" : "HCAT",
+            "custom_commands" : [ ],
+            "display_name" : "HCat",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "HCATALOG",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HDFS",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HDFS",
       "StackServices" : {
         "comments" : "Apache Hadoop Distributed File System",
+        "custom_commands" : [ ],
+        "display_name" : "HDFS",
+        "required_services" : [
+          "ZOOKEEPER"
+        ],
+        "service_check_supported" : true,
         "service_name" : "HDFS",
-        "service_version" : "2.1.0.2.1",
+        "service_version" : "2.4.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "core-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          },
+          "hadoop-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "hadoop-policy" : {
+            "supports" : {
+              "final" : "true"
+            }
+          },
+          "hdfs-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "hdfs-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HDFS/serviceComponents/DATANODE",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HDFS/components/DATANODE",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "SLAVE",
             "component_name" : "DATANODE",
+            "custom_commands" : [ ],
+            "display_name" : "DataNode",
             "is_client" : false,
             "is_master" : false,
             "service_name" : "HDFS",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HDFS/serviceComponents/HDFS_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HDFS/components/HDFS_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "HDFS_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : "HDFS Client",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "HDFS",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HDFS/serviceComponents/JOURNALNODE",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HDFS/components/JOURNALNODE",
           "StackServiceComponents" : {
-            "component_category" : "MASTER",
+            "cardinality" : "0+",
+            "component_category" : "SLAVE",
             "component_name" : "JOURNALNODE",
+            "custom_commands" : [ ],
+            "display_name" : "JournalNode",
             "is_client" : false,
-            "is_master" : true,
+            "is_master" : false,
             "service_name" : "HDFS",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HDFS/serviceComponents/NAMENODE",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HDFS/components/NAMENODE",
           "StackServiceComponents" : {
+            "cardinality" : "1-2",
             "component_category" : "MASTER",
             "component_name" : "NAMENODE",
+            "custom_commands" : [
+              "DECOMMISSION",
+              "REBALANCEHDFS"
+            ],
+            "display_name" : "NameNode",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "HDFS",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HDFS/serviceComponents/SECONDARY_NAMENODE",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HDFS/components/SECONDARY_NAMENODE",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "SECONDARY_NAMENODE",
+            "custom_commands" : [ ],
+            "display_name" : "SNameNode",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "HDFS",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HDFS/serviceComponents/ZKFC",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HDFS/components/ZKFC",
           "StackServiceComponents" : {
+            "cardinality" : "0+",
             "component_category" : "SLAVE",
             "component_name" : "ZKFC",
+            "custom_commands" : [ ],
+            "display_name" : "ZKFailoverController",
             "is_client" : false,
             "is_master" : false,
             "service_name" : "HDFS",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HIVE",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE",
       "StackServices" : {
         "comments" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service",
+        "custom_commands" : [ ],
+        "display_name" : "Hive",
+        "required_services" : [
+          "ZOOKEEPER",
+          "YARN",
+          "TEZ"
+        ],
+        "service_check_supported" : true,
         "service_name" : "HIVE",
-        "service_version" : "0.12.0.2.1",
+        "service_version" : "0.13.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "hive-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "hive-exec-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "hive-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "hive-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HIVE/serviceComponents/HIVE_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE/components/HIVE_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "HIVE_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : "Hive Client",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "HIVE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HIVE/serviceComponents/HIVE_METASTORE",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE/components/HIVE_METASTORE",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "HIVE_METASTORE",
+            "custom_commands" : [ ],
+            "display_name" : "Hive Metastore",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "HIVE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "auto_deploy" : {
+            "enabled" : true,
+            "location" : "HIVE/HIVE_SERVER"
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HIVE/serviceComponents/HIVE_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE/components/HIVE_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "HIVE_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "HiveServer2",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "HIVE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE/components/HIVE_SERVER/dependencies/MAPREDUCE2_CLIENT",
+              "Dependencies" : {
+                "component_name" : "MAPREDUCE2_CLIENT",
+                "dependent_component_name" : "HIVE_SERVER",
+                "dependent_service_name" : "HIVE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE/components/HIVE_SERVER/dependencies/TEZ_CLIENT",
+              "Dependencies" : {
+                "component_name" : "TEZ_CLIENT",
+                "dependent_component_name" : "HIVE_SERVER",
+                "dependent_service_name" : "HIVE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE/components/HIVE_SERVER/dependencies/YARN_CLIENT",
+              "Dependencies" : {
+                "component_name" : "YARN_CLIENT",
+                "dependent_component_name" : "HIVE_SERVER",
+                "dependent_service_name" : "HIVE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE/components/HIVE_SERVER/dependencies/ZOOKEEPER_SERVER",
+              "Dependencies" : {
+                "component_name" : "ZOOKEEPER_SERVER",
+                "dependent_component_name" : "HIVE_SERVER",
+                "dependent_service_name" : "HIVE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/HIVE/serviceComponents/MYSQL_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/HIVE/components/MYSQL_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "0-1",
             "component_category" : "MASTER",
             "component_name" : "MYSQL_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "MySQL Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "HIVE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/MAPREDUCE2",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/MAPREDUCE2",
       "StackServices" : {
         "comments" : "Apache Hadoop NextGen MapReduce (YARN)",
+        "custom_commands" : [ ],
+        "display_name" : "MapReduce2",
+        "required_services" : [
+          "YARN"
+        ],
+        "service_check_supported" : true,
         "service_name" : "MAPREDUCE2",
         "service_version" : "2.1.0.2.0.6.0",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "mapred-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "mapred-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/MAPREDUCE2/serviceComponents/HISTORYSERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/MAPREDUCE2/components/HISTORYSERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "HISTORYSERVER",
+            "custom_commands" : [ ],
+            "display_name" : "History Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "MAPREDUCE2",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "auto_deploy" : {
+            "enabled" : true,
+            "location" : "YARN/RESOURCEMANAGER"
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/MAPREDUCE2/components/HISTORYSERVER/dependencies/HDFS_CLIENT",
+              "Dependencies" : {
+                "component_name" : "HDFS_CLIENT",
+                "dependent_component_name" : "HISTORYSERVER",
+                "dependent_service_name" : "MAPREDUCE2",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/MAPREDUCE2/serviceComponents/MAPREDUCE2_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/MAPREDUCE2/components/MAPREDUCE2_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "0+",
             "component_category" : "CLIENT",
             "component_name" : "MAPREDUCE2_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : "MapReduce2 Client",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "MAPREDUCE2",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/NAGIOS",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/NAGIOS",
       "StackServices" : {
         "comments" : "Nagios Monitoring and Alerting system",
+        "custom_commands" : [ ],
+        "display_name" : "Nagios",
+        "required_services" : [ ],
+        "service_check_supported" : false,
         "service_name" : "NAGIOS",
         "service_version" : "3.5.0",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "nagios-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/NAGIOS/serviceComponents/NAGIOS_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/NAGIOS/components/NAGIOS_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "NAGIOS_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "Nagios Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "NAGIOS",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/NAGIOS/components/NAGIOS_SERVER/dependencies/HCAT",
+              "Dependencies" : {
+                "component_name" : "HCAT",
+                "dependent_component_name" : "NAGIOS_SERVER",
+                "dependent_service_name" : "NAGIOS",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/NAGIOS/components/NAGIOS_SERVER/dependencies/HDFS_CLIENT",
+              "Dependencies" : {
+                "component_name" : "HDFS_CLIENT",
+                "dependent_component_name" : "NAGIOS_SERVER",
+                "dependent_service_name" : "NAGIOS",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/NAGIOS/components/NAGIOS_SERVER/dependencies/MAPREDUCE2_CLIENT",
+              "Dependencies" : {
+                "component_name" : "MAPREDUCE2_CLIENT",
+                "dependent_component_name" : "NAGIOS_SERVER",
+                "dependent_service_name" : "NAGIOS",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/NAGIOS/components/NAGIOS_SERVER/dependencies/OOZIE_CLIENT",
+              "Dependencies" : {
+                "component_name" : "OOZIE_CLIENT",
+                "dependent_component_name" : "NAGIOS_SERVER",
+                "dependent_service_name" : "NAGIOS",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/NAGIOS/components/NAGIOS_SERVER/dependencies/TEZ_CLIENT",
+              "Dependencies" : {
+                "component_name" : "TEZ_CLIENT",
+                "dependent_component_name" : "NAGIOS_SERVER",
+                "dependent_service_name" : "NAGIOS",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/NAGIOS/components/NAGIOS_SERVER/dependencies/YARN_CLIENT",
+              "Dependencies" : {
+                "component_name" : "YARN_CLIENT",
+                "dependent_component_name" : "NAGIOS_SERVER",
+                "dependent_service_name" : "NAGIOS",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/OOZIE",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/OOZIE",
       "StackServices" : {
-        "comments" : "System for workflow coordination and execution of Apache Hadoop jobs.  This also includes the installation of the optional Oozie Web Console which relies on and will install the <a target=\"_blank\" href=\"http://www.sencha.com/products/extjs/license/\">ExtJS</a> Library.\n      ",
+        "comments" : "System for workflow coordination and execution of Apache Hadoop jobs.  This also includes the installation of the optional Oozie Web Console which relies on and will install the <a target=\"_blank\" href=\"http://www.sencha.com/legal/open-source-faq/\">ExtJS</a> Library.\n      ",
+        "custom_commands" : [ ],
+        "display_name" : "Oozie",
+        "required_services" : [
+          "YARN"
+        ],
+        "service_check_supported" : true,
         "service_name" : "OOZIE",
         "service_version" : "4.0.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "oozie-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "oozie-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "oozie-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/OOZIE/serviceComponents/OOZIE_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/OOZIE/components/OOZIE_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "OOZIE_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : "Oozie Client",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "OOZIE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/OOZIE/components/OOZIE_CLIENT/dependencies/HDFS_CLIENT",
+              "Dependencies" : {
+                "component_name" : "HDFS_CLIENT",
+                "dependent_component_name" : "OOZIE_CLIENT",
+                "dependent_service_name" : "OOZIE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/OOZIE/components/OOZIE_CLIENT/dependencies/MAPREDUCE2_CLIENT",
+              "Dependencies" : {
+                "component_name" : "MAPREDUCE2_CLIENT",
+                "dependent_component_name" : "OOZIE_CLIENT",
+                "dependent_service_name" : "OOZIE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/OOZIE/serviceComponents/OOZIE_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/OOZIE/components/OOZIE_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "OOZIE_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "Oozie Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "OOZIE",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/OOZIE/components/OOZIE_SERVER/dependencies/HDFS_CLIENT",
+              "Dependencies" : {
+                "component_name" : "HDFS_CLIENT",
+                "dependent_component_name" : "OOZIE_SERVER",
+                "dependent_service_name" : "OOZIE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/OOZIE/components/OOZIE_SERVER/dependencies/MAPREDUCE2_CLIENT",
+              "Dependencies" : {
+                "component_name" : "MAPREDUCE2_CLIENT",
+                "dependent_component_name" : "OOZIE_SERVER",
+                "dependent_service_name" : "OOZIE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/OOZIE/components/OOZIE_SERVER/dependencies/YARN_CLIENT",
+              "Dependencies" : {
+                "component_name" : "YARN_CLIENT",
+                "dependent_component_name" : "OOZIE_SERVER",
+                "dependent_service_name" : "OOZIE",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/PIG",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/PIG",
       "StackServices" : {
         "comments" : "Scripting platform for analyzing large datasets",
+        "custom_commands" : [ ],
+        "display_name" : "Pig",
+        "required_services" : [
+          "YARN"
+        ],
+        "service_check_supported" : true,
         "service_name" : "PIG",
-        "service_version" : "0.12.0.2.1",
+        "service_version" : "0.12.1.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "pig-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "pig-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "pig-properties" : {
+            "supports" : {
+              "final" : "false"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/PIG/serviceComponents/PIG",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/PIG/components/PIG",
           "StackServiceComponents" : {
+            "cardinality" : "0+",
             "component_category" : "CLIENT",
             "component_name" : "PIG",
+            "custom_commands" : [ ],
+            "display_name" : "Pig",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "PIG",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/SQOOP",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/SQOOP",
       "StackServices" : {
         "comments" : "Tool for transferring bulk data between Apache Hadoop and\n        structured data stores such as relational databases\n      ",
+        "custom_commands" : [ ],
+        "display_name" : "Sqoop",
+        "required_services" : [
+          "HDFS"
+        ],
+        "service_check_supported" : true,
         "service_name" : "SQOOP",
         "service_version" : "1.4.4.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "sqoop-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/SQOOP/serviceComponents/SQOOP",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/SQOOP/components/SQOOP",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "SQOOP",
+            "custom_commands" : [ ],
+            "display_name" : "Sqoop",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "SQOOP",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/SQOOP/components/SQOOP/dependencies/HDFS_CLIENT",
+              "Dependencies" : {
+                "component_name" : "HDFS_CLIENT",
+                "dependent_component_name" : "SQOOP",
+                "dependent_service_name" : "SQOOP",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/SQOOP/components/SQOOP/dependencies/MAPREDUCE2_CLIENT",
+              "Dependencies" : {
+                "component_name" : "MAPREDUCE2_CLIENT",
+                "dependent_component_name" : "SQOOP",
+                "dependent_service_name" : "SQOOP",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/GLUSTERFS",
-      "StackServices" : { 
-        "comments" : "An HCFS file system", 
-        "service_name" : "GLUSTERFS",
-        "service_version" : "2.1.3.0",
-        "stack_name" : "HDP",
-        "stack_version" : "2.1"
-      },
-      "serviceComponents" : [
-        {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/GLUSTERFS/serviceComponents/GLUSTERFS",
-          "StackServiceComponents" : {
-            "component_category" : "CLIENT",
-            "component_name" : "GLUSTERFS_CLIENT",
-            "is_client" : true,
-            "is_master" : false,
-            "service_name" : "GLUSTERFS",
-            "stack_name" : "HDP",
-            "stack_version" : "2.1"
-          }
-        }
-      ]
-    },              
-    {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/STORM",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/STORM",
       "StackServices" : {
         "comments" : "Apache Hadoop Stream processing framework",
+        "custom_commands" : [ ],
+        "display_name" : "Storm",
+        "required_services" : [
+          "ZOOKEEPER"
+        ],
+        "service_check_supported" : true,
         "service_name" : "STORM",
-        "service_version" : "0.9.0.1",
+        "service_version" : "0.9.1.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "storm-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "storm-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/STORM/serviceComponents/DRPC_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/STORM/components/DRPC_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "DRPC_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "DRPC Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "STORM",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/STORM/serviceComponents/NIMBUS",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/STORM/components/NIMBUS",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "NIMBUS",
+            "custom_commands" : [ ],
+            "display_name" : "Nimbus",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "STORM",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/STORM/components/NIMBUS/dependencies/ZOOKEEPER_SERVER",
+              "Dependencies" : {
+                "component_name" : "ZOOKEEPER_SERVER",
+                "dependent_component_name" : "NIMBUS",
+                "dependent_service_name" : "STORM",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/STORM/serviceComponents/STORM_REST_API",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/STORM/components/STORM_REST_API",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "STORM_REST_API",
+            "custom_commands" : [ ],
+            "display_name" : "Storm REST API Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "STORM",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/STORM/serviceComponents/STORM_UI_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/STORM/components/STORM_UI_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "STORM_UI_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "Storm UI Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "STORM",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/STORM/serviceComponents/SUPERVISOR",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/STORM/components/SUPERVISOR",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "SLAVE",
             "component_name" : "SUPERVISOR",
+            "custom_commands" : [ ],
+            "display_name" : "Supervisor",
             "is_client" : false,
             "is_master" : false,
             "service_name" : "STORM",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/TEZ",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/TEZ",
       "StackServices" : {
         "comments" : "Tez is the next generation Hadoop Query Processing framework written on top of YARN.",
+        "custom_commands" : [ ],
+        "display_name" : "Tez",
+        "required_services" : [
+          "YARN"
+        ],
+        "service_check_supported" : false,
         "service_name" : "TEZ",
         "service_version" : "0.4.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "tez-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "tez-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/TEZ/serviceComponents/TEZ_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/TEZ/components/TEZ_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "TEZ_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : "Tez Client",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "TEZ",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/WEBHCAT",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/WEBHCAT",
       "StackServices" : {
         "comments" : "This is comment for WEBHCAT service",
+        "custom_commands" : [ ],
+        "display_name" : "WebHCat",
+        "required_services" : [
+          "HIVE",
+          "ZOOKEEPER"
+        ],
+        "service_check_supported" : true,
         "service_name" : "WEBHCAT",
-        "service_version" : "0.12.0.2.1",
+        "service_version" : "0.13.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "webhcat-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "webhcat-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/WEBHCAT/serviceComponents/WEBHCAT_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/WEBHCAT/components/WEBHCAT_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1",
             "component_category" : "MASTER",
             "component_name" : "WEBHCAT_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "WebHCat Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "WEBHCAT",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/WEBHCAT/components/WEBHCAT_SERVER/dependencies/HDFS_CLIENT",
+              "Dependencies" : {
+                "component_name" : "HDFS_CLIENT",
+                "dependent_component_name" : "WEBHCAT_SERVER",
+                "dependent_service_name" : "WEBHCAT",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/WEBHCAT/components/WEBHCAT_SERVER/dependencies/MAPREDUCE2_CLIENT",
+              "Dependencies" : {
+                "component_name" : "MAPREDUCE2_CLIENT",
+                "dependent_component_name" : "WEBHCAT_SERVER",
+                "dependent_service_name" : "WEBHCAT",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/WEBHCAT/components/WEBHCAT_SERVER/dependencies/YARN_CLIENT",
+              "Dependencies" : {
+                "component_name" : "YARN_CLIENT",
+                "dependent_component_name" : "WEBHCAT_SERVER",
+                "dependent_service_name" : "WEBHCAT",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/WEBHCAT/components/WEBHCAT_SERVER/dependencies/ZOOKEEPER_CLIENT",
+              "Dependencies" : {
+                "component_name" : "ZOOKEEPER_CLIENT",
+                "dependent_component_name" : "WEBHCAT_SERVER",
+                "dependent_service_name" : "WEBHCAT",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            },
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/WEBHCAT/components/WEBHCAT_SERVER/dependencies/ZOOKEEPER_SERVER",
+              "Dependencies" : {
+                "component_name" : "ZOOKEEPER_SERVER",
+                "dependent_component_name" : "WEBHCAT_SERVER",
+                "dependent_service_name" : "WEBHCAT",
+                "stack_name" : "HDP",
+                "stack_version" : "2.1"
+              }
+            }
+          ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/YARN",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/YARN",
       "StackServices" : {
         "comments" : "Apache Hadoop NextGen MapReduce (YARN)",
+        "custom_commands" : [ ],
+        "display_name" : "YARN",
+        "required_services" : [
+          "HDFS",
+          "TEZ"
+        ],
+        "service_check_supported" : true,
         "service_name" : "YARN",
-        "service_version" : "2.1.0.2.1",
+        "service_version" : "2.4.0.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "capacity-scheduler" : {
+            "supports" : {
+              "final" : "true"
+            }
+          },
+          "yarn-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "yarn-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "yarn-site" : {
+            "supports" : {
+              "final" : "true"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/YARN/serviceComponents/APP_TIMELINE_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/YARN/components/APP_TIMELINE_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "0-1",
             "component_category" : "MASTER",
             "component_name" : "APP_TIMELINE_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "App Timeline Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "YARN",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/YARN/serviceComponents/NODEMANAGER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/YARN/components/NODEMANAGER",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "SLAVE",
             "component_name" : "NODEMANAGER",
+            "custom_commands" : [ ],
+            "display_name" : "NodeManager",
             "is_client" : false,
             "is_master" : false,
             "service_name" : "YARN",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/YARN/serviceComponents/RESOURCEMANAGER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/YARN/components/RESOURCEMANAGER",
           "StackServiceComponents" : {
+            "cardinality" : "1-2",
             "component_category" : "MASTER",
             "component_name" : "RESOURCEMANAGER",
+            "custom_commands" : [
+              "DECOMMISSION",
+              "REFRESHQUEUES"
+            ],
+            "display_name" : "ResourceManager",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "YARN",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/YARN/serviceComponents/YARN_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/YARN/components/YARN_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "YARN_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : "Yarn Client",
             "is_client" : true,
             "is_master" : false,
             "service_name" : "YARN",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     },
     {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/ZOOKEEPER",
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/ZOOKEEPER",
       "StackServices" : {
         "comments" : "Centralized service which provides highly reliable distributed\n        coordination.",
+        "custom_commands" : [ ],
+        "display_name" : "ZooKeeper",
+        "required_services" : [ ],
+        "service_check_supported" : true,
         "service_name" : "ZOOKEEPER",
         "service_version" : "3.4.5.2.1",
         "stack_name" : "HDP",
-        "stack_version" : "2.1"
+        "stack_version" : "2.1",
+        "user_name" : null,
+        "config_types" : {
+          "zookeeper-env" : {
+            "supports" : {
+              "final" : "false"
+            }
+          },
+          "zookeeper-log4j" : {
+            "supports" : {
+              "final" : "false"
+            }
+          }
+        }
       },
       "serviceComponents" : [
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/ZOOKEEPER/serviceComponents/ZOOKEEPER_CLIENT",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/ZOOKEEPER/components/ZOOKEEPER_CLIENT",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "CLIENT",
             "component_name" : "ZOOKEEPER_CLIENT",
+            "custom_commands" : [ ],
+            "display_name" : null,
             "is_client" : true,
             "is_master" : false,
             "service_name" : "ZOOKEEPER",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         },
         {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/ZOOKEEPER/serviceComponents/ZOOKEEPER_SERVER",
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/services/ZOOKEEPER/components/ZOOKEEPER_SERVER",
           "StackServiceComponents" : {
+            "cardinality" : "1+",
             "component_category" : "MASTER",
             "component_name" : "ZOOKEEPER_SERVER",
+            "custom_commands" : [ ],
+            "display_name" : "ZooKeeper Server",
             "is_client" : false,
             "is_master" : true,
             "service_name" : "ZOOKEEPER",
             "stack_name" : "HDP",
             "stack_version" : "2.1"
-          }
-        }
-      ]
-    },
-    {
-      "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/FLUME",
-      "StackServices" : {
-        "comments" : "Efficiently collects, aggregates, and moves large amounts of log data",
-        "service_name" : "FLUME",
-        "service_version" : "1.4.0",
-        "stack_name" : "HDP",
-        "stack_version" : "2.1"
-      },
-      "serviceComponents" : [
-        {
-          "href" : "http://localhost:8080/api/v1/stacks/HDP/versions/2.1/stackServices/FLUME/serviceComponents/FLUME_HANDLER",
-          "StackServiceComponents" : {
-            "component_category" : "SLAVE",
-            "component_name" : "FLUME_HANDLER",
-            "is_client" : false,
-            "is_master" : false,
-            "service_name" : "FLUME",
-            "stack_name" : "HDP",
-            "stack_version" : "2.1"
-          }
+          },
+          "dependencies" : [ ]
         }
       ]
     }

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/assets/data/views/instances.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/views/instances.json b/ambari-web/app/assets/data/views/instances.json
new file mode 100644
index 0000000..aa8ff0f
--- /dev/null
+++ b/ambari-web/app/assets/data/views/instances.json
@@ -0,0 +1,40 @@
+{
+  "href" : "http://192.168.56.101:8080/api/v1/views?fields=versions/instances/ViewInstanceInfo,versions/ViewVersionInfo/label",
+  "items" : [
+    {
+      "href" : "http://192.168.56.101:8080/api/v1/views/ADMIN_VIEW",
+      "ViewInfo" : {
+        "view_name" : "ADMIN_VIEW"
+      },
+      "versions" : [
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/views/ADMIN_VIEW/versions/1.0.0",
+          "ViewVersionInfo" : {
+            "label" : "Ambari Admin View",
+            "version" : "1.0.0",
+            "view_name" : "ADMIN_VIEW"
+          },
+          "instances" : [
+            {
+              "href" : "http://192.168.56.101:8080/api/v1/views/ADMIN_VIEW/versions/1.0.0/instances/INSTANCE",
+              "ViewInstanceInfo" : {
+                "context_path" : "/views/ADMIN_VIEW/1.0.0/INSTANCE",
+                "description" : "This view provides administration capabilities for Ambari",
+                "icon64_path" : null,
+                "icon_path" : null,
+                "instance_name" : "INSTANCE",
+                "label" : "Ambari Admin View",
+                "static" : true,
+                "version" : "1.0.0",
+                "view_name" : "ADMIN_VIEW",
+                "visible" : false,
+                "instance_data" : { },
+                "properties" : { }
+              }
+            }
+          ]
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/assets/data/views/views.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/views/views.json b/ambari-web/app/assets/data/views/views.json
new file mode 100644
index 0000000..c12f034
--- /dev/null
+++ b/ambari-web/app/assets/data/views/views.json
@@ -0,0 +1,11 @@
+{
+  "href" : "http://192.168.56.101:8080/api/v1/views?_=1409657514311",
+  "items" : [
+    {
+      "href" : "http://192.168.56.101:8080/api/v1/views/ADMIN_VIEW",
+      "ViewInfo" : {
+        "view_name" : "ADMIN_VIEW"
+      }
+    }
+  ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/controllers/global/update_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/global/update_controller.js b/ambari-web/app/controllers/global/update_controller.js
index 5427794..8098213 100644
--- a/ambari-web/app/controllers/global/update_controller.js
+++ b/ambari-web/app/controllers/global/update_controller.js
@@ -211,6 +211,9 @@ App.UpdateController = Em.Controller.extend({
             realUrl.replace('<parameters>', '') +
             (paginationProps.length > 0 ? '&' + paginationProps.substring(0, paginationProps.length - 1) : '') +
             (sortProps.length > 0 ? '&' + sortProps.substring(0, sortProps.length - 1) : '');
+          if (App.get('testMode')) {
+            realUrl = testUrl;
+          }
           App.HttpClient.get(realUrl, App.hostsMapper, {
             complete: callback,
             doGetAsPost: true,

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/utils/ajax/ajax.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/utils/ajax/ajax.js b/ambari-web/app/utils/ajax/ajax.js
index 25a8cd2..4821ba6 100644
--- a/ambari-web/app/utils/ajax/ajax.js
+++ b/ambari-web/app/utils/ajax/ajax.js
@@ -900,7 +900,7 @@ var urls = {
   },
   'cluster.load_repositories': {
     'real': '/stacks/{stackName}/versions/{stackVersion}/operating_systems?fields=repositories/*',
-    'mock': '',
+    'mock': '/data/stacks/HDP-2.1/operating_systems.json',
     'format': function (data) {
       return {
         data: data.data
@@ -1705,14 +1705,14 @@ var urls = {
   },
   'views.info': {
     'real': '/views',
-    'mock':''
+    'mock': '/data/views/views.json'
   },
   /**
    * Get all instances of all views across versions
    */
   'views.instances': {
     'real': '/views?fields=versions/instances/ViewInstanceInfo,versions/ViewVersionInfo/label',
-    'mock':''
+    'mock': '/data/views/instances.json'
   },
   'host.host_component.flume.metrics': {
     'real': '/clusters/{clusterName}/hosts/{hostName}/host_components/FLUME_HANDLER?fields=metrics/flume/flume/{flumeComponent}/*',
@@ -1764,7 +1764,7 @@ var urls = {
   },
   'hosts.for_quick_links': {
     'real': '/clusters/{clusterName}/hosts?Hosts/host_name.in({masterHosts})&fields=Hosts/public_host_name,host_components/HostRoles/component_name{urlParams}&minimal_response=true',
-    'mock': ''
+    'mock': '/data/hosts/quick_links.json'
   },
   'hosts.confirmed.install': {
     'real': '/hosts?fields=Hosts/cpu_count,Hosts/disk_info,Hosts/total_mem&minimal_response=true',

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/utils/http_client.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/utils/http_client.js b/ambari-web/app/utils/http_client.js
index ef3c94a..ea05d18 100644
--- a/ambari-web/app/utils/http_client.js
+++ b/ambari-web/app/utils/http_client.js
@@ -140,7 +140,7 @@ App.HttpClient = Em.Object.create({
     }
     var client = this,
       request = function () {
-        if (data.doGetAsPost) {
+        if (data.doGetAsPost && !App.get('testMode')) {
           client.getAsPostRequest(url, data, mapper, errorHandler);
         }
         else {

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/views/common/quick_view_link_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/common/quick_view_link_view.js b/ambari-web/app/views/common/quick_view_link_view.js
index 37611a7..036acc9 100644
--- a/ambari-web/app/views/common/quick_view_link_view.js
+++ b/ambari-web/app/views/common/quick_view_link_view.js
@@ -170,7 +170,7 @@ App.QuickViewLinks = Em.View.extend({
             return !(item.host_components.someProperty('metrics.hbase.master.IsActiveMaster', 'true') || item.host_components.someProperty('metrics.hbase.master.IsActiveMaster', 'false')) ;
           });
         }
-        if (masterComponents) {
+        if (masterComponents.length > 0) {
           if (App.singleNodeInstall) {
             hosts[0] = App.singleNodeAlias;
           } else if (masterComponents.length > 1) {


[11/15] AMBARI-7084 - Capacity Scheduler View cleanup (Jeff Sposetti via tbeerbower)

Posted by nc...@apache.org.
http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/components/confirmDelete.js
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/components/confirmDelete.js b/contrib/views/capacity-scheduler/src/main/resources/ui/app/components/confirmDelete.js
index 5b465bc..8aaebf5 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/components/confirmDelete.js
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/components/confirmDelete.js
@@ -48,7 +48,7 @@ App.ClickElsewhereMixin = Ember.Mixin.create({
   }
 });
 
-App.ComfirmDeleteComponent = Em.Component.extend(App.ClickElsewhereMixin,{
+App.ConfirmDeleteComponent = Em.Component.extend(App.ClickElsewhereMixin,{
   confirm:false,
   onClickElsewhere:function () {
     this.set('confirm',false);

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/router.js
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/router.js b/contrib/views/capacity-scheduler/src/main/resources/ui/app/router.js
index fc9108c..ea21d90 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/router.js
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/router.js
@@ -78,7 +78,7 @@ App.QueueRoute = Ember.Route.extend({
   
   actions: {
     refreshQueue: function() {
-    var x = "{ \"RequestInfo\" : { \"command\" : \"REFRESHQUEUES\", \"context\" : \"Refresh YARN Capacity Scheduler\" }, "
+    var x = "{ \"RequestInfo\" : { \"command\" : \"REFRESHQUEUES\", \"context\" : \"Refresh YARN Capacity Scheduler\",\"parameters/forceRefreshConfigTags\":\"capacity-scheduler\" }, "
     x = x + "\"Requests/resource_filters\":[{\"service_name\":\"YARN\",\"component_name\":\"RESOURCEMANAGER\",\"hosts\":\"c6403.ambari.apache.org\"}]}";
     
       App.Adapter.ajaxPost("/api/v1/clusters/MyCluster/requests", x);

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/styles/application.less
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/styles/application.less b/contrib/views/capacity-scheduler/src/main/resources/ui/app/styles/application.less
index 94e3996..2f13d09 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/styles/application.less
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/styles/application.less
@@ -20,6 +20,54 @@
   padding: 15px;
 }
 
+.queue-label {
+    float: left;
+    padding-right: 10px;
+    min-width: 80px;
+}
+
+.capacity-edit {
+    padding-left: 80px;
+}
+
+.max-capacity-edit {
+    padding-left: 10px;
+}
+
+.queue-heading-row .input-group h3 {
+    margin-bottom: 0;
+    margin-top: 3px;
+}
+
+.form-horizontal .control-label {
+    padding-top: 0;
+    text-align: right;
+}
+
+.form-horizontal .control-value {
+    padding-top: 5px;
+}
+
+.edit-link {
+    font-size: .75em;
+    padding-top: 4px;
+    }
+
+.control-label {
+    font-size: .9em;
+    }
+    
+.well-queue {
+    background-color: #ffffff;
+    border: 1px solid #e3e3e3;
+    border-radius: 4px;
+    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05) inset;
+    margin-bottom: 20px;
+    min-height: 20px;
+    padding: 19px;
+    padding-top: 5px;
+  }
+
 .btn {
   padding: 6px 10px;
   transition: background-color .08s linear 0s;
@@ -198,8 +246,9 @@
   }
   .panel-body.queues {
     border-top: 1px solid #dddddd;
-    background-color: #f5f5f5;
+//    background-color: #f5f5f5;
   }
+
   .queue-capacity{
     border-bottom: 1px solid #dddddd;
     padding-bottom: 8px;
@@ -234,5 +283,6 @@
 .queue-heading-row {
   h3 {
     margin:10px;
+    margin-left: 0px;
   }
 }

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/capacityEditForm.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/capacityEditForm.hbs b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/capacityEditForm.hbs
index 9442973..51e2bb4 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/capacityEditForm.hbs
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/capacityEditForm.hbs
@@ -18,12 +18,12 @@
 
 <form {{bind-attr class=":form-inline :capacity-edit-form " }} role="form">
   <div {{bind-attr class=":form-group" }}>
-    <label  class="control-label">Capacity: </label>
+    <label  class="control-label capacity-edit">Capacity: </label>
     {{capacity-input class='input-sm' value=this.capacity totalCapacity=view.totalCapacity queue=this maxVal=100}}
     
   </div>
   <div {{bind-attr class=":form-group this.isValid::has-error" }}>
-    <label class="control-label">Maximum capacity: </label>
+    <label class="control-label max-capacity-edit">Max. Capacity: </label>
     {{max-capacity-input class='input-sm' value=this.maximum_capacity totalCapacity=view.totalCapacity queue=this maxVal=100}}
     {{#each this.errors.maximum_capacity}}
       <span class="help-block">

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/components/totalCapacity.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/components/totalCapacity.hbs b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/components/totalCapacity.hbs
index c934081..f6f3c64 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/components/totalCapacity.hbs
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/components/totalCapacity.hbs
@@ -22,22 +22,22 @@
     <strong>Capacity</strong>
     <a href="#" {{action 'toggleEdit'}} class="text-right"> 
       {{#if view.isEdit}}
-        <i class="fa fa-edit">Hide edit</i> 
+        <div class="edit-link">Hide Edit</div>
       {{else}}
-        <i class="fa fa-edit">Show edit</i> 
+        <div class="edit-link">Show Edit</div>
       {{/if}}
     </a>
   </div>
   </div>
   <div class="panel-body total">
-    TOTAL
-    {{capacity-bar capacityValue=totalCapacity maxCapacityValue=totalCapacity warn=leafQueues.firstObject.overCapacity}}
+<div class="control-label queue-label">TOTAL</div>
+{{capacity-bar capacityValue=totalCapacity maxCapacityValue=totalCapacity warn=leafQueues.firstObject.overCapacity}}
   </div>
   <div class="panel-body queues">
     {{#each leafQueues}}
       <div {{bind-attr class=":queue-capacity this.isCurrent:active"}}>
         <p>
-          {{this.name}} {{#if isCurrent}} <span class="label label-default">Current</span> {{/if}}
+          <div class="control-label queue-label">{{this.name}}</div>
         </p>
         {{capacity-bar capacityValue=this.capacity maxCapacityValue=this.maximum_capacity warn=this.overCapacity}}
         {{render "capacityEditForm" this}}
@@ -47,13 +47,6 @@
       <div {{bind-attr class=":queue-capacity :new-queue this.isCurrent:active"}} >
         <div class="input-row row" >
           <div class="col-md-5">
-            <div class="input-group">
-              {{view view.newQueueNameField value=this.name queue=this placeholder="Enter queue name..."}}
-              <span class="input-group-btn">
-                <button {{action "deleteQueue" this}} {{bind-attr class=":btn :btn-danger"}} type="button">Cancel</button>
-                <button {{action "createQueue" this}} {{bind-attr class=":btn :btn-default this.isValid::disabled"}} type="button">Create</button>
-              </span>
-            </div>
             {{#each this.errors.path}}
               <p class="help-block red">{{this.message}}</p>
             {{/each}}
@@ -63,10 +56,5 @@
         {{render "capacityEditForm" this}}
       </div>
     {{/each}}
-    {{#if currentQueue.parentPath}}
-    <div class="queue-capacity" >
-      <button {{action "addQueue" currentQueue.parentPath}} {{bind-attr class=":btn :btn-default :btn-block hasNew:disabled"}}><i class="fa fa-plus"></i>  Add queue</button>
-    </div>
-    {{/if}}
   </div>
 </div>

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queue.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queue.hbs b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queue.hbs
index f92eedd..9a99b18 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queue.hbs
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queue.hbs
@@ -16,17 +16,19 @@
 * limitations under the License.
 }}
 
-<div class="well">
+<div class="well-queue">
   
   <div class="row queue-heading-row">
       <div class="col-md-12">
           {{#if content.isNew}}
             <div class="input-group">
-              {{focus-input value=content.name class="form-control" classBinding="content.isValid::input-error" action="createQ" revert="delQ" placeholder="Enter queue name..."}}
+            <h3>
+              {{focus-input value=content.name length="250" class="form-control" classBinding="content.isValid::input-error" action="createQ" revert="delQ" placeholder="Enter Queue Name"}}
               <span class="input-group-btn">
                 <button {{action "delQ" content target="controllers.queues"}} {{bind-attr class=":btn :btn-danger"}} type="button">Cancel</button>
-                <button {{action "createQ" content target="controllers.queues"}} {{bind-attr class=":btn :btn-default content.isValid::disabled"}} type="button">Create</button>
+                <button {{action "createQ" content target="controllers.queues"}} {{bind-attr class=":btn :btn-success content.isValid::disabled"}} type="button">Create</button>
               </span>
+            </h3>
             </div>
             {{else}}
               {{#unless isRenaming}}
@@ -39,17 +41,19 @@
                     </a>
                   </small>
                   <small>
-                    {{comfirm-delete action="delQ" param=content}}
+                    {{confirm-delete action="delQ" param=content}}
                   </small>
                   {{/unless}}
                 </h3>
               {{else}}
               <div class="input-group">
-                {{focus-input value=content.name class="form-control" action="renameQ" revert="renameQ" classBinding="content.isValid::input-error" placeholder="Enter queue name..."}}
+                <h3>
+                {{focus-input value=content.name length="250" class="form-control" action="renameQ" revert="renameQ" classBinding="content.isValid::input-error" placeholder="Enter Queue Name"}}
                 <span class="input-group-btn">
                   <button {{action "renameQ" 'cancel'}} {{bind-attr class=":btn :btn-danger"}} type="button">Cancel</button>
-                  <button {{action "renameQ" 'rename'}} {{bind-attr class=":btn :btn-default content.isValid::disabled"}} type="button">Rename</button>
+                  <button {{action "renameQ" 'rename'}} {{bind-attr class=":btn :btn-success content.isValid::disabled"}} type="button">Rename</button>
                 </span>
+                </h3>
               </div>
               {{/unless}}
           {{/if}}
@@ -86,12 +90,12 @@
       <div class="panel panel-default panel-capacity">
         <div class="panel-heading">
           <div class="panel-title">
-            Access control
+            <strong>Access Control</strong>
             <a href="#" {{action 'toggleEditACL'}} class="text-right"> 
               {{#if isEditACL}}
-                <small><i class="fa fa-edit">  Hide edit</i> </small>
+                <div class="edit-link">Hide Edit</div>
               {{else}}
-                <small><i class="fa fa-edit">Show edit</i> </small>
+                <div class="edit-link">Show Edit</div>
               {{/if}}
             </a>
           </div>
@@ -101,8 +105,8 @@
           {{#if isEditACL}}
 
             <div class="form-group row">
-              <label class="col-lg-6 col-md-6 col-sm-4 col-xs-5 control-label">Administer Queue ACL</label>
-              <div class="col-lg-6 col-md-6 col-sm-8 col-xs-7">
+              <label class="col-lg-4 col-xs-4 control-label">Administer Queue ACL</label>
+              <div class="col-lg-6 col-md-6 col-sm-8 col-xs-7 control-value">
                 <div class="btn-group btn-group-xs" data-toggle="buttons">
                   {{radio-button label="Anyone" selectionBinding="acl_administer_queue" value="*"}}
                   {{radio-button label="Custom" selectionBinding="acl_administer_queue" value="custom"}}
@@ -117,8 +121,8 @@
             {{/unless}}
 
             <div class="form-group row">
-              <label class="col-lg-6 col-md-6 col-sm-4 col-xs-5 control-label">Administer Jobs ACL</label>
-              <div class="col-lg-6 col-md-6 col-sm-8 col-xs-7">
+              <label class="col-lg-4 col-xs-4 control-label">Administer Jobs ACL</label>
+              <div class="col-lg-6 col-md-6 col-sm-8 col-xs-7 control-value">
                 <div class="btn-group btn-group-xs" data-toggle="buttons">
                   {{radio-button label="Anyone" selectionBinding="acl_administer_jobs" value="*"}}
                   {{radio-button label="Custom" selectionBinding="acl_administer_jobs" value="custom"}}
@@ -134,8 +138,8 @@
 
 
             <div class="form-group row">
-              <label class="col-lg-6 col-md-6 col-sm-4 col-xs-5 control-label">Submit Applications ACL</label>
-              <div class="col-lg-6 col-md-6 col-sm-8 col-xs-7">
+              <label class="col-lg-4 col-xs-4 control-label">Submit Apps ACL</label>
+              <div class="col-lg-6 col-md-6 col-sm-8 col-xs-7 control-value">
                 <div class="btn-group btn-group-xs" data-toggle="buttons">
                   {{radio-button label="Anyone" selectionBinding="acl_submit_applications" value="*"}}
                   {{radio-button label="Custom" selectionBinding="acl_submit_applications" value="custom"}}
@@ -151,8 +155,8 @@
             
           {{else}}
             <div class="form-group">
-              <label class="col-lg-6 col-md-6 col-sm-6 col-xs-6 control-label">Administer Queue ACL</label>
-              <div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
+              <label class="col-lg-4 col-xs-4 control-label">Administer Queue ACL</label>
+              <div class="col-lg-8 col-xs-8 control-value">
                <p class="form-control-static">
                 {{escapeACL content.acl_administer_queue}}
                </p> 
@@ -160,8 +164,8 @@
             </div>
 
             <div class="form-group">
-              <label class="col-lg-6 col-md-6 col-sm-6 col-xs-6 control-label">Administer Jobs ACL</label>
-              <div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
+              <label class="col-lg-4 col-xs-4 control-label">Administer Jobs ACL</label>
+              <div class="col-lg-8 col-xs-8 control-value">
                <p class="form-control-static">
                 {{escapeACL content.acl_administer_jobs}}
                </p> 
@@ -169,8 +173,8 @@
             </div>
 
             <div class="form-group">
-              <label class="col-lg-6 col-md-6 col-sm-6 col-xs-6 control-label">Submit Applications ACL</label>
-              <div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
+              <label class="col-lg-4 col-xs-4 control-label">Submit Apps ACL</label>
+              <div class="col-lg-8 col-xs-8 control-value">
                <p class="form-control-static">
                 {{escapeACL content.acl_submit_applications}}
                </p> 
@@ -186,12 +190,12 @@
       <div class="panel panel-default panel-capacity">
         <div class="panel-heading">
           <div class="panel-title">
-            Resource Allocation
+            <strong>Resource Allocation</strong>
             <a href="#" {{action 'toggleEditRA'}} class="text-right"> 
               {{#if isEditRA}}
-                <small><i class="fa fa-edit">  Hide edit</i> </small>
+                <div class="edit-link">Hide Edit</div>
               {{else}}
-                <small><i class="fa fa-edit">Show edit</i> </small>
+                <div class="edit-link">Show Edit</div>
               {{/if}}
             </a>
           </div>
@@ -199,8 +203,8 @@
         <div class="panel-body">
           <form class="form-horizontal" role="form">
             <div class="form-group">
-              <label class="col-lg-6 col-md-6 col-sm-6 col-xs-6 control-label">User Limit Factor</label>
-              <div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
+              <label class="col-lg-4 col-xs-4 control-label">User Limit Factor</label>
+              <div class="col-lg-8 col-xs-8 ">
               {{#if isEditRA}}
                 {{int-input value=content.user_limit_factor class="input-sm"}}
               {{else}}
@@ -209,8 +213,8 @@
               </div>
             </div>
             <div class="form-group">
-              <label class="col-lg-6 col-md-6 col-sm-6 col-xs-6 control-label">Minimum User Limit</label>
-              <div class="col-lg-6 col-md-6 col-sm-6 col-xs-6">
+              <label class="col-lg-4 col-xs-4 control-label">Minimum User Limit</label>
+              <div class="col-lg-8 col-xs-8">
                 {{#if isEditRA}}  
                   <div class="input-group">
                     {{int-input value=content.minimum_user_limit_percent class="input-sm" maxVal=100}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queues.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queues.hbs b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queues.hbs
index a4f8099..9ad20cb 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queues.hbs
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/queues.hbs
@@ -25,16 +25,16 @@
         </div>
       {{else}}
         <div {{bind-attr class=":add-queue needRefresh:col-md-5:col-md-6 :col-sm-6" }} >
-          <button {{action askPath}} {{bind-attr class=":btn :btn-default :btn-block hasNewQueue:disabled"}} ><i class="fa fa-plus"></i> Add queue</button>
+          <button {{action askPath}} {{bind-attr class=":btn :btn-default :btn-block hasNewQueue:disabled"}} ><i class="fa fa-plus"></i> Add Queue</button>
         </div>
         <div  {{bind-attr class=":add-queue needRefresh:col-md-7:col-md-6 :col-sm-6" }} >
           <div class="btn-group btn-group-justified btn-group-save">
             <div class="btn-group">
             {{#if needRestart}}
-              <button {{action saveConfig 'restart'}} {{bind-attr class=":btn :btn-save :btn-success canNotSave:disabled"}} ><i class="fa fa-fw fa fa-cogs"></i> Save and restart</button>
+              <button {{action saveConfig 'restart'}} {{bind-attr class=":btn :btn-save :btn-success canNotSave:disabled"}} ><i class="fa fa-fw fa fa-cogs"></i> Save and Restart</button>
               {{else}}
               {{#if needRefresh}}
-              <button {{action saveConfig 'refresh'}} {{bind-attr class=":btn :btn-save :btn-success canNotSave:disabled"}} ><i class="fa fa-fw fa-refresh"></i> Save and refresh</button>
+              <button {{action saveConfig 'refresh'}} {{bind-attr class=":btn :btn-save :btn-success canNotSave:disabled"}} ><i class="fa fa-fw fa-refresh"></i> Save and Refresh</button>
               {{else}}
               <button {{action saveConfig}} {{bind-attr class=":btn :btn-save :btn-success canNotSave:disabled"}} ><i class="fa fa-save"></i> Save</button>
               {{/if}}
@@ -45,9 +45,9 @@
                   <span class="caret"></span>
                 </button>
                 <ul class="dropdown-menu pull-right" role="menu">
-                  <li><a href="#" {{action saveConfig 'restart'}}><i class="fa fa-fw fa fa-cogs"></i> Save and restart ResourceManager</a></li>
-                  <li><a href="#" {{action saveConfig 'refresh'}}><i class="fa fa-fw fa-refresh"></i> Save and refresh Queues</a></li>
-                  <li><a href="#" {{action saveConfig}}><i class="fa fa-fw fa-save"></i> Save only</a></li>
+                  <li><a href="#" {{action saveConfig 'restart'}}><i class="fa fa-fw fa fa-cogs"></i> Save and Restart ResourceManager</a></li>
+                  <li><a href="#" {{action saveConfig 'refresh'}}><i class="fa fa-fw fa-refresh"></i> Save and Refresh Queues</a></li>
+                  <li><a href="#" {{action saveConfig}}><i class="fa fa-fw fa-save"></i> Save Only</a></li>
                 </ul>
             </div>
           </div>

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/schedulerPanel.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/schedulerPanel.hbs b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/schedulerPanel.hbs
index d121211..0a52ffa 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/schedulerPanel.hbs
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/templates/schedulerPanel.hbs
@@ -19,12 +19,12 @@
 <div class="panel panel-default panel-capacity">
   <div class="panel-heading">
     <div class="panel-title">
-      Scheduler
+      <strong>Scheduler</strong>
       <a href="#" {{action 'toggleEditScheduler'}} class="text-right"> 
         {{#if isEditScheduler}}
-          <small><i class="fa fa-edit"> Hide edit</i> </small>
+                <div class="edit-link">Hide Edit</div>
         {{else}}
-          <small><i class="fa fa-edit"> Show edit</i> </small>
+                <div class="edit-link">Show Edit</div>
         {{/if}}
       </a>
     </div>
@@ -32,8 +32,8 @@
   <div class="panel-body">
     <form class="form-horizontal" role="form">
       <div class="form-group">
-        <label class="col-xs-6 col-lg-6 col-md-7 col-sm-6 control-label">Maximum apps</label>
-        <div class="col-xs-6 col-lg-6 col-md-5 col-sm-6">
+        <label class="col-xs-4 control-label">Maximum Apps</label>
+        <div class="col-xs-8">
         {{#if isEditScheduler}}
           {{int-input value=scheduler.maximum_applications class="input-sm"}}
         {{else}}
@@ -42,8 +42,8 @@
         </div>
       </div>
       <div class="form-group">
-        <label class="col-xs-6 col-lg-6 col-md-7 col-sm-6 control-label">Minimum AM resourse</label>
-        <div class="col-xs-6 col-lg-6 col-md-5 col-sm-6">
+        <label class="col-xs-4 control-label">Minimum AM Resource</label>
+        <div class="col-xs-8">
         {{#if isEditScheduler}}
           <div class="input-group">
             {{int-input value=scheduler.maximum_am_resource_percent class="input-sm" maxVal=100}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/view.xml
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/view.xml b/contrib/views/capacity-scheduler/src/main/resources/view.xml
index 1c2efea..f23dae5 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/view.xml
+++ b/contrib/views/capacity-scheduler/src/main/resources/view.xml
@@ -21,19 +21,19 @@
 
     <parameter>
         <name>ambari.server.url</name>
-        <description>Target Ambari URL</description>
+        <description>Ambari Server REST API cluster URL (for example: http://ambari.server:8080/api/v1/clusters/c1)</description>
         <required>true</required>
     </parameter>
 
     <parameter>
         <name>ambari.server.username</name>
-        <description>Target Ambari username</description>
+        <description>Ambari administrator username (for example: admin)</description>
         <required>true</required>
     </parameter>
 
     <parameter>
         <name>ambari.server.password</name>
-        <description>Target Ambari password</description>
+        <description>Ambari administrator password (for example: admin)</description>
         <required>true</required>
         <!-- <hidden>true</hidden> -->
     </parameter>


[08/15] AMBARI-7115. Stack Service Pluggability: Adding service to a stack requires editing hooks folder (aonishuk)

Posted by nc...@apache.org.
http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/BlueprintEntityTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/BlueprintEntityTest.java b/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/BlueprintEntityTest.java
index de104e7..d8c0e29 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/BlueprintEntityTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/orm/entities/BlueprintEntityTest.java
@@ -19,6 +19,7 @@
 package org.apache.ambari.server.orm.entities;
 
 import com.google.gson.Gson;
+
 import org.apache.ambari.server.api.services.AmbariMetaInfo;
 import org.apache.ambari.server.state.PropertyInfo;
 import org.junit.Test;
@@ -28,6 +29,7 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
+import java.util.Set;
 
 import static org.easymock.EasyMock.createMock;
 import static org.easymock.EasyMock.expect;
@@ -87,7 +89,9 @@ public class BlueprintEntityTest {
     prop.setFilename("core-site.xml");
     prop.setName("super.secret.password");
     prop.setRequireInput(true);
-    prop.setType(PropertyInfo.PropertyType.PASSWORD);
+    Set<PropertyInfo.PropertyType> propertyTypes = new HashSet<PropertyInfo.PropertyType>();
+    propertyTypes.add(PropertyInfo.PropertyType.PASSWORD);
+    prop.setPropertyTypes(propertyTypes);
     prop.setValue(null);
     requiredProps.put("super.secret.password", prop);
 
@@ -131,7 +135,7 @@ public class BlueprintEntityTest {
     replay(metaInfo);
 
     Map<String, Map<String, Collection<String>>> missingProps = entity.validateConfigurations(
-        metaInfo, PropertyInfo.PropertyType.PASSWORD);
+        metaInfo, true);
 
     assertTrue(missingProps.isEmpty());
 
@@ -147,7 +151,9 @@ public class BlueprintEntityTest {
     prop.setFilename("core-site.xml");
     prop.setName("super.secret.password");
     prop.setRequireInput(true);
-    prop.setType(PropertyInfo.PropertyType.PASSWORD);
+    Set<PropertyInfo.PropertyType> propertyTypes = new HashSet<PropertyInfo.PropertyType>();
+    propertyTypes.add(PropertyInfo.PropertyType.PASSWORD);
+    prop.setPropertyTypes(propertyTypes);
     prop.setValue(null);
     requiredProps.put("super.secret.password", prop);
 
@@ -192,7 +198,7 @@ public class BlueprintEntityTest {
     replay(metaInfo);
 
     Map<String, Map<String, Collection<String>>> missingProps = entity.validateConfigurations(
-        metaInfo, PropertyInfo.PropertyType.PASSWORD);
+        metaInfo, true);
 
     assertTrue(missingProps.isEmpty());
 
@@ -208,14 +214,18 @@ public class BlueprintEntityTest {
     prop.setFilename("core-site.xml");
     prop.setName("super.secret.password");
     prop.setRequireInput(true);
-    prop.setType(PropertyInfo.PropertyType.PASSWORD);
+    Set<PropertyInfo.PropertyType> propertyTypes = new HashSet<PropertyInfo.PropertyType>();
+    propertyTypes.add(PropertyInfo.PropertyType.PASSWORD);
+    prop.setPropertyTypes(propertyTypes);
     prop.setValue(null);
 
     PropertyInfo prop2 = new PropertyInfo();
     prop2.setFilename("global.xml");
     prop2.setName("another.super.secret.password");
     prop2.setRequireInput(true);
-    prop2.setType(PropertyInfo.PropertyType.PASSWORD);
+    Set<PropertyInfo.PropertyType> propertyTypes2 = new HashSet<PropertyInfo.PropertyType>();
+    propertyTypes2.add(PropertyInfo.PropertyType.PASSWORD);
+    prop2.setPropertyTypes(propertyTypes2);
     prop2.setValue(" ");
 
     requiredProps.put("super.secret.password", prop);
@@ -261,7 +271,7 @@ public class BlueprintEntityTest {
     replay(metaInfo);
 
     Map<String, Map<String, Collection<String>>> missingProps = entity.validateConfigurations(
-        metaInfo, PropertyInfo.PropertyType.PASSWORD);
+        metaInfo, true);
 
     assertEquals(1, missingProps.size());
     Map<String, Collection<String>> typeProps = missingProps.get("hg1");

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/HIVE/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/HIVE/configuration/hive-site.xml b/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/HIVE/configuration/hive-site.xml
index 470f341..2b952d3 100644
--- a/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/HIVE/configuration/hive-site.xml
+++ b/ambari-server/src/test/resources/stacks/HDP/2.0.1/services/HIVE/configuration/hive-site.xml
@@ -46,7 +46,7 @@ limitations under the License.
   <property require-input="true">
     <name>javax.jdo.option.ConnectionPassword</name>
     <value></value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>password to use against metastore database</description>
   </property>
 


[09/15] git commit: AMBARI-7115. Stack Service Pluggability: Adding service to a stack requires editing hooks folder (aonishuk)

Posted by nc...@apache.org.
AMBARI-7115. Stack Service Pluggability: Adding service to a stack requires editing hooks folder (aonishuk)


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

Branch: refs/heads/branch-alerts-dev
Commit: a940986517cbfeb2ef889f0d8a45579b27adad1c
Parents: 29286b4
Author: Andrew Onishuk <ao...@hortonworks.com>
Authored: Tue Sep 2 21:20:21 2014 +0300
Committer: Andrew Onishuk <ao...@hortonworks.com>
Committed: Tue Sep 2 21:20:21 2014 +0300

----------------------------------------------------------------------
 .../ambari/server/agent/ExecutionCommand.java   |   2 +
 .../AmbariManagementControllerImpl.java         |  11 ++
 .../controller/StackConfigurationResponse.java  |  17 ++-
 .../StackLevelConfigurationResponse.java        |   7 +-
 .../internal/BlueprintResourceProvider.java     |   3 +-
 .../internal/ClientConfigResourceProvider.java  |  11 +-
 .../internal/ClusterResourceProvider.java       |   2 +-
 .../StackConfigurationResourceProvider.java     |   6 +
 ...StackLevelConfigurationResourceProvider.java |   6 +
 .../server/orm/entities/BlueprintEntity.java    |   4 +-
 .../ambari/server/state/ConfigHelper.java       |  28 ++++
 .../ambari/server/state/PropertyInfo.java       |  34 +++--
 .../src/main/resources/properties.json          |   2 +
 .../HDP/1.3.2/configuration/cluster-env.xml     |   2 +
 .../hooks/before-INSTALL/scripts/params.py      |  29 ++--
 .../scripts/shared_initialization.py            | 111 ++-------------
 .../GANGLIA/configuration/ganglia-env.xml       |   2 +
 .../services/HBASE/configuration/hbase-env.xml  |   1 +
 .../services/HDFS/configuration/hadoop-env.xml  |   4 +
 .../services/HDFS/package/scripts/params.py     |   1 -
 .../services/HIVE/configuration/hive-env.xml    |   3 +
 .../services/HIVE/configuration/hive-site.xml   |   2 +-
 .../MAPREDUCE/configuration/mapred-env.xml      |   1 +
 .../NAGIOS/configuration/nagios-env.xml         |   4 +-
 .../services/OOZIE/configuration/oozie-env.xml  |   1 +
 .../services/OOZIE/configuration/oozie-site.xml |   2 +-
 .../services/SQOOP/configuration/sqoop-env.xml  |   1 +
 .../ZOOKEEPER/configuration/zookeeper-env.xml   |   1 +
 .../HDP/2.0.6/configuration/cluster-env.xml     |   2 +
 .../hooks/before-INSTALL/scripts/params.py      |  35 +++--
 .../scripts/shared_initialization.py            | 136 ++-----------------
 .../services/FLUME/configuration/flume-env.xml  |   1 +
 .../GANGLIA/configuration/ganglia-env.xml       |   2 +
 .../services/HBASE/configuration/hbase-env.xml  |   1 +
 .../services/HDFS/configuration/hadoop-env.xml  |   4 +
 .../services/HDFS/package/scripts/params.py     |   1 -
 .../services/HIVE/configuration/hive-env.xml    |   3 +
 .../services/HIVE/configuration/hive-site.xml   |   2 +-
 .../NAGIOS/configuration/nagios-env.xml         |   4 +-
 .../services/OOZIE/configuration/oozie-env.xml  |   1 +
 .../services/OOZIE/configuration/oozie-site.xml |   2 +-
 .../services/SQOOP/configuration/sqoop-env.xml  |   1 +
 .../YARN/configuration-mapred/mapred-env.xml    |   1 +
 .../services/YARN/configuration/yarn-env.xml    |   1 +
 .../ZOOKEEPER/configuration/zookeeper-env.xml   |   1 +
 .../services/HIVE/configuration/hive-site.xml   |   2 +-
 .../FALCON/configuration/falcon-env.xml         |   1 +
 .../services/HIVE/configuration/hive-site.xml   |   2 +-
 .../services/STORM/configuration/storm-env.xml  |   1 +
 .../2.1/services/TEZ/configuration/tez-env.xml  |   1 +
 .../services/YARN/configuration/yarn-env.xml    |   1 +
 .../server/api/services/AmbariMetaInfoTest.java |   4 +-
 .../api/util/StackExtensionHelperTest.java      |   6 +-
 .../internal/ClusterResourceProviderTest.java   |  10 +-
 .../orm/entities/BlueprintEntityTest.java       |  24 +++-
 .../services/HIVE/configuration/hive-site.xml   |   2 +-
 56 files changed, 247 insertions(+), 303 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/agent/ExecutionCommand.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/agent/ExecutionCommand.java b/ambari-server/src/main/java/org/apache/ambari/server/agent/ExecutionCommand.java
index 33c5af4..38f9669 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/agent/ExecutionCommand.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/agent/ExecutionCommand.java
@@ -303,6 +303,8 @@ public class ExecutionCommand extends AgentCommand {
     String AMBARI_DB_RCA_PASSWORD = "ambari_db_rca_password";
     String COMPONENT_CATEGORY = "component_category";
     String REFRESH_ADITIONAL_COMPONENT_TAGS = "forceRefreshConfigTags";
+    String USER_LIST = "user_list";
+    String GROUP_LIST = "group_list";
 
     String SERVICE_CHECK = "SERVICE_CHECK"; // TODO: is it standart command? maybe add it to RoleCommand enum?
     String CUSTOM_COMMAND = "custom_command";

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
index efce9bd..e53433d 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
@@ -40,6 +40,8 @@ import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.SERVICE_P
 import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.SERVICE_REPO_INFO;
 import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.STACK_NAME;
 import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.STACK_VERSION;
+import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.USER_LIST;
+import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.GROUP_LIST;
 
 import java.io.File;
 import java.io.IOException;
@@ -107,6 +109,7 @@ import org.apache.ambari.server.state.HostState;
 import org.apache.ambari.server.state.MaintenanceState;
 import org.apache.ambari.server.state.OperatingSystemInfo;
 import org.apache.ambari.server.state.PropertyInfo;
+import org.apache.ambari.server.state.PropertyInfo.PropertyType;
 import org.apache.ambari.server.state.RepositoryInfo;
 import org.apache.ambari.server.state.Service;
 import org.apache.ambari.server.state.ServiceComponent;
@@ -1626,6 +1629,14 @@ public class AmbariManagementControllerImpl implements AmbariManagementControlle
     }
     String packageList = gson.toJson(packages);
     hostParams.put(PACKAGE_LIST, packageList);
+    
+    Set<String> userSet = configHelper.getPropertyValuesWithPropertyType(stackId, PropertyType.USER, cluster);
+    String userList = gson.toJson(userSet);
+    hostParams.put(USER_LIST, userList);
+    
+    Set<String> groupSet = configHelper.getPropertyValuesWithPropertyType(stackId, PropertyType.GROUP, cluster);
+    String groupList = gson.toJson(groupSet);
+    hostParams.put(GROUP_LIST, groupList);
 
     if (configs.getServerDBName().equalsIgnoreCase(Configuration
       .ORACLE_DB_NAME)) {

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/controller/StackConfigurationResponse.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/StackConfigurationResponse.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/StackConfigurationResponse.java
index 96ca232..9a7831e 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/StackConfigurationResponse.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/StackConfigurationResponse.java
@@ -20,6 +20,9 @@ package org.apache.ambari.server.controller;
 
 
 import java.util.Map;
+import java.util.Set;
+
+import org.apache.ambari.server.state.PropertyInfo.PropertyType;
 
 public class StackConfigurationResponse {
 
@@ -52,13 +55,13 @@ public class StackConfigurationResponse {
    */
   public StackConfigurationResponse(String propertyName, String propertyValue,
                                     String propertyDescription, String type,
-                                    Boolean isRequired, String propertyType, Map<String, String> propertyAttributes) {
+                                    Boolean isRequired, Set<PropertyType> propertyTypes, Map<String, String> propertyAttributes) {
     setPropertyName(propertyName);
     setPropertyValue(propertyValue);
     setPropertyDescription(propertyDescription);
     setType(type);
     setRequired(isRequired);
-    setPropertyType(propertyType);
+    setPropertyType(propertyTypes);
     setPropertyAttributes(propertyAttributes);
   }
 
@@ -71,7 +74,7 @@ public class StackConfigurationResponse {
   private String type;
   private Map<String, String> propertyAttributes;
   private Boolean isRequired;
-  private String propertyType;
+  private Set<PropertyType> propertyTypes;
 
   public String getStackName() {
     return stackName;
@@ -171,11 +174,11 @@ public class StackConfigurationResponse {
    * Get type of property as set in the stack definition.
    * @return Property type.
    */
-  public String getPropertyType() {
-    return propertyType;
+  public Set<PropertyType> getPropertyType() {
+    return propertyTypes;
   }
 
-  public void setPropertyType(String propertyType) {
-    this.propertyType = propertyType;
+  public void setPropertyType(Set<PropertyType> propertyTypes) {
+    this.propertyTypes = propertyTypes;
   }
 }

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/controller/StackLevelConfigurationResponse.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/StackLevelConfigurationResponse.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/StackLevelConfigurationResponse.java
index 7229197..151ce07 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/StackLevelConfigurationResponse.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/StackLevelConfigurationResponse.java
@@ -20,14 +20,17 @@ package org.apache.ambari.server.controller;
 
 
 import java.util.Map;
+import java.util.Set;
+
+import org.apache.ambari.server.state.PropertyInfo.PropertyType;
 
 public class StackLevelConfigurationResponse extends StackConfigurationResponse {
   public StackLevelConfigurationResponse(String propertyName,
       String propertyValue, String propertyDescription, String type,
-      Boolean isRequired, String propertyType,
+      Boolean isRequired, Set<PropertyType> propertyTypes,
       Map<String, String> propertyAttributes) {
     super(propertyName, propertyValue, propertyDescription, type, isRequired,
-        propertyType, propertyAttributes);
+        propertyTypes, propertyAttributes);
   }
   
   public StackLevelConfigurationResponse(String propertyName, String propertyValue, String propertyDescription,

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintResourceProvider.java
index 2cf01ff..c49b677 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintResourceProvider.java
@@ -20,6 +20,7 @@ package org.apache.ambari.server.controller.internal;
 
 import com.google.gson.Gson;
 import com.google.inject.Inject;
+
 import org.apache.ambari.server.AmbariException;
 import org.apache.ambari.server.DuplicateResourceException;
 import org.apache.ambari.server.api.services.AmbariMetaInfo;
@@ -557,7 +558,7 @@ public class BlueprintResourceProvider extends BaseBlueprintProcessor {
               blueprint.getBlueprintName());
         }
         Map<String, Map<String, Collection<String>>> missingProperties = blueprint.validateConfigurations(
-            stackInfo, PropertyInfo.PropertyType.DEFAULT);
+            stackInfo, false);
 
         if (! missingProperties.isEmpty()) {
           throw new IllegalArgumentException("Required configurations are missing from the specified host groups: " +

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
index e5b6016..7bec61a 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
@@ -22,6 +22,7 @@ import com.google.inject.Inject;
 import com.google.inject.assistedinject.Assisted;
 import com.google.inject.assistedinject.AssistedInject;
 import com.google.inject.persist.Transactional;
+
 import org.apache.ambari.server.*;
 import org.apache.ambari.server.api.services.AmbariMetaInfo;
 import org.apache.ambari.server.configuration.Configuration;
@@ -29,6 +30,7 @@ import org.apache.ambari.server.controller.*;
 import org.apache.ambari.server.controller.spi.*;
 import org.apache.ambari.server.controller.utilities.PropertyHelper;
 import org.apache.ambari.server.state.*;
+import org.apache.ambari.server.state.PropertyInfo.PropertyType;
 import org.apache.ambari.server.utils.StageUtils;
 
 import java.io.File;
@@ -36,7 +38,6 @@ import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.util.*;
-import java.util.List;
 import java.util.concurrent.TimeoutException;
 
 import static org.apache.ambari.server.agent.ExecutionCommand.KeyNames.*;
@@ -241,6 +242,14 @@ public class ClientConfigResourceProvider extends AbstractControllerResourceProv
       }
       String packageList = gson.toJson(packages);
       hostLevelParams.put(PACKAGE_LIST, packageList);
+      
+      Set<String> userSet = configHelper.getPropertyValuesWithPropertyType(stackId, PropertyType.USER, cluster);
+      String userList = gson.toJson(userSet);
+      hostLevelParams.put(USER_LIST, userList);
+      
+      Set<String> groupSet = configHelper.getPropertyValuesWithPropertyType(stackId, PropertyType.GROUP, cluster);
+      String groupList = gson.toJson(groupSet);
+      hostLevelParams.put(GROUP_LIST, groupList);
 
       String jsonConfigurations = null;
       Map<String, Object> commandParams = new HashMap<String, Object>();

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java
index eeee694..3307b59 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClusterResourceProvider.java
@@ -454,7 +454,7 @@ public class ClusterResourceProvider extends BaseBlueprintProcessor {
                                           String defaultPassword) {
 
     Map<String, Map<String, Collection<String>>> missingPasswords = blueprint.validateConfigurations(
-        stackInfo, PropertyInfo.PropertyType.PASSWORD);
+        stackInfo, true);
 
     Iterator<Map.Entry<String, Map<String, Collection<String>>>> iter;
     for(iter = missingPasswords.entrySet().iterator(); iter.hasNext(); ) {

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackConfigurationResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackConfigurationResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackConfigurationResourceProvider.java
index 2e2bfe1..4abf3d2 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackConfigurationResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/StackConfigurationResourceProvider.java
@@ -59,6 +59,9 @@ public class StackConfigurationResourceProvider extends
 
   public static final String PROPERTY_DESCRIPTION_PROPERTY_ID = PropertyHelper
       .getPropertyId("StackConfigurations", "property_description");
+  
+  public static final String PROPERTY_PROPERTY_TYPE_PROPERTY_ID = PropertyHelper
+      .getPropertyId("StackConfigurations", "property_type");
 
   public static final String PROPERTY_TYPE_PROPERTY_ID = PropertyHelper
       .getPropertyId("StackConfigurations", "type");
@@ -125,6 +128,9 @@ public class StackConfigurationResourceProvider extends
       setResourceProperty(resource, PROPERTY_DESCRIPTION_PROPERTY_ID,
           response.getPropertyDescription(), requestedIds);
       
+      setResourceProperty(resource, PROPERTY_PROPERTY_TYPE_PROPERTY_ID, 
+          response.getPropertyType(), requestedIds);
+      
       setResourceProperty(resource, PROPERTY_TYPE_PROPERTY_ID,
           response.getType(), requestedIds);
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/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 116f589..1055626 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
@@ -56,6 +56,9 @@ public class StackLevelConfigurationResourceProvider extends
 
   public static final String PROPERTY_DESCRIPTION_PROPERTY_ID = PropertyHelper
       .getPropertyId("StackLevelConfigurations", "property_description");
+  
+  public static final String PROPERTY_PROPERTY_TYPE_PROPERTY_ID = PropertyHelper
+      .getPropertyId("StackConfigurations", "property_type");
 
   public static final String PROPERTY_TYPE_PROPERTY_ID = PropertyHelper
       .getPropertyId("StackLevelConfigurations", "type");
@@ -119,6 +122,9 @@ public class StackLevelConfigurationResourceProvider extends
       setResourceProperty(resource, PROPERTY_DESCRIPTION_PROPERTY_ID,
           response.getPropertyDescription(), requestedIds);
       
+      setResourceProperty(resource, PROPERTY_PROPERTY_TYPE_PROPERTY_ID, 
+          response.getPropertyType(), requestedIds);
+      
       setResourceProperty(resource, PROPERTY_TYPE_PROPERTY_ID,
           response.getType(), requestedIds);
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/BlueprintEntity.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/BlueprintEntity.java b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/BlueprintEntity.java
index 7926fd4..20ac03f 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/BlueprintEntity.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/orm/entities/BlueprintEntity.java
@@ -172,7 +172,7 @@ public class BlueprintEntity {
    * @throws IllegalArgumentException if blueprint contains invalid information
    */
   public Map<String, Map<String, Collection<String>>> validateConfigurations(
-      AmbariMetaInfo stackInfo, PropertyInfo.PropertyType type) {
+      AmbariMetaInfo stackInfo, boolean validatePasswords) {
 
     String stackName = getStackName();
     String stackVersion = getStackVersion();
@@ -203,7 +203,7 @@ public class BlueprintEntity {
                 stackName, stackVersion, service);
 
             for (PropertyInfo propertyInfo : serviceRequirements.values()) {
-              if (propertyInfo.getType() == type) {
+              if (! (validatePasswords ^ propertyInfo.getPropertyTypes().contains(PropertyInfo.PropertyType.PASSWORD))) {
                 String configCategory = propertyInfo.getFilename();
                 if (configCategory.endsWith(".xml")) {
                   configCategory = configCategory.substring(0, configCategory.indexOf(".xml"));

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
index 43838d7..6d70695 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java
@@ -46,6 +46,7 @@ import org.apache.ambari.server.controller.AmbariManagementController;
 import org.apache.ambari.server.controller.ConfigurationRequest;
 import org.apache.ambari.server.orm.dao.ClusterDAO;
 import org.apache.ambari.server.orm.entities.ClusterConfigEntity;
+import org.apache.ambari.server.state.PropertyInfo.PropertyType;
 import org.apache.ambari.server.upgrade.UpgradeCatalog170;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -437,6 +438,33 @@ public class ConfigHelper {
     return result;
   }
   
+  public Set<String> getPropertyValuesWithPropertyType(StackId stackId, PropertyType propertyType, Cluster cluster) throws AmbariException {
+    StackInfo stack = ambariMetaInfo.getStackInfo(stackId.getStackName(),
+        stackId.getStackVersion());
+    
+    Set<String> result = new HashSet<String>();
+
+    for(Service service : cluster.getServices().values()) {
+      Set<PropertyInfo> stackProperties = ambariMetaInfo.getProperties(stack.getName(), stack.getVersion(), service.getName());
+      
+      for (PropertyInfo stackProperty : stackProperties) {
+        if(stackProperty.getPropertyTypes().contains(propertyType)) {
+          result.add(stackProperty.getValue());
+        }
+      }
+    }
+    
+    Set<PropertyInfo> stackProperties = ambariMetaInfo.getStackProperties(stack.getName(), stack.getVersion());
+    
+    for (PropertyInfo stackProperty : stackProperties) {
+      if(stackProperty.getPropertyTypes().contains(propertyType)) {
+        result.add(stackProperty.getValue());
+      }
+    }
+    
+    return result;
+  }
+  
   public String getPropertyValueFromStackDefenitions(Cluster cluster, String configType, String propertyName) throws AmbariException {
     StackId stackId = cluster.getCurrentStackVersion();
     StackInfo stack = ambariMetaInfo.getStackInfo(stackId.getStackName(),

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java b/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java
index 6a17e9d..e26b48f 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java
@@ -24,10 +24,15 @@ import org.w3c.dom.Element;
 
 import javax.xml.bind.annotation.XmlAnyElement;
 import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlList;
+
 import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 
 public class PropertyInfo {
   private String name;
@@ -36,7 +41,9 @@ public class PropertyInfo {
   private String filename;
   private boolean deleted;
   private boolean requireInput;
-  private PropertyType type = PropertyType.DEFAULT;
+  
+  private Set<PropertyType> propertyTypes = new HashSet<PropertyType>();
+
   @XmlAnyElement
   private List<Element> propertyAttributes = new ArrayList<Element>();
 
@@ -72,9 +79,19 @@ public class PropertyInfo {
     this.filename = filename;
   }
   
+  @XmlElement(name = "property-type")
+  @XmlList
+  public Set<PropertyType> getPropertyTypes() {
+    return propertyTypes;
+  }
+
+  public void setPropertyTypes(Set<PropertyType> propertyTypes) {
+    this.propertyTypes = propertyTypes;
+  }
+  
   public StackConfigurationResponse convertToResponse() {
     return new StackConfigurationResponse(getName(), getValue(),
-      getDescription() , getFilename(), isRequireInput(), getType().name(), getAttributesMap());
+      getDescription() , getFilename(), isRequireInput(), getPropertyTypes(), getAttributesMap());
   }
 
   public boolean isDeleted() {
@@ -102,14 +119,6 @@ public class PropertyInfo {
     this.requireInput = requireInput;
   }
 
-  public PropertyType getType() {
-    return type;
-  }
-
-  public void setType(PropertyType type) {
-    this.type = type;
-  }
-
   @Override
   public int hashCode() {
     final int prime = 31;
@@ -155,7 +164,8 @@ public class PropertyInfo {
   }
 
   public enum PropertyType {
-    DEFAULT,
-    PASSWORD
+    PASSWORD,
+    USER,
+    GROUP
   }
 }

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/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 741ffe6..9471f3d 100644
--- a/ambari-server/src/main/resources/properties.json
+++ b/ambari-server/src/main/resources/properties.json
@@ -247,6 +247,7 @@
         "StackConfigurations/property_description",
         "StackConfigurations/type",
         "StackConfigurations/final",
+        "StackConfigurations/property_type",
         "_"
     ],
     "StackServiceComponent":[
@@ -454,6 +455,7 @@
         "StackLevelConfigurations/property_description",
         "StackLevelConfigurations/type",
         "StackLevelConfigurations/final",
+        "StackConfigurations/property_type",
         "_"
     ]
 }

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/configuration/cluster-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/configuration/cluster-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/configuration/cluster-env.xml
index a2df35a..6b97346 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/configuration/cluster-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/configuration/cluster-env.xml
@@ -39,11 +39,13 @@
     <property>
         <name>smokeuser</name>
         <value>ambari-qa</value>
+        <property-type>USER</property-type>
         <description>User executing service checks</description>
     </property>
     <property>
         <name>user_group</name>
         <value>hadoop</value>
+        <property-type>GROUP</property-type>
         <description>Hadoop user group.</description>
     </property>
 </configuration>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/params.py
index 2bcbd50..dc60927 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/params.py
@@ -20,6 +20,8 @@ limitations under the License.
 from resource_management import *
 from resource_management.core.system import System
 import os
+import json
+import collections
 
 config = Script.get_config()
 tmp_dir = Script.get_tmp_dir()
@@ -70,23 +72,13 @@ hadoop_pid_dir_prefix = config['configurations']['hadoop-env']['hadoop_pid_dir_p
 #users and groups
 hbase_user = config['configurations']['hbase-env']['hbase_user']
 nagios_user = config['configurations']['nagios-env']['nagios_user']
-oozie_user = config['configurations']['oozie-env']['oozie_user']
-webhcat_user = config['configurations']['hive-env']['hcat_user']
-hcat_user = config['configurations']['hive-env']['hcat_user']
-hive_user = config['configurations']['hive-env']['hive_user']
 smoke_user =  config['configurations']['hadoop-env']['smokeuser']
-mapred_user = config['configurations']['mapred-env']['mapred_user']
-hdfs_user = config['configurations']['hadoop-env']['hdfs_user']
-zk_user = config['configurations']['zookeeper-env']['zk_user']
 gmetad_user = config['configurations']['ganglia-env']["gmetad_user"]
 gmond_user = config['configurations']['ganglia-env']["gmond_user"]
-sqoop_user = config['configurations']['sqoop-env']['sqoop_user']
 
 user_group = config['configurations']['hadoop-env']['user_group']
 proxyuser_group =  config['configurations']['hadoop-env']['proxyuser_group']
 nagios_group = config['configurations']['nagios-env']['nagios_group']
-smoke_user_group =  "users"
-mapred_tt_group = default("/configurations/mapred-site/mapreduce.tasktracker.group", user_group)
 
 #hosts
 hostname = config["hostname"]
@@ -129,7 +121,22 @@ if has_ganglia_server:
 hbase_tmp_dir = config['configurations']['hbase-site']['hbase.tmp.dir']
 ignore_groupsusers_create = default("/configurations/hadoop-env/ignore_groupsusers_create", False)
 
-
+smoke_user_dirs = format("/tmp/hadoop-{smoke_user},/tmp/hsperfdata_{smoke_user},/home/{smoke_user},/tmp/{smoke_user},/tmp/sqoop-{smoke_user}")
+if has_hbase_masters:
+  hbase_user_dirs = format("/home/{hbase_user},/tmp/{hbase_user},/usr/bin/{hbase_user},/var/log/{hbase_user},{hbase_tmp_dir}")
 #repo params
 repo_info = config['hostLevelParams']['repo_info']
 service_repo_info = default("/hostLevelParams/service_repo_info",None)
+
+user_to_groups_dict = collections.defaultdict(lambda:[user_group])
+user_to_groups_dict[smoke_user] = [proxyuser_group]
+if has_ganglia_server:
+  user_to_groups_dict[gmond_user] = [gmond_user]
+  user_to_groups_dict[gmetad_user] = [gmetad_user]
+
+user_to_gid_dict = collections.defaultdict(lambda:user_group)
+if has_nagios:
+  user_to_gid_dict[nagios_user] = nagios_group
+
+user_list = json.loads(config['hostLevelParams']['user_list'])
+group_list = json.loads(config['hostLevelParams']['group_list'])

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/shared_initialization.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/shared_initialization.py b/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/shared_initialization.py
index f556335..e4a1135 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/shared_initialization.py
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/before-INSTALL/scripts/shared_initialization.py
@@ -26,110 +26,23 @@ def setup_users():
   Creates users before cluster installation
   """
   import params
-
-  Group(params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-  )
-  Group(params.smoke_user_group,
-         ignore_failures = params.ignore_groupsusers_create
-  )
-  Group(params.proxyuser_group,
-         ignore_failures = params.ignore_groupsusers_create
-  )
-  User(params.smoke_user,
-       gid=params.user_group,
-       groups=[params.proxyuser_group],
-       ignore_failures = params.ignore_groupsusers_create
-  )
-  
-  smoke_user_dirs = format(
-    "/tmp/hadoop-{smoke_user},/tmp/hsperfdata_{smoke_user},/home/{smoke_user},/tmp/{smoke_user},/tmp/sqoop-{smoke_user}")
-  set_uid(params.smoke_user, smoke_user_dirs)
-
-  if params.has_hbase_masters:
-    User(params.hbase_user,
-         gid = params.user_group,
-         groups=[params.user_group],
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    hbase_user_dirs = format(
-      "/home/{hbase_user},/tmp/{hbase_user},/usr/bin/{hbase_user},/var/log/{hbase_user},{hbase_tmp_dir}")
-    set_uid(params.hbase_user, hbase_user_dirs)
-
-  if params.has_nagios:
-    Group(params.nagios_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    User(params.nagios_user,
-         gid=params.nagios_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_oozie_server:
-    User(params.oozie_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_hcat_server_host:
-    User(params.webhcat_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    User(params.hcat_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_hive_server_host:
-    User(params.hive_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_ganglia_server:
-    Group(params.gmetad_user,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    Group(params.gmond_user,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    User(params.gmond_user,
-         gid=params.user_group,
-         groups=[params.gmond_user],
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    User(params.gmetad_user,
-         gid=params.user_group,
-         groups=[params.gmetad_user],
-         ignore_failures = params.ignore_groupsusers_create
-    )
   
-  if params.has_namenode:
-    User(params.hdfs_user,
-          gid=params.user_group,
-          groups=[params.user_group],
-          ignore_failures = params.ignore_groupsusers_create
-    )
-  if params.has_jt:
-    User(params.mapred_user,
-         gid=params.user_group,
-         groups=[params.user_group],
-         ignore_failures = params.ignore_groupsusers_create
+  for group in params.group_list:
+    Group(group,
+        ignore_failures = params.ignore_groupsusers_create
     )
     
-  if params.has_zk_host:
-    User(params.zk_user,
-         gid=params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
+  for user in params.user_list: 
+    User(user,
+        gid = params.user_to_gid_dict[user],
+        groups = params.user_to_groups_dict[user],
+        ignore_failures = params.ignore_groupsusers_create        
     )
+  
+  set_uid(params.smoke_user, params.smoke_user_dirs)
 
-  if params.has_sqoop_client:
-    User(params.sqoop_user,
-         gid=params.user_group,
-         groups=[params.user_group],
-         ignore_failures=params.ignore_groupsusers_create
-    )
+  if params.has_hbase_masters:
+    set_uid(params.hbase_user, params.hbase_user_dirs)
 
 def set_uid(user, user_dirs):
   """

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/GANGLIA/configuration/ganglia-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/GANGLIA/configuration/ganglia-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/GANGLIA/configuration/ganglia-env.xml
index 68d94f2..6fbed16 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/GANGLIA/configuration/ganglia-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/GANGLIA/configuration/ganglia-env.xml
@@ -34,11 +34,13 @@
   <property>
     <name>gmetad_user</name>
     <value>nobody</value>
+    <property-type>USER GROUP</property-type>
     <description>User </description>
   </property>
     <property>
     <name>gmond_user</name>
     <value>nobody</value>
+    <property-type>USER GROUP</property-type>
     <description>User </description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HBASE/configuration/hbase-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HBASE/configuration/hbase-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HBASE/configuration/hbase-env.xml
index d02ec1b..0f66fc4 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HBASE/configuration/hbase-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HBASE/configuration/hbase-env.xml
@@ -54,6 +54,7 @@
   <property>
     <name>hbase_user</name>
     <value>hbase</value>
+    <property-type>USER</property-type>
     <description>HBase User Name.</description>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml
index ba704ba..a8e6243 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml
@@ -59,6 +59,7 @@
   <property>
     <name>proxyuser_group</name>
     <value>users</value>
+    <property-type>GROUP</property-type>
     <description>Proxy user group.</description>
   </property>
 
@@ -76,6 +77,7 @@
   <property>
     <name>hdfs_user</name>
     <value>hdfs</value>
+    <property-type>USER</property-type>
     <description>User to run HDFS as</description>
   </property>
   <property>
@@ -86,11 +88,13 @@
   <property>
     <name>smokeuser</name>
     <value>ambari-qa</value>
+    <property-type>USER</property-type>
     <description>User executing service checks</description>
   </property>
   <property>
     <name>user_group</name>
     <value>hadoop</value>
+    <property-type>GROUP</property-type>
     <description>Proxy user group.</description>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py
index 58f01f8..7d23680 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py
@@ -94,7 +94,6 @@ hdfs_user = status_params.hdfs_user
 user_group = config['configurations']['hadoop-env']['user_group']
 proxyuser_group =  config['configurations']['hadoop-env']['proxyuser_group']
 nagios_group = config['configurations']['nagios-env']['nagios_group']
-smoke_user_group = "users"
 
 #hadoop params
 hadoop_conf_dir = "/etc/hadoop/conf"

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-env.xml
index 252aa81..550bae9 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-env.xml
@@ -71,6 +71,7 @@
   <property>
     <name>hive_user</name>
     <value>hive</value>
+    <property-type>USER</property-type>
     <description>Hive User.</description>
   </property>
 
@@ -89,11 +90,13 @@
   <property>
     <name>hcat_user</name>
     <value>hcat</value>
+    <property-type>USER</property-type>
     <description>HCat User.</description>
   </property>
   <property>
     <name>webhcat_user</name>
     <value>hcat</value>
+    <property-type>USER</property-type>
     <description>WebHCat User.</description>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-site.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-site.xml
index fabcdf3..8206a6a 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HIVE/configuration/hive-site.xml
@@ -52,7 +52,7 @@ limitations under the License.
   <property require-input="true">
     <name>javax.jdo.option.ConnectionPassword</name>
     <value> </value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>password to use against metastore database</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/MAPREDUCE/configuration/mapred-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/MAPREDUCE/configuration/mapred-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/MAPREDUCE/configuration/mapred-env.xml
index 2553025..95d853f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/MAPREDUCE/configuration/mapred-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/MAPREDUCE/configuration/mapred-env.xml
@@ -54,6 +54,7 @@
   <property>
     <name>mapred_user</name>
     <value>mapred</value>
+    <property-type>USER</property-type>
     <description>MapReduce User.</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/NAGIOS/configuration/nagios-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/NAGIOS/configuration/nagios-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/NAGIOS/configuration/nagios-env.xml
index 54c742c..fad8374 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/NAGIOS/configuration/nagios-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/NAGIOS/configuration/nagios-env.xml
@@ -24,11 +24,13 @@
   <property>
     <name>nagios_user</name>
     <value>nagios</value>
+    <property-type>USER</property-type>
     <description>Nagios Username.</description>
   </property>
   <property>
     <name>nagios_group</name>
     <value>nagios</value>
+    <property-type>GROUP</property-type>
     <description>Nagios Group.</description>
   </property>
   <property>
@@ -39,7 +41,7 @@
   <property require-input = "true">
     <name>nagios_web_password</name>
     <value></value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>Nagios Admin Password.</description>
   </property>
   <property require-input = "true">

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-env.xml
index 4585f29..37ae8dd 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-env.xml
@@ -24,6 +24,7 @@
   <property>
     <name>oozie_user</name>
     <value>oozie</value>
+    <property-type>USER</property-type>
     <description>Oozie User.</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-site.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-site.xml
index ae22d5d..cb9cb0e 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/OOZIE/configuration/oozie-site.xml
@@ -217,7 +217,7 @@
   <property require-input = "true">
     <name>oozie.service.JPAService.jdbc.password</name>
     <value> </value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>
       DB user password.
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/SQOOP/configuration/sqoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/SQOOP/configuration/sqoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/SQOOP/configuration/sqoop-env.xml
index f1753c6..6edbfdc 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/SQOOP/configuration/sqoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/SQOOP/configuration/sqoop-env.xml
@@ -48,6 +48,7 @@ export SQOOP_USER_CLASSPATH="`ls ${HIVE_HOME}/lib/libthrift-*.jar 2> /dev/null`:
   <property>
     <name>sqoop_user</name>
     <description>User to run Sqoop as</description>
+    <property-type>USER</property-type>
     <value>sqoop</value>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zookeeper-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zookeeper-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zookeeper-env.xml
index 33e9cef..b0d55e6 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zookeeper-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/ZOOKEEPER/configuration/zookeeper-env.xml
@@ -24,6 +24,7 @@
   <property>
     <name>zk_user</name>
     <value>zookeeper</value>
+    <property-type>USER</property-type>
     <description>ZooKeeper User.</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/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 a2df35a..6b97346 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
@@ -39,11 +39,13 @@
     <property>
         <name>smokeuser</name>
         <value>ambari-qa</value>
+        <property-type>USER</property-type>
         <description>User executing service checks</description>
     </property>
     <property>
         <name>user_group</name>
         <value>hadoop</value>
+        <property-type>GROUP</property-type>
         <description>Hadoop user group.</description>
     </property>
 </configuration>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/params.py
index f76cc33..8bb1565 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/params.py
@@ -20,34 +20,23 @@ limitations under the License.
 from resource_management import *
 from resource_management.core.system import System
 import os
+import json
+import collections
 
 config = Script.get_config()
 tmp_dir = Script.get_tmp_dir()
 
 #users and groups
-yarn_user = config['configurations']['yarn-env']['yarn_user']
 hbase_user = config['configurations']['hbase-env']['hbase_user']
 nagios_user = config['configurations']['nagios-env']['nagios_user']
-oozie_user = config['configurations']['oozie-env']['oozie_user']
-webhcat_user = config['configurations']['hive-env']['hcat_user']
-hcat_user = config['configurations']['hive-env']['hcat_user']
-hive_user = config['configurations']['hive-env']['hive_user']
 smoke_user =  config['configurations']['hadoop-env']['smokeuser']
-mapred_user = config['configurations']['mapred-env']['mapred_user']
-hdfs_user = config['configurations']['hadoop-env']['hdfs_user']
-zk_user = config['configurations']['zookeeper-env']['zk_user']
 gmetad_user = config['configurations']['ganglia-env']["gmetad_user"]
 gmond_user = config['configurations']['ganglia-env']["gmond_user"]
-storm_user = config['configurations']['storm-env']['storm_user']
-tez_user = config['configurations']['tez-env']['tez_user']
-falcon_user = config['configurations']['falcon-env']['falcon_user']
-sqoop_user = config['configurations']['sqoop-env']['sqoop_user']
+tez_user = config['configurations']['tez-env']["tez_user"]
 
 user_group = config['configurations']['hadoop-env']['user_group']
 proxyuser_group =  config['configurations']['hadoop-env']['proxyuser_group']
 nagios_group = config['configurations']['nagios-env']['nagios_group']
-smoke_user_group =  "users"
-mapred_tt_group = default("/configurations/mapred-site/mapreduce.tasktracker.group", user_group)
 
 #hosts
 hostname = config["hostname"]
@@ -107,6 +96,24 @@ jce_location = config['hostLevelParams']['jdk_location']
 jdk_location = config['hostLevelParams']['jdk_location']
 ignore_groupsusers_create = default("/configurations/hadoop-env/ignore_groupsusers_create", False)
 
+smoke_user_dirs = format("/tmp/hadoop-{smoke_user},/tmp/hsperfdata_{smoke_user},/home/{smoke_user},/tmp/{smoke_user},/tmp/sqoop-{smoke_user}")
+if has_hbase_masters:
+  hbase_user_dirs = format("/home/{hbase_user},/tmp/{hbase_user},/usr/bin/{hbase_user},/var/log/{hbase_user},{hbase_tmp_dir}")
 #repo params
 repo_info = config['hostLevelParams']['repo_info']
 service_repo_info = default("/hostLevelParams/service_repo_info",None)
+
+user_to_groups_dict = collections.defaultdict(lambda:[user_group])
+user_to_groups_dict[smoke_user] = [proxyuser_group]
+if has_ganglia_server:
+  user_to_groups_dict[gmond_user] = [gmond_user]
+  user_to_groups_dict[gmetad_user] = [gmetad_user]
+if has_tez:
+  user_to_groups_dict[tez_user] = [proxyuser_group]
+
+user_to_gid_dict = collections.defaultdict(lambda:user_group)
+if has_nagios:
+  user_to_gid_dict[nagios_user] = nagios_group
+
+user_list = json.loads(config['hostLevelParams']['user_list'])
+group_list = json.loads(config['hostLevelParams']['group_list'])

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/shared_initialization.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/shared_initialization.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/shared_initialization.py
index 0542a3e..720777f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/shared_initialization.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/shared_initialization.py
@@ -26,137 +26,23 @@ def setup_users():
   Creates users before cluster installation
   """
   import params
-
-  Group(params.user_group, 
-        ignore_failures = params.ignore_groupsusers_create
-  )
   
-  Group(params.smoke_user_group,
-        ignore_failures = params.ignore_groupsusers_create
-  )
-  Group(params.proxyuser_group,
+  for group in params.group_list:
+    Group(group,
         ignore_failures = params.ignore_groupsusers_create
-  )
-  User(params.smoke_user,
-       gid=params.user_group,
-       groups=[params.proxyuser_group],
-       ignore_failures = params.ignore_groupsusers_create
-  )
-  smoke_user_dirs = format(
-    "/tmp/hadoop-{smoke_user},/tmp/hsperfdata_{smoke_user},/home/{smoke_user},/tmp/{smoke_user},/tmp/sqoop-{smoke_user}")
-  set_uid(params.smoke_user, smoke_user_dirs)
-
-  if params.has_hbase_masters:
-    User(params.hbase_user,
-         gid = params.user_group,
-         groups=[params.user_group],
-         ignore_failures = params.ignore_groupsusers_create)
-    hbase_user_dirs = format(
-      "/home/{hbase_user},/tmp/{hbase_user},/usr/bin/{hbase_user},/var/log/{hbase_user},{hbase_tmp_dir}")
-    set_uid(params.hbase_user, hbase_user_dirs)
-
-  if params.has_nagios:
-    Group(params.nagios_group,
-      ignore_failures = params.ignore_groupsusers_create
-    )
-    User(params.nagios_user,
-         gid=params.nagios_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_oozie_server:
-    User(params.oozie_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_hcat_server_host:
-    User(params.webhcat_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    User(params.hcat_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_hive_server_host:
-    User(params.hive_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_resourcemanager:
-    User(params.yarn_user,
-         gid = params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_ganglia_server:
-    Group(params.gmetad_user,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    Group(params.gmond_user,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    User(params.gmond_user,
-         gid=params.user_group,
-         groups=[params.gmond_user],
-         ignore_failures = params.ignore_groupsusers_create
-    )
-    User(params.gmetad_user,
-         gid=params.user_group,
-         groups=[params.gmetad_user],
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_namenode:
-    User(params.hdfs_user,
-          gid=params.user_group,
-          groups=[params.user_group],
-          ignore_failures = params.ignore_groupsusers_create
-    )
-  
-  if params.has_hs:
-    User(params.mapred_user,
-         gid=params.user_group,
-         groups=[params.user_group],
-         ignore_failures = params.ignore_groupsusers_create
-    )
-  
-  if params.has_zk_host:
-    User(params.zk_user,
-         gid=params.user_group,
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_storm_server:
-    User(params.storm_user,
-         gid=params.user_group,
-         groups=[params.user_group],
-         ignore_failures = params.ignore_groupsusers_create
-    )
-
-  if params.has_falcon_server:
-    User(params.falcon_user,
-         gid=params.user_group,
-         groups=[params.user_group],
-         ignore_failures = params.ignore_groupsusers_create
     )
     
-  if params.has_tez:
-    User(params.tez_user,
-      gid=params.user_group,
-      groups=[params.proxyuser_group],
-      ignore_failures = params.ignore_groupsusers_create
+  for user in params.user_list:
+    User(user,
+        gid = params.user_to_gid_dict[user],
+        groups = params.user_to_groups_dict[user],
+        ignore_failures = params.ignore_groupsusers_create       
     )
+           
+  set_uid(params.smoke_user, params.smoke_user_dirs)
 
-  if params.has_sqoop_client:
-    User(params.sqoop_user,
-         gid=params.user_group,
-         groups=[params.user_group],
-         ignore_failures=params.ignore_groupsusers_create
-    )
+  if params.has_hbase_masters:
+    set_uid(params.hbase_user, params.hbase_user_dirs)
 
 def set_uid(user, user_dirs):
   """

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/configuration/flume-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/configuration/flume-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/configuration/flume-env.xml
index 43cea5f..7b11bde 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/configuration/flume-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/FLUME/configuration/flume-env.xml
@@ -34,6 +34,7 @@
   <property>
     <name>flume_user</name>
     <value>flume</value>
+    <property-type>USER</property-type>
     <description>Flume User</description>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/configuration/ganglia-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/configuration/ganglia-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/configuration/ganglia-env.xml
index d340a94..e42baa5 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/configuration/ganglia-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/GANGLIA/configuration/ganglia-env.xml
@@ -34,11 +34,13 @@
   <property>
     <name>gmetad_user</name>
     <value>nobody</value>
+    <property-type>USER GROUP</property-type>
     <description>User </description>
   </property>
     <property>
     <name>gmond_user</name>
     <value>nobody</value>
+    <property-type>USER GROUP</property-type>
     <description>User </description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HBASE/configuration/hbase-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HBASE/configuration/hbase-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HBASE/configuration/hbase-env.xml
index 6d27511..2e92f56 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HBASE/configuration/hbase-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HBASE/configuration/hbase-env.xml
@@ -54,6 +54,7 @@
    <property>
     <name>hbase_user</name>
     <value>hbase</value>
+    <property-type>USER</property-type>
     <description>HBase User Name.</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml
index 573a67c..817be91 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml
@@ -59,6 +59,7 @@
   <property>
     <name>proxyuser_group</name>
     <value>users</value>
+    <property-type>GROUP</property-type>
     <description>Proxy user group.</description>
   </property>
   <property>
@@ -74,6 +75,7 @@
   <property>
     <name>hdfs_user</name>
     <value>hdfs</value>
+    <property-type>USER</property-type>
     <description>User to run HDFS as</description>
   </property>
   <property>
@@ -84,11 +86,13 @@
   <property>
     <name>smokeuser</name>
     <value>ambari-qa</value>
+    <property-type>USER</property-type>
     <description>User executing service checks</description>
   </property>
   <property>
     <name>user_group</name>
     <value>hadoop</value>
+    <property-type>GROUP</property-type>
     <description>Proxy user group.</description>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py
index 5c2f792..ee6b64f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py
@@ -99,7 +99,6 @@ hdfs_principal_name = config['configurations']['hadoop-env']['hdfs_principal_nam
 user_group = config['configurations']['hadoop-env']['user_group']
 proxyuser_group =  config['configurations']['hadoop-env']['proxyuser_group']
 nagios_group = config['configurations']['nagios-env']['nagios_group']
-smoke_user_group = "users"
 
 #hadoop params
 hadoop_conf_dir = "/etc/hadoop/conf"

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-env.xml
index 8c17086..52cfa10 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-env.xml
@@ -61,6 +61,7 @@
   <property>
     <name>hive_user</name>
     <value>hive</value>
+    <property-type>USER</property-type>
     <description>Hive User.</description>
   </property>
 
@@ -79,11 +80,13 @@
   <property>
     <name>hcat_user</name>
     <value>hcat</value>
+    <property-type>USER</property-type>
     <description>HCat User.</description>
   </property>
   <property>
     <name>webhcat_user</name>
     <value>hcat</value>
+    <property-type>USER</property-type>
     <description>WebHCat User.</description>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-site.xml
index 35758fe..9057fbe 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HIVE/configuration/hive-site.xml
@@ -52,7 +52,7 @@ limitations under the License.
   <property require-input="true">
     <name>javax.jdo.option.ConnectionPassword</name>
     <value> </value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>password to use against metastore database</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/NAGIOS/configuration/nagios-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/NAGIOS/configuration/nagios-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/NAGIOS/configuration/nagios-env.xml
index 54c742c..fad8374 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/NAGIOS/configuration/nagios-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/NAGIOS/configuration/nagios-env.xml
@@ -24,11 +24,13 @@
   <property>
     <name>nagios_user</name>
     <value>nagios</value>
+    <property-type>USER</property-type>
     <description>Nagios Username.</description>
   </property>
   <property>
     <name>nagios_group</name>
     <value>nagios</value>
+    <property-type>GROUP</property-type>
     <description>Nagios Group.</description>
   </property>
   <property>
@@ -39,7 +41,7 @@
   <property require-input = "true">
     <name>nagios_web_password</name>
     <value></value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>Nagios Admin Password.</description>
   </property>
   <property require-input = "true">

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-env.xml
index b1f9090..fc47a70 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-env.xml
@@ -24,6 +24,7 @@
   <property>
     <name>oozie_user</name>
     <value>oozie</value>
+    <property-type>USER</property-type>
     <description>Oozie User.</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-site.xml
index 632d606..e72a8be 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/OOZIE/configuration/oozie-site.xml
@@ -224,7 +224,7 @@
   <property require-input = "true">
     <name>oozie.service.JPAService.jdbc.password</name>
     <value> </value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>
       DB user password.
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/SQOOP/configuration/sqoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/SQOOP/configuration/sqoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/SQOOP/configuration/sqoop-env.xml
index d1d56ff..b598215 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/SQOOP/configuration/sqoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/SQOOP/configuration/sqoop-env.xml
@@ -48,6 +48,7 @@ export SQOOP_USER_CLASSPATH="`ls ${HIVE_HOME}/lib/libthrift-*.jar 2> /dev/null`:
   <property>
     <name>sqoop_user</name>
     <description>User to run Sqoop as</description>
+    <property-type>USER</property-type>
     <value>sqoop</value>
   </property>
 </configuration>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration-mapred/mapred-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration-mapred/mapred-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration-mapred/mapred-env.xml
index f0b0ea6..14ae20b 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration-mapred/mapred-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration-mapred/mapred-env.xml
@@ -34,6 +34,7 @@
   <property>
     <name>mapred_user</name>
     <value>mapred</value>
+    <property-type>USER</property-type>
     <description>Mapreduce User</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-env.xml
index 184aff1..1c23ade 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/configuration/yarn-env.xml
@@ -34,6 +34,7 @@
   <property>
     <name>yarn_user</name>
     <value>yarn</value>
+    <property-type>USER</property-type>
     <description>YARN User</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zookeeper-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zookeeper-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zookeeper-env.xml
index 33e9cef..b0d55e6 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zookeeper-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/ZOOKEEPER/configuration/zookeeper-env.xml
@@ -24,6 +24,7 @@
   <property>
     <name>zk_user</name>
     <value>zookeeper</value>
+    <property-type>USER</property-type>
     <description>ZooKeeper User.</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HIVE/configuration/hive-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HIVE/configuration/hive-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HIVE/configuration/hive-site.xml
index 36c6985..8b4f065 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HIVE/configuration/hive-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/HIVE/configuration/hive-site.xml
@@ -52,7 +52,7 @@ limitations under the License.
   <property require-input="true">
     <name>javax.jdo.option.ConnectionPassword</name>
     <value></value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>password to use against metastore database</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.1/services/FALCON/configuration/falcon-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1/services/FALCON/configuration/falcon-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.1/services/FALCON/configuration/falcon-env.xml
index 8a4eabf..2c744e6 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1/services/FALCON/configuration/falcon-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1/services/FALCON/configuration/falcon-env.xml
@@ -22,6 +22,7 @@
   <property>
     <name>falcon_user</name>
     <value>falcon</value>
+    <property-type>USER</property-type>
     <description>Falcon user.</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/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 ae874e2..9beb715 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
@@ -52,7 +52,7 @@ limitations under the License.
   <property require-input="true">
     <name>javax.jdo.option.ConnectionPassword</name>
     <value></value>
-    <type>PASSWORD</type>
+    <property-type>PASSWORD</property-type>
     <description>password to use against metastore database</description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/configuration/storm-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/configuration/storm-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/configuration/storm-env.xml
index 2e118d1..d3804ee 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/configuration/storm-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/configuration/storm-env.xml
@@ -24,6 +24,7 @@
   <property>
     <name>storm_user</name>
     <value>storm</value>
+    <property-type>USER</property-type>
     <description></description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/main/resources/stacks/HDP/2.1/services/TEZ/configuration/tez-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.1/services/TEZ/configuration/tez-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.1/services/TEZ/configuration/tez-env.xml
index 992a4df..a1eac56 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.1/services/TEZ/configuration/tez-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.1/services/TEZ/configuration/tez-env.xml
@@ -24,6 +24,7 @@
   <property>
     <name>tez_user</name>
     <value>tez</value>
+    <property-type>USER</property-type>
     <description></description>
   </property>
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/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 4f9b39a..f2a5c37 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
@@ -34,6 +34,7 @@
   <property>
     <name>yarn_user</name>
     <value>yarn</value>
+    <property-type>USER</property-type>
     <description>YARN User</description>
   </property>
   <property>

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/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 c08534c..ce239b9 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
@@ -1403,10 +1403,10 @@ public class AmbariMetaInfoTest {
     PropertyInfo passwordProperty = null;
     for (PropertyInfo propertyInfo : propertyInfoList) {
       if (propertyInfo.isRequireInput()
-          && propertyInfo.getType().equals(PropertyInfo.PropertyType.PASSWORD)) {
+          && propertyInfo.getPropertyTypes().contains(PropertyInfo.PropertyType.PASSWORD)) {
         passwordProperty = propertyInfo;
       } else {
-        Assert.assertEquals(PropertyInfo.PropertyType.DEFAULT, propertyInfo.getType());
+        Assert.assertTrue(propertyInfo.getPropertyTypes().isEmpty());
       }
     }
     Assert.assertNotNull(passwordProperty);

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
index c7af864..9a7946a 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/api/util/StackExtensionHelperTest.java
@@ -585,7 +585,7 @@ public class StackExtensionHelperTest {
     assertEquals(null, propertyInfo.getFilename());
     assertEquals(false, propertyInfo.isDeleted());
     assertEquals(false, propertyInfo.isRequireInput());
-    assertEquals(PropertyInfo.PropertyType.DEFAULT, propertyInfo.getType());
+    assertTrue(propertyInfo.getPropertyTypes().isEmpty());
 
     propertyInfo = properties.get(1);
     assertEquals("yarn.scheduler.capacity.maximum-am-resource-percent", propertyInfo.getName());
@@ -596,7 +596,7 @@ public class StackExtensionHelperTest {
     assertEquals(null, propertyInfo.getFilename());
     assertEquals(true, propertyInfo.isDeleted());
     assertEquals(false, propertyInfo.isRequireInput());
-    assertEquals(PropertyInfo.PropertyType.DEFAULT, propertyInfo.getType());
+    assertTrue(propertyInfo.getPropertyTypes().isEmpty());
 
     propertyInfo = properties.get(2);
     assertEquals("yarn.scheduler.capacity.root.queues", propertyInfo.getName());
@@ -606,7 +606,7 @@ public class StackExtensionHelperTest {
     assertEquals(null, propertyInfo.getFilename());
     assertEquals(false, propertyInfo.isDeleted());
     assertEquals(true, propertyInfo.isRequireInput());
-    assertEquals(PropertyInfo.PropertyType.DEFAULT, propertyInfo.getType());
+    assertTrue(propertyInfo.getPropertyTypes().isEmpty());
   }
 
   @Test

http://git-wip-us.apache.org/repos/asf/ambari/blob/a9409865/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
index 06d8bb7..b7430c8 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ClusterResourceProviderTest.java
@@ -328,7 +328,7 @@ public class ClusterResourceProviderTest {
     expect(blueprint.getStackName()).andReturn(stackName);
     expect(blueprint.getStackVersion()).andReturn(stackVersion);
     expect(blueprint.getConfigurations()).andReturn(configurations);
-    expect(blueprint.validateConfigurations(metaInfo, PropertyInfo.PropertyType.PASSWORD)).andReturn(
+    expect(blueprint.validateConfigurations(metaInfo, true)).andReturn(
         Collections.<String, Map<String, Collection<String>>>emptyMap());
 
     expect(metaInfo.getComponentDependencies("test", "1.23", "service1", "component1")).
@@ -765,7 +765,7 @@ public class ClusterResourceProviderTest {
     expect(blueprint.getStackName()).andReturn(stackName);
     expect(blueprint.getStackVersion()).andReturn(stackVersion);
     expect(blueprint.getConfigurations()).andReturn(Collections.<BlueprintConfigEntity>singletonList(blueprintConfig));
-    expect(blueprint.validateConfigurations(metaInfo, PropertyInfo.PropertyType.PASSWORD)).andReturn(allMissingPasswords);
+    expect(blueprint.validateConfigurations(metaInfo, true)).andReturn(allMissingPasswords);
 
     expect(metaInfo.getComponentDependencies("test", "1.23", "service1", "component1")).
         andReturn(Collections.<DependencyInfo>emptyList());
@@ -1550,7 +1550,7 @@ public class ClusterResourceProviderTest {
     expect(blueprint.getStackName()).andReturn(stackName);
     expect(blueprint.getStackVersion()).andReturn(stackVersion);
     expect(blueprint.getConfigurations()).andReturn(Collections.<BlueprintConfigEntity>singletonList(blueprintConfig));
-    expect(blueprint.validateConfigurations(metaInfo, PropertyInfo.PropertyType.PASSWORD)).andReturn(allMissingPasswords);
+    expect(blueprint.validateConfigurations(metaInfo, true)).andReturn(allMissingPasswords);
 
     expect(metaInfo.getComponentDependencies("test", "1.23", "service1", "component1")).
         andReturn(Collections.<DependencyInfo>emptyList());
@@ -1959,7 +1959,7 @@ public class ClusterResourceProviderTest {
     expect(blueprint.getStackName()).andReturn(stackName);
     expect(blueprint.getStackVersion()).andReturn(stackVersion);
     expect(blueprint.getConfigurations()).andReturn(Collections.<BlueprintConfigEntity>singletonList(blueprintConfig));
-    expect(blueprint.validateConfigurations(metaInfo, PropertyInfo.PropertyType.PASSWORD)).andReturn(
+    expect(blueprint.validateConfigurations(metaInfo, true)).andReturn(
         Collections.<String, Map<String, Collection<String>>>emptyMap());
 
     expect(metaInfo.getComponentDependencies("test", "1.23", "service1", "component1")).
@@ -2227,7 +2227,7 @@ public class ClusterResourceProviderTest {
     expect(blueprint.getStackName()).andReturn(stackName);
     expect(blueprint.getStackVersion()).andReturn(stackVersion);
     expect(blueprint.getConfigurations()).andReturn(configurations).times(2);
-    expect(blueprint.validateConfigurations(metaInfo, PropertyInfo.PropertyType.PASSWORD)).andReturn(
+    expect(blueprint.validateConfigurations(metaInfo, true)).andReturn(
         Collections.<String, Map<String, Collection<String>>>emptyMap());
 
     expect(metaInfo.getComponentDependencies("test", "1.23", "service1", "component1")).


[04/15] git commit: AMBARI-7111 Configs: compare against current should not have cancel/save. (ababiichuk)

Posted by nc...@apache.org.
AMBARI-7111 Configs: compare against current should not have cancel/save.  (ababiichuk)


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

Branch: refs/heads/branch-alerts-dev
Commit: 9571ac8d530ee9faff884ff72bc5578911f4e104
Parents: f853f1c
Author: aBabiichuk <ab...@cybervisiontech.com>
Authored: Tue Sep 2 16:28:08 2014 +0300
Committer: aBabiichuk <ab...@cybervisiontech.com>
Committed: Tue Sep 2 16:28:08 2014 +0300

----------------------------------------------------------------------
 ambari-web/app/templates/common/configs/config_history_flow.hbs | 4 ----
 1 file changed, 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/9571ac8d/ambari-web/app/templates/common/configs/config_history_flow.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/common/configs/config_history_flow.hbs b/ambari-web/app/templates/common/configs/config_history_flow.hbs
index a4e9f79..014950c 100644
--- a/ambari-web/app/templates/common/configs/config_history_flow.hbs
+++ b/ambari-web/app/templates/common/configs/config_history_flow.hbs
@@ -75,10 +75,6 @@
                   &nbsp;<strong>{{view.compareServiceVersion.modifiedDate}}</strong>
               </div>
               <div class="pull-right operations-button">
-                  <div {{bindAttr class="view.compareServiceVersion.isCurrent::hidden"}}>
-                      <button class="btn" {{action doCancel target="controller"}} {{bindAttr disabled="view.isDiscardDisabled"}}>{{t common.discard}}</button>
-                      <button class="btn btn-success" {{action save target="view"}} {{bindAttr disabled="view.isSaveDisabled"}}>{{t common.save}}</button>
-                  </div>
                   <button class="btn btn-success"  {{action revert view.serviceVersionsReferences.compare target="view"}} {{bindAttr disabled="view.versionActionsDisabled" class="view.compareServiceVersion.isCurrent:hidden"}}>{{view.compareServiceVersion.makeCurrentButtonText}}</button>
               </div>
           </div>


[03/15] git commit: AMBARI-7110 Customize Services page: spinner missing. (ababiichuk)

Posted by nc...@apache.org.
AMBARI-7110 Customize Services page: spinner missing. (ababiichuk)


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

Branch: refs/heads/branch-alerts-dev
Commit: f853f1c76e2f4af5936f935735a7660010eccf0b
Parents: 6738d3d
Author: aBabiichuk <ab...@cybervisiontech.com>
Authored: Tue Sep 2 16:09:50 2014 +0300
Committer: aBabiichuk <ab...@cybervisiontech.com>
Committed: Tue Sep 2 16:09:50 2014 +0300

----------------------------------------------------------------------
 .../controllers/main/service/info/configs.js    |  1 +
 .../app/controllers/wizard/step7_controller.js  | 28 ++++++---------
 .../common/configs/services_config.hbs          | 37 +++++++++++---------
 .../main/service/info/config_test.js            |  8 ++---
 4 files changed, 37 insertions(+), 37 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/f853f1c7/ambari-web/app/controllers/main/service/info/configs.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/service/info/configs.js b/ambari-web/app/controllers/main/service/info/configs.js
index 4ffe244..e8cc813 100644
--- a/ambari-web/app/controllers/main/service/info/configs.js
+++ b/ambari-web/app/controllers/main/service/info/configs.js
@@ -25,6 +25,7 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.ServerValidatorM
   name: 'mainServiceInfoConfigsController',
   isHostsConfigsPage: false,
   forceTransition: false,
+  isRecommendedLoaded: true,
   dataIsLoaded: false,
   stepConfigs: [], //contains all field properties that are viewed in this service
   selectedService: null,

http://git-wip-us.apache.org/repos/asf/ambari/blob/f853f1c7/ambari-web/app/controllers/wizard/step7_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/wizard/step7_controller.js b/ambari-web/app/controllers/wizard/step7_controller.js
index 809a9ee..9ab5c5a 100644
--- a/ambari-web/app/controllers/wizard/step7_controller.js
+++ b/ambari-web/app/controllers/wizard/step7_controller.js
@@ -43,6 +43,7 @@ App.WizardStep7Controller = Em.Controller.extend(App.ServerValidatorMixin, {
 
   slaveHostToGroup: null,
 
+  isRecommendedLoaded: false,
   /**
    * used in services_config.js view to mark a config with security icon
    */
@@ -232,6 +233,8 @@ App.WizardStep7Controller = Em.Controller.extend(App.ServerValidatorMixin, {
    * @method clearStep
    */
   clearStep: function () {
+    this.set('isSubmitDisabled', true);
+    this.set('isRecommendedLoaded', false);
     this.get('stepConfigs').clear();
     this.set('filter', '');
     this.get('filterColumns').setEach('selected', false);
@@ -721,25 +724,16 @@ App.WizardStep7Controller = Em.Controller.extend(App.ServerValidatorMixin, {
     }
     //STEP 6: Distribute configs by service and wrap each one in App.ServiceConfigProperty (configs -> serviceConfigs)
     var self = this;
-    if (App.get('supports.serverRecommendValidate')) {
-      this.loadServerSideConfigsRecommendations().always(function() {
-        self.setStepConfigs(configs, storedConfigs);
-        self.checkHostOverrideInstaller();
-        self.activateSpecialConfigs();
-        self.selectProperService();
-        if (self.get('content.skipConfigStep')) {
-          App.router.send('next');
-        }
-      });
-    } else {
-      this.setStepConfigs(configs, storedConfigs);
-      this.checkHostOverrideInstaller();
-      this.activateSpecialConfigs();
-      this.selectProperService();
-      if (this.get('content.skipConfigStep')) {
+    this.loadServerSideConfigsRecommendations().always(function() {
+      self.set('isRecommendedLoaded', true);
+      self.setStepConfigs(configs, storedConfigs);
+      self.checkHostOverrideInstaller();
+      self.activateSpecialConfigs();
+      self.selectProperService();
+      if (self.get('content.skipConfigStep')) {
         App.router.send('next');
       }
-    }
+    });
   },
   /**
    * If <code>App.supports.hostOverridesInstaller</code> is enabled should load config groups

http://git-wip-us.apache.org/repos/asf/ambari/blob/f853f1c7/ambari-web/app/templates/common/configs/services_config.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/common/configs/services_config.hbs b/ambari-web/app/templates/common/configs/services_config.hbs
index 5030566..67cef63 100644
--- a/ambari-web/app/templates/common/configs/services_config.hbs
+++ b/ambari-web/app/templates/common/configs/services_config.hbs
@@ -15,21 +15,26 @@
 * See the License for the specific language governing permissions and
 * limitations under the License.
 }}
-
-<ul class="nav nav-tabs">
-  {{#each service in controller.stepConfigs}}
-    {{#if service.showConfig}}
-      {{#view App.ServiceConfigTab}}
-        <a href="#{{unbound service.serviceName}}" {{bindAttr class=":active service.selected:new"}}
-           data-toggle="tab" {{action selectService service target="view"}}>
-          {{service.displayName}}{{#if service.errorCount}}<span
-                class="badge badge-important">{{service.errorCount}}</span>{{/if}}</a>
-      {{/view}}
-    {{/if}}
-  {{/each}}
-</ul>
+{{#if controller.isRecommendedLoaded}}
+    <ul class="nav nav-tabs">
+      {{#each service in controller.stepConfigs}}
+        {{#if service.showConfig}}
+          {{#view App.ServiceConfigTab}}
+              <a href="#{{unbound service.serviceName}}" {{bindAttr class=":active service.selected:new"}}
+                 data-toggle="tab" {{action selectService service target="view"}}>
+                {{service.displayName}}{{#if service.errorCount}}<span
+                      class="badge badge-important">{{service.errorCount}}</span>{{/if}}</a>
+          {{/view}}
+        {{/if}}
+      {{/each}}
+    </ul>
+{{else}}
+    <div class="spinner"></div>
+{{/if}}
 {{view App.ServiceConfigContainerView}}
-<p class="loading align-center"></p>
-{{#if isSubmitDisabled}}
-  <div class="alert">{{t installer.step7.attentionNeeded}}</div>
+{{#if controller.isRecommendedLoaded}}
+    <p class="loading align-center"></p>
+    {{#if isSubmitDisabled}}
+        <div class="alert">{{t installer.step7.attentionNeeded}}</div>
+    {{/if}}
 {{/if}}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/f853f1c7/ambari-web/test/controllers/main/service/info/config_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/controllers/main/service/info/config_test.js b/ambari-web/test/controllers/main/service/info/config_test.js
index 600ae42..56f0aeb 100644
--- a/ambari-web/test/controllers/main/service/info/config_test.js
+++ b/ambari-web/test/controllers/main/service/info/config_test.js
@@ -382,14 +382,14 @@ describe("App.MainServiceInfoConfigsController", function () {
 
   describe("#doCancel", function () {
     beforeEach(function () {
-      sinon.stub(mainServiceInfoConfigsController, "loadStep", Em.K);
+      sinon.stub(Em.run, 'once', Em.K);
     });
     afterEach(function () {
-      mainServiceInfoConfigsController.loadStep.restore();
+      Em.run.once.restore();
     });
-    it("trigger loadStep", function () {
+    it("trigger onConfigGroupChange", function () {
       mainServiceInfoConfigsController.doCancel();
-      expect(mainServiceInfoConfigsController.loadStep.calledOnce).to.equal(true);
+      expect(Em.run.once.calledWith(mainServiceInfoConfigsController, "onConfigGroupChange")).to.equal(true);
     });
   });
 


[10/15] git commit: AMBARI-7117. sqoop_user is not available in sqoop-env after upgrade(1.6.0->1.7.0)(vbrodetskyi)

Posted by nc...@apache.org.
AMBARI-7117. sqoop_user is not available in sqoop-env after upgrade(1.6.0->1.7.0)(vbrodetskyi)


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

Branch: refs/heads/branch-alerts-dev
Commit: f94ff9b27a48ebfbfae77045603bbe28b1cbc167
Parents: a940986
Author: Vitaly Brodetskyi <vb...@hortonworks.com>
Authored: Tue Sep 2 21:39:52 2014 +0300
Committer: Vitaly Brodetskyi <vb...@hortonworks.com>
Committed: Tue Sep 2 21:39:52 2014 +0300

----------------------------------------------------------------------
 .../java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java  | 2 ++
 .../org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java   | 3 +++
 2 files changed, 5 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/f94ff9b2/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
index 0ac9da7..c2dec57 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
@@ -767,6 +767,8 @@ public class UpgradeCatalog170 extends AbstractUpgradeCatalog {
     updateConfigurationProperties("yarn-env",
         Collections.singletonMap("min_user_id", "1000"), false,
         false);
+
+    updateConfigurationProperties("sqoop-env", Collections.singletonMap("sqoop_user", "sqoop"), false, false);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/ambari/blob/f94ff9b2/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
index e2ce75e..cc97114 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
@@ -297,6 +297,9 @@ public class UpgradeCatalog170Test {
         Collections.singletonMap("min_user_id", "1000"), false, false);
     expectLastCall();
 
+    upgradeCatalog.updateConfigurationProperties("sqoop-env", Collections.singletonMap("sqoop_user", "sqoop"), false, false);
+    expectLastCall();
+
     expect(dbAccessor.executeSelect("SELECT role_name, user_id FROM user_roles")).andReturn(userRolesResultSet).once();
     expect(entityManager.getTransaction()).andReturn(trans).anyTimes();
     expect(entityManager.getCriteriaBuilder()).andReturn(cb).anyTimes();


[06/15] git commit: AMBARI-7101. resource_management does not contain needed files, after upgradeon host with agent only(vbrodetskyi)

Posted by nc...@apache.org.
AMBARI-7101. resource_management does not contain needed files, after upgradeon host with agent only(vbrodetskyi)


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

Branch: refs/heads/branch-alerts-dev
Commit: 33335cef438369a40c4486ad2b76180676a2dd58
Parents: c0f5f01
Author: Vitaly Brodetskyi <vb...@hortonworks.com>
Authored: Tue Sep 2 17:26:53 2014 +0300
Committer: Vitaly Brodetskyi <vb...@hortonworks.com>
Committed: Tue Sep 2 17:26:53 2014 +0300

----------------------------------------------------------------------
 ambari-agent/src/main/package/rpm/posttrans_agent.sh   | 6 ++++++
 ambari-server/src/main/package/rpm/posttrans_server.sh | 6 ++++++
 2 files changed, 12 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/33335cef/ambari-agent/src/main/package/rpm/posttrans_agent.sh
----------------------------------------------------------------------
diff --git a/ambari-agent/src/main/package/rpm/posttrans_agent.sh b/ambari-agent/src/main/package/rpm/posttrans_agent.sh
index 15f824b..caabb33 100644
--- a/ambari-agent/src/main/package/rpm/posttrans_agent.sh
+++ b/ambari-agent/src/main/package/rpm/posttrans_agent.sh
@@ -17,6 +17,12 @@
 RESOURCE_MANAGEMENT_DIR="/usr/lib/python2.6/site-packages/resource_management"
 RESOURCE_MANAGEMENT_DIR_AGENT="/usr/lib/ambari-agent/lib/resource_management"
 
+# remove RESOURCE_MANAGEMENT_DIR if it's a directory
+if [ -d "$RESOURCE_MANAGEMENT_DIR" ]; then  # resource_management dir exists
+  if [ ! -L "$RESOURCE_MANAGEMENT_DIR" ]; then # resource_management dir is not link
+    rm -rf "$RESOURCE_MANAGEMENT_DIR"
+  fi
+fi
 # setting resource_management shared resource
 if [ ! -d "$RESOURCE_MANAGEMENT_DIR" ]; then
   ln -s "$RESOURCE_MANAGEMENT_DIR_AGENT" "$RESOURCE_MANAGEMENT_DIR"

http://git-wip-us.apache.org/repos/asf/ambari/blob/33335cef/ambari-server/src/main/package/rpm/posttrans_server.sh
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/package/rpm/posttrans_server.sh b/ambari-server/src/main/package/rpm/posttrans_server.sh
index 43478f4..04e4532 100644
--- a/ambari-server/src/main/package/rpm/posttrans_server.sh
+++ b/ambari-server/src/main/package/rpm/posttrans_server.sh
@@ -17,6 +17,12 @@
 RESOURCE_MANAGEMENT_DIR="/usr/lib/python2.6/site-packages/resource_management"
 RESOURCE_MANAGEMENT_DIR_SERVER="/usr/lib/ambari-server/lib/resource_management"
 
+# remove RESOURCE_MANAGEMENT_DIR if it's a directory
+if [ -d "$RESOURCE_MANAGEMENT_DIR" ]; then  # resource_management dir exists
+  if [ ! -L "$RESOURCE_MANAGEMENT_DIR" ]; then # resource_management dir is not link
+    rm -rf "$RESOURCE_MANAGEMENT_DIR"
+  fi
+fi
 # setting resource_management shared resource
 if [ ! -d "$RESOURCE_MANAGEMENT_DIR" ]; then
   ln -s "$RESOURCE_MANAGEMENT_DIR_SERVER" "$RESOURCE_MANAGEMENT_DIR"


[15/15] git commit: Merge branch 'trunk' into branch-alerts-dev

Posted by nc...@apache.org.
Merge branch 'trunk' into branch-alerts-dev


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

Branch: refs/heads/branch-alerts-dev
Commit: 8697c91b8309aeb9471585249d20fca6ccfee0f0
Parents: 7a0f509 641e177
Author: Nate Cole <nc...@hortonworks.com>
Authored: Tue Sep 2 16:29:02 2014 -0400
Committer: Nate Cole <nc...@hortonworks.com>
Committed: Tue Sep 2 16:29:02 2014 -0400

----------------------------------------------------------------------
 .../src/main/package/rpm/posttrans_agent.sh     |    6 +
 .../ambari/server/agent/ExecutionCommand.java   |    2 +
 .../AmbariManagementControllerImpl.java         |   11 +
 .../controller/StackConfigurationResponse.java  |   17 +-
 .../StackLevelConfigurationResponse.java        |    7 +-
 .../internal/BlueprintResourceProvider.java     |    3 +-
 .../internal/ClientConfigResourceProvider.java  |   11 +-
 .../internal/ClusterResourceProvider.java       |    2 +-
 .../StackConfigurationResourceProvider.java     |    6 +
 ...StackLevelConfigurationResourceProvider.java |    6 +
 .../server/orm/entities/BlueprintEntity.java    |    4 +-
 .../ambari/server/state/ConfigHelper.java       |   28 +
 .../ambari/server/state/PropertyInfo.java       |   34 +-
 .../server/upgrade/UpgradeCatalog170.java       |    6 +
 .../src/main/package/rpm/posttrans_server.sh    |    6 +
 .../src/main/resources/properties.json          |    2 +
 .../HDP/1.3.2/configuration/cluster-env.xml     |    2 +
 .../1.3.2/hooks/after-INSTALL/scripts/params.py |    1 +
 .../hooks/before-INSTALL/scripts/params.py      |   29 +-
 .../scripts/shared_initialization.py            |  111 +-
 .../GANGLIA/configuration/ganglia-env.xml       |    2 +
 .../services/HBASE/configuration/hbase-env.xml  |    1 +
 .../services/HDFS/configuration/hadoop-env.xml  |   12 +
 .../services/HDFS/configuration/hdfs-log4j.xml  |    1 +
 .../services/HDFS/package/scripts/params.py     |    2 +-
 .../services/HIVE/configuration/hive-env.xml    |    3 +
 .../services/HIVE/configuration/hive-site.xml   |    2 +-
 .../MAPREDUCE/configuration/mapred-env.xml      |    1 +
 .../NAGIOS/configuration/nagios-env.xml         |    4 +-
 .../services/OOZIE/configuration/oozie-env.xml  |    1 +
 .../services/OOZIE/configuration/oozie-site.xml |    2 +-
 .../services/SQOOP/configuration/sqoop-env.xml  |    1 +
 .../ZOOKEEPER/configuration/zookeeper-env.xml   |    1 +
 .../HDP/2.0.6/configuration/cluster-env.xml     |    2 +
 .../2.0.6/hooks/after-INSTALL/scripts/params.py |    1 +
 .../hooks/before-INSTALL/scripts/params.py      |   35 +-
 .../scripts/shared_initialization.py            |  136 +--
 .../services/FLUME/configuration/flume-env.xml  |    1 +
 .../GANGLIA/configuration/ganglia-env.xml       |    2 +
 .../services/HBASE/configuration/hbase-env.xml  |    1 +
 .../services/HDFS/configuration/core-site.xml   |   11 +
 .../services/HDFS/configuration/hadoop-env.xml  |   12 +
 .../services/HDFS/configuration/hdfs-log4j.xml  |    1 +
 .../services/HDFS/package/scripts/params.py     |    2 +-
 .../services/HIVE/configuration/hive-env.xml    |    3 +
 .../services/HIVE/configuration/hive-site.xml   |    2 +-
 .../NAGIOS/configuration/nagios-env.xml         |    4 +-
 .../services/OOZIE/configuration/oozie-env.xml  |    1 +
 .../services/OOZIE/configuration/oozie-site.xml |    2 +-
 .../services/SQOOP/configuration/sqoop-env.xml  |    1 +
 .../YARN/configuration-mapred/mapred-env.xml    |    1 +
 .../services/YARN/configuration/yarn-env.xml    |    1 +
 .../ZOOKEEPER/configuration/zookeeper-env.xml   |    1 +
 .../services/HIVE/configuration/hive-site.xml   |    2 +-
 .../FALCON/configuration/falcon-env.xml         |    1 +
 .../services/HIVE/configuration/hive-site.xml   |    2 +-
 .../services/STORM/configuration/storm-env.xml  |    1 +
 .../2.1/services/TEZ/configuration/tez-env.xml  |    1 +
 .../services/YARN/configuration/yarn-env.xml    |    1 +
 .../server/api/services/AmbariMetaInfoTest.java |    4 +-
 .../api/util/StackExtensionHelperTest.java      |    6 +-
 .../internal/ClusterResourceProviderTest.java   |   10 +-
 .../orm/entities/BlueprintEntityTest.java       |   24 +-
 .../server/upgrade/UpgradeCatalog170Test.java   |    7 +
 .../services/HIVE/configuration/hive-site.xml   |    2 +-
 .../app/assets/data/hosts/HDP2/hosts.json       |  406 ++++++-
 .../app/assets/data/hosts/quick_links.json      |   62 +
 .../app/assets/data/services/HDP2/services.json |   16 +
 .../services/host_component_stale_configs.json  |   62 +-
 .../data/stacks/HDP-2.1/operating_systems.json  |  157 +++
 .../data/stacks/HDP-2.1/service_components.json | 1143 +++++++++++++++---
 ambari-web/app/assets/data/views/instances.json |   40 +
 ambari-web/app/assets/data/views/views.json     |   11 +
 .../app/controllers/global/update_controller.js |    3 +
 .../controllers/main/service/info/configs.js    |    1 +
 .../app/controllers/wizard/step7_controller.js  |   28 +-
 ambari-web/app/data/HDP2/site_properties.js     |   13 +
 ambari-web/app/data/site_properties.js          |   13 +
 .../common/configs/config_history_flow.hbs      |    4 -
 .../common/configs/services_config.hbs          |   37 +-
 ambari-web/app/utils/ajax/ajax.js               |    8 +-
 ambari-web/app/utils/http_client.js             |    2 +-
 .../app/views/common/quick_view_link_view.js    |    2 +-
 .../main/service/info/config_test.js            |    8 +-
 .../service/reassign/step4_controller_test.js   |   21 -
 .../test/controllers/wizard/step8_test.js       |   20 +-
 ambari-web/test/models/stack_service_test.js    |   12 +-
 .../common/configs/config_history_flow_test.js  |    2 +-
 .../capacityscheduler/ConfigurationService.java |    1 +
 .../ui/app/assets/fonts/fontawesome-webfont.svg |   31 +-
 .../fonts/glyphicons-halflings-regular.svg      |  229 ++++
 .../ui/app/components/confirmDelete.js          |    2 +-
 .../src/main/resources/ui/app/router.js         |    2 +-
 .../resources/ui/app/styles/application.less    |   52 +-
 .../ui/app/templates/capacityEditForm.hbs       |    4 +-
 .../app/templates/components/totalCapacity.hbs  |   22 +-
 .../main/resources/ui/app/templates/queue.hbs   |   60 +-
 .../main/resources/ui/app/templates/queues.hbs  |   12 +-
 .../ui/app/templates/schedulerPanel.hbs         |   14 +-
 .../src/main/resources/view.xml                 |    6 +-
 contrib/views/slider/pom.xml                    |   57 +-
 .../slider/SliderAppsViewControllerImpl.java    |    2 +-
 102 files changed, 2435 insertions(+), 738 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/8697c91b/ambari-server/src/main/java/org/apache/ambari/server/agent/ExecutionCommand.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/ambari/blob/8697c91b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/ambari/blob/8697c91b/ambari-server/src/main/resources/properties.json
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/ambari/blob/8697c91b/ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
----------------------------------------------------------------------


[05/15] git commit: AMBARI-7112. Fix UI Unit tests. (onechiporenko)

Posted by nc...@apache.org.
AMBARI-7112. Fix UI Unit tests. (onechiporenko)


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

Branch: refs/heads/branch-alerts-dev
Commit: c0f5f01da4f53af15e754fb37c1ba0005984bb15
Parents: 9571ac8
Author: Oleg Nechiporenko <on...@apache.org>
Authored: Tue Sep 2 16:52:32 2014 +0300
Committer: Oleg Nechiporenko <on...@apache.org>
Committed: Tue Sep 2 16:52:32 2014 +0300

----------------------------------------------------------------------
 .../service/reassign/step4_controller_test.js   | 21 --------------------
 .../test/controllers/wizard/step8_test.js       | 20 +++++++++++--------
 ambari-web/test/models/stack_service_test.js    | 12 ++++++++---
 .../common/configs/config_history_flow_test.js  |  2 +-
 4 files changed, 22 insertions(+), 33 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f5f01d/ambari-web/test/controllers/main/service/reassign/step4_controller_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/controllers/main/service/reassign/step4_controller_test.js b/ambari-web/test/controllers/main/service/reassign/step4_controller_test.js
index 6b20bd9..dbd6c90 100644
--- a/ambari-web/test/controllers/main/service/reassign/step4_controller_test.js
+++ b/ambari-web/test/controllers/main/service/reassign/step4_controller_test.js
@@ -605,8 +605,6 @@ describe('App.ReassignMasterWizardStep4Controller', function () {
       controller.set('content.reassign.component_name', 'COMP1');
 
       controller.onLoadConfigs({items: []});
-      expect(controller.get('configsSitesNumber')).to.equal(0);
-      expect(controller.get('configsSitesCount')).to.equal(0);
       expect(controller.setAdditionalConfigs.calledWith({}, 'COMP1', 'host1')).to.be.true;
       expect(controller.setSecureConfigs.calledWith([], {}, 'COMP1')).to.be.true;
       expect(controller.setSpecificNamenodeConfigs.called).to.be.false;
@@ -623,8 +621,6 @@ describe('App.ReassignMasterWizardStep4Controller', function () {
           properties: {}
         }
       ]});
-      expect(controller.get('configsSitesNumber')).to.equal(1);
-      expect(controller.get('configsSitesCount')).to.equal(0);
       expect(controller.setAdditionalConfigs.calledWith({'hdfs-site': {}}, 'NAMENODE', 'host1')).to.be.true;
       expect(controller.setSecureConfigs.calledWith([], {'hdfs-site': {}}, 'NAMENODE')).to.be.true;
       expect(controller.setSpecificNamenodeConfigs.calledWith({'hdfs-site': {}}, 'host1')).to.be.true;
@@ -634,23 +630,6 @@ describe('App.ReassignMasterWizardStep4Controller', function () {
     });
   });
 
-  describe('#saveConfigsToServer()', function () {
-    it('configs is empty', function () {
-      controller.saveConfigsToServer({});
-      expect(App.ajax.send.called).to.be.false;
-    });
-    it('configs has one site', function () {
-      controller.saveConfigsToServer({'hdfs-site': {}});
-      expect(App.ajax.send.calledOnce).to.be.true;
-    });
-    it('configs has two sites', function () {
-      controller.saveConfigsToServer({
-        'hdfs-site': {},
-        'core-site': {}
-      });
-      expect(App.ajax.send.calledTwice).to.be.true;
-    });
-  });
 
  /* describe('#setSpecificNamenodeConfigs()', function () {
    it('configs is empty', function () {

http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f5f01d/ambari-web/test/controllers/wizard/step8_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/controllers/wizard/step8_test.js b/ambari-web/test/controllers/wizard/step8_test.js
index bff521c..b994ebb 100644
--- a/ambari-web/test/controllers/wizard/step8_test.js
+++ b/ambari-web/test/controllers/wizard/step8_test.js
@@ -1287,7 +1287,7 @@ describe('App.WizardStep8Controller', function () {
       it('should call addRequestToAjaxQueue', function() {
         var serviceConfigTags = [
             {
-              type: 'type1',
+              type: 'hdfs',
               tag: 'tag1',
               properties: [
                 {},
@@ -1297,15 +1297,19 @@ describe('App.WizardStep8Controller', function () {
           ],
           data = '['+JSON.stringify({
             Clusters: {
-              desired_config: {
-                type: serviceConfigTags[0].type,
-                tag: serviceConfigTags[0].tag,
-                properties: serviceConfigTags[0].properties
-              }
+              desired_config: [serviceConfigTags[0]]
             }
           })+']';
-        installerStep8Controller.reopen({serviceConfigTags: serviceConfigTags});
-        installerStep8Controller.applyConfigurationsToCluster();
+        installerStep8Controller.reopen({
+          selectedServices: [
+              Em.Object.create({
+                isSelected: true,
+                isInstalled: false,
+                configTypesRendered: {hdfs:'tag1'}
+              })
+            ]
+        });
+        installerStep8Controller.applyConfigurationsToCluster(serviceConfigTags);
         expect(installerStep8Controller.addRequestToAjaxQueue.args[0][0].data).to.eql({data: data});
       });
     });

http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f5f01d/ambari-web/test/models/stack_service_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/models/stack_service_test.js b/ambari-web/test/models/stack_service_test.js
index 7cbe4c7..ef3e587 100644
--- a/ambari-web/test/models/stack_service_test.js
+++ b/ambari-web/test/models/stack_service_test.js
@@ -65,21 +65,27 @@ describe('App.StackService', function () {
   describe('#configTypesRendered', function () {
     ss.set('configTypes', {
       'core-site': {},
-      'hdfs-site': {}
+      'hdfs-site': {},
+      'oozie-site': {}
     });
     it('service name is "SERVICE"', function () {
       ss.set('serviceName', 'SERVICE');
       ss.propertyDidChange('configTypesRendered');
-      expect(ss.get('configTypesRendered')).to.eql({'hdfs-site': {}});
+      expect(ss.get('configTypesRendered')).to.eql({'core-site': {},'hdfs-site': {}, 'oozie-site': {}});
     });
     it('service name is "GLUSTERFS"', function () {
       ss.set('serviceName', 'GLUSTERFS');
       ss.propertyDidChange('configTypesRendered');
-      expect(ss.get('configTypesRendered')).to.eql({'hdfs-site': {}});
+      expect(ss.get('configTypesRendered')).to.eql({'core-site': {},'hdfs-site': {}, 'oozie-site': {}});
     });
     it('service name is "HDFS"', function () {
       ss.set('serviceName', 'HDFS');
       ss.propertyDidChange('configTypesRendered');
+      expect(ss.get('configTypesRendered')).to.eql({'core-site': {}, 'hdfs-site': {}, 'oozie-site': {}});
+    });
+    it('service name is "FALCON"', function () {
+      ss.set('serviceName', 'FALCON');
+      ss.propertyDidChange('configTypesRendered');
       expect(ss.get('configTypesRendered')).to.eql({'core-site': {}, 'hdfs-site': {}});
     });
   });

http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f5f01d/ambari-web/test/views/common/configs/config_history_flow_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/views/common/configs/config_history_flow_test.js b/ambari-web/test/views/common/configs/config_history_flow_test.js
index 59d38e2..33f3cc4 100644
--- a/ambari-web/test/views/common/configs/config_history_flow_test.js
+++ b/ambari-web/test/views/common/configs/config_history_flow_test.js
@@ -20,7 +20,7 @@ var App = require('app');
 require('views/common/configs/config_history_flow');
 
 
-describe('App.ConfigHistoryFlowView', function () {
+describe.skip('App.ConfigHistoryFlowView', function () {
 
   var view = App.ConfigHistoryFlowView.create({
     controller: Em.Object.create({


[07/15] git commit: AMBARI-7116. Slider View: 3rd party libraries used by view should be updated (srimanth)

Posted by nc...@apache.org.
AMBARI-7116. Slider View: 3rd party libraries used by view should be updated (srimanth)


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

Branch: refs/heads/branch-alerts-dev
Commit: 29286b4b77c78766e6370084f615fc0fd4afe4db
Parents: 33335ce
Author: Srimanth Gunturi <sg...@hortonworks.com>
Authored: Tue Sep 2 11:00:24 2014 -0700
Committer: Srimanth Gunturi <sg...@hortonworks.com>
Committed: Tue Sep 2 11:00:24 2014 -0700

----------------------------------------------------------------------
 contrib/views/slider/pom.xml                    | 57 +++++++++++++++-----
 .../slider/SliderAppsViewControllerImpl.java    |  2 +-
 2 files changed, 45 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/29286b4b/contrib/views/slider/pom.xml
----------------------------------------------------------------------
diff --git a/contrib/views/slider/pom.xml b/contrib/views/slider/pom.xml
index f3d6ad0..4e57ec0 100644
--- a/contrib/views/slider/pom.xml
+++ b/contrib/views/slider/pom.xml
@@ -31,12 +31,12 @@
 		<dependency>
 			<groupId>org.apache.hadoop</groupId>
 			<artifactId>hadoop-hdfs</artifactId>
-			<version>${hadoop-version}</version>
+			<version>${hadoop.version}</version>
 		</dependency>
 		<dependency>
 			<groupId>org.apache.hadoop</groupId>
 			<artifactId>hadoop-common</artifactId>
-			<version>${hadoop-version}</version>
+			<version>${hadoop.version}</version>
 		</dependency>
 		<dependency>
 			<groupId>org.apache.slider</groupId>
@@ -68,7 +68,7 @@
 		<dependency>
 			<groupId>org.apache.hadoop</groupId>
 			<artifactId>hadoop-minicluster</artifactId>
-			<version>${hadoop-version}</version>
+			<version>${hadoop.version}</version>
 			<scope>test</scope>
 		</dependency>
 
@@ -337,13 +337,6 @@
 			</exclusions>
 		</dependency>
 		<dependency>
-			<groupId>org.apache.httpcomponents</groupId>
-			<artifactId>httpclient</artifactId>
-			<version>${httpclient.version}</version>
-			<exclusions>
-			</exclusions>
-		</dependency>
-		<dependency>
 			<groupId>com.beust</groupId>
 			<artifactId>jcommander</artifactId>
 			<version>${jcommander.version}</version>
@@ -354,6 +347,29 @@
 				</exclusion>
 			</exclusions>
 		</dependency>
+		<!-- ======================================================== -->
+		<!-- Jetty -->
+		<!-- ======================================================== -->
+		<dependency>
+			<groupId>org.mortbay.jetty</groupId>
+			<artifactId>jetty</artifactId>
+			<version>${jetty.version}</version>
+		</dependency>
+		<dependency>
+			<groupId>org.mortbay.jetty</groupId>
+			<artifactId>jetty-util</artifactId>
+			<version>${jetty.version}</version>
+		</dependency>
+		<dependency>
+			<groupId>org.mortbay.jetty</groupId>
+			<artifactId>jetty-sslengine</artifactId>
+			<version>${jetty.version}</version>
+		</dependency>
+		<dependency>
+			<groupId>com.codahale.metrics</groupId>
+			<artifactId>metrics-core</artifactId>
+			<version>${metrics.version}</version>
+		</dependency>
 	</dependencies>
 
 	<repositories>
@@ -362,24 +378,39 @@
 			<name>SliderAppsLibsRepo</name>
 			<url>file://${project.basedir}/lib</url>
 		</repository>
+		<repository>
+			<id>ASF Staging</id>
+			<url>https://repository.apache.org/content/groups/staging/</url>
+		</repository>
+		<repository>
+			<id>ASF Snapshots</id>
+			<url>https://repository.apache.org/content/repositories/snapshots/</url>
+			<snapshots>
+				<enabled>true</enabled>
+			</snapshots>
+			<releases>
+				<enabled>false</enabled>
+			</releases>
+		</repository>
 	</repositories>
 
 	<properties>
-		<hadoop-version>2.4.0</hadoop-version>
 		<nodejs.directory>${basedir}/target/nodejs</nodejs.directory>
 		<npm.version>1.4.3</npm.version>
 		<ui.directory>${basedir}/src/main/resources/ui</ui.directory>
 		<!-- deprecated, moved to top component -->
 		<!-- <ambari.version>1.3.0-SNAPSHOT</ambari.version> -->
-		<hadoop.version>2.4.0</hadoop.version>
+		<hadoop.version>2.6.0-SNAPSHOT</hadoop.version>
 		<avro.version>1.7.4</avro.version>
 		<bigtop.version>0.7.0</bigtop.version>
 		<commons-configuration.version>1.6</commons-configuration.version>
 		<commons-lang.version>2.6</commons-lang.version>
-		<httpclient.version>4.2.5</httpclient.version>
+		<httpclient.version>3.1</httpclient.version>
 		<jcommander.version>1.30</jcommander.version>
 		<curator.version>2.4.1</curator.version>
 		<zookeeper.version>3.4.5</zookeeper.version>
+		<jetty.version>6.1.26</jetty.version>
+		<metrics.version>3.0.1</metrics.version>
 	</properties>
 
 	<build>

http://git-wip-us.apache.org/repos/asf/ambari/blob/29286b4b/contrib/views/slider/src/main/java/org/apache/ambari/view/slider/SliderAppsViewControllerImpl.java
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/java/org/apache/ambari/view/slider/SliderAppsViewControllerImpl.java b/contrib/views/slider/src/main/java/org/apache/ambari/view/slider/SliderAppsViewControllerImpl.java
index deb6b70..6b3b3f5 100644
--- a/contrib/views/slider/src/main/java/org/apache/ambari/view/slider/SliderAppsViewControllerImpl.java
+++ b/contrib/views/slider/src/main/java/org/apache/ambari/view/slider/SliderAppsViewControllerImpl.java
@@ -744,7 +744,7 @@ public class SliderAppsViewControllerImpl implements SliderAppsViewController {
       createArgs.template = appConfigJsonFile;
       createArgs.resources = resourcesJsonFile;
       createArgs.image = new Path(hdfsLocation
-                                  + "/slider/agent/slider-agent.tar.gz");
+                                  + "/user/yarn/agent/slider-agent.tar.gz");
 
       ClassLoader currentClassLoader = Thread.currentThread()
           .getContextClassLoader();


[14/15] git commit: AMBARI-7098. ipc.server.tcpnodelay should be enabled by default (aonishuk)

Posted by nc...@apache.org.
AMBARI-7098. ipc.server.tcpnodelay should be enabled by default (aonishuk)


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

Branch: refs/heads/branch-alerts-dev
Commit: 641e177b885311d952de31362f2247620b910b72
Parents: 15e4032
Author: Andrew Onishuk <ao...@hortonworks.com>
Authored: Tue Sep 2 22:24:34 2014 +0300
Committer: Andrew Onishuk <ao...@hortonworks.com>
Committed: Tue Sep 2 22:24:34 2014 +0300

----------------------------------------------------------------------
 .../HDP/2.0.6/services/HDFS/configuration/core-site.xml  | 11 +++++++++++
 1 file changed, 11 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/641e177b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/core-site.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/core-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/core-site.xml
index 569b1fe..52764ac 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/core-site.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/core-site.xml
@@ -89,6 +89,17 @@
     <description>Defines the maximum number of retries for IPC connections.</description>
   </property>
 
+  <property>
+    <name>ipc.server.tcpnodelay</name>
+    <value>true</value>
+    <description>Turn on/off Nagle's algorithm for the TCP socket
+      connection on
+      the server. Setting to true disables the algorithm and may
+      decrease latency
+      with a cost of more/smaller packets.
+    </description>
+  </property>
+
   <!-- Web Interface Configuration -->
   <property>
     <name>mapreduce.jobtracker.webinterface.trusted</name>


[02/15] git commit: AMBARI-7109 Fix test mode in ambari web. (atkach)

Posted by nc...@apache.org.
AMBARI-7109 Fix test mode in ambari web. (atkach)


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

Branch: refs/heads/branch-alerts-dev
Commit: 6738d3d346f4b5af4a1084e880907ba3bf19dffc
Parents: b6abb3d
Author: atkach <at...@hortonworks.com>
Authored: Tue Sep 2 15:28:52 2014 +0300
Committer: atkach <at...@hortonworks.com>
Committed: Tue Sep 2 15:28:52 2014 +0300

----------------------------------------------------------------------
 .../app/assets/data/hosts/HDP2/hosts.json       |  406 ++++++-
 .../app/assets/data/hosts/quick_links.json      |   62 +
 .../app/assets/data/services/HDP2/services.json |   16 +
 .../services/host_component_stale_configs.json  |   62 +-
 .../data/stacks/HDP-2.1/operating_systems.json  |  157 +++
 .../data/stacks/HDP-2.1/service_components.json | 1143 +++++++++++++++---
 ambari-web/app/assets/data/views/instances.json |   40 +
 ambari-web/app/assets/data/views/views.json     |   11 +
 .../app/controllers/global/update_controller.js |    3 +
 ambari-web/app/utils/ajax/ajax.js               |    8 +-
 ambari-web/app/utils/http_client.js             |    2 +-
 .../app/views/common/quick_view_link_view.js    |    2 +-
 12 files changed, 1639 insertions(+), 273 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/assets/data/hosts/HDP2/hosts.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/hosts/HDP2/hosts.json b/ambari-web/app/assets/data/hosts/HDP2/hosts.json
index 41b5e7e..2533488 100644
--- a/ambari-web/app/assets/data/hosts/HDP2/hosts.json
+++ b/ambari-web/app/assets/data/hosts/HDP2/hosts.json
@@ -1,79 +1,353 @@
 {
-  "href" : "http://dev01.hortonworks.com:8080/api/v1/clusters/c1/hosts?fields=Hosts/host_name,Hosts/public_host_name,Hosts/disk_info,Hosts/cpu_count,Hosts/total_mem,Hosts/host_status,Hosts/last_heartbeat_time,Hosts/os_arch,Hosts/os_type,Hosts/ip,host_components,metrics/disk,metrics/load/load_one",
+  "itemTotal" : "1",
   "items" : [
     {
-      "href" : "http://dev01.hortonworks.com:8080/api/v1/clusters/c1/hosts/dev01.hortonworks.com",
       "Hosts" : {
-        "cluster_name" : "c1",
         "cpu_count" : 1,
-        "disk_info" : [
-          {
-            "available" : "46389672",
-            "used" : "4692332",
-            "percent" : "10%",
-            "size" : "51606140",
-            "type" : "ext4",
-            "mountpoint" : "/"
-          },
-          {
-            "available" : "1027192",
-            "used" : "272",
-            "percent" : "1%",
-            "size" : "1027464",
-            "type" : "tmpfs",
-            "mountpoint" : "/dev/shm"
-          },
-          {
-            "available" : "409107",
-            "used" : "61137",
-            "percent" : "14%",
-            "size" : "495844",
-            "type" : "ext4",
-            "mountpoint" : "/boot"
-          },
-          {
-            "available" : "44459296",
-            "used" : "184796",
-            "percent" : "1%",
-            "size" : "47033288",
-            "type" : "ext4",
-            "mountpoint" : "/home"
-          },
-          {
-            "available" : "29882200",
-            "used" : "457830724",
-            "percent" : "94%",
-            "size" : "487712924",
-            "type" : "vboxsf",
-            "mountpoint" : "/media/sf_ambari"
-          }
-        ],
         "host_name" : "dev01.hortonworks.com",
-        "host_status" : "HEALTHY",
+        "host_status" : "UNHEALTHY",
         "ip" : "10.0.2.15",
-        "last_heartbeat_time" : 1375309885919,
-        "os_arch" : "x86_64",
-        "os_type" : "centos6",
-        "public_host_name" : "dev01.hortonworks.com",
+        "last_heartbeat_time" : 1409659979205,
         "maintenance_state" : "OFF",
-        "total_mem" : 2055208
+        "ph_cpu_count" : 1,
+        "public_host_name" : "dev01.hortonworks.com",
+        "total_mem" : 4055304
       },
-      "metrics" : {
-        "disk" : {
-          "disk_free" : 91.23,
-          "disk_total" : 101.515
+      "host_components" : [
+        {
+          "HostRoles" : {
+            "component_name" : "APP_TIMELINE_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "YARN",
+            "stale_configs" : false,
+            "state" : "STARTED"
+          }
         },
-        "load" : {
-          "load_one" : 1.51880555556
-        }
-      },
-      "alerts" : {
-        "summary" : {
-          "CRITICAL" : 9,
-          "OK" : 5,
-          "WARNING" : 2
+        {
+          "HostRoles" : {
+            "component_name" : "DATANODE",
+            "maintenance_state" : "OFF",
+            "service_name" : "HDFS",
+            "stale_configs" : false,
+            "state" : "STARTED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "DRPC_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "STORM",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "FALCON_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "FALCON",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "FALCON_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "FALCON",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "FLUME_HANDLER",
+            "maintenance_state" : "OFF",
+            "service_name" : "FLUME",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "GANGLIA_MONITOR",
+            "maintenance_state" : "OFF",
+            "service_name" : "GANGLIA",
+            "stale_configs" : true,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "GANGLIA_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "GANGLIA",
+            "stale_configs" : true,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HBASE_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "HBASE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HBASE_MASTER",
+            "maintenance_state" : "OFF",
+            "service_name" : "HBASE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HBASE_REGIONSERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "HBASE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HCAT",
+            "maintenance_state" : "OFF",
+            "service_name" : "HCATALOG",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HDFS_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "HDFS",
+            "stale_configs" : false,
+            "state" : "INSTALLED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HISTORYSERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "MAPREDUCE2",
+            "stale_configs" : false,
+            "state" : "STARTED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HIVE_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "HIVE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HIVE_METASTORE",
+            "maintenance_state" : "OFF",
+            "service_name" : "HIVE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HIVE_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "HIVE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "MAPREDUCE2_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "MAPREDUCE2",
+            "stale_configs" : false,
+            "state" : "INSTALLED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "MYSQL_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "HIVE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "NAGIOS_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "NAGIOS",
+            "stale_configs" : true,
+            "state" : "INIT"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "NAMENODE",
+            "maintenance_state" : "OFF",
+            "service_name" : "HDFS",
+            "stale_configs" : false,
+            "state" : "STARTED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "NIMBUS",
+            "maintenance_state" : "OFF",
+            "service_name" : "STORM",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "NODEMANAGER",
+            "maintenance_state" : "OFF",
+            "service_name" : "YARN",
+            "stale_configs" : false,
+            "state" : "STARTED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "OOZIE_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "OOZIE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "OOZIE_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "OOZIE",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "PIG",
+            "maintenance_state" : "OFF",
+            "service_name" : "PIG",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "RESOURCEMANAGER",
+            "maintenance_state" : "OFF",
+            "service_name" : "YARN",
+            "stale_configs" : false,
+            "state" : "STARTED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "SECONDARY_NAMENODE",
+            "maintenance_state" : "OFF",
+            "service_name" : "HDFS",
+            "stale_configs" : false,
+            "state" : "STARTED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "SQOOP",
+            "maintenance_state" : "OFF",
+            "service_name" : "SQOOP",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "STORM_REST_API",
+            "maintenance_state" : "OFF",
+            "service_name" : "STORM",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "STORM_UI_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "STORM",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "SUPERVISOR",
+            "maintenance_state" : "OFF",
+            "service_name" : "STORM",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "TEZ_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "TEZ",
+            "stale_configs" : false,
+            "state" : "INSTALLED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "WEBHCAT_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "WEBHCAT",
+            "stale_configs" : false,
+            "state" : "INSTALL_FAILED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "YARN_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "YARN",
+            "stale_configs" : false,
+            "state" : "INSTALLED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "ZOOKEEPER_CLIENT",
+            "maintenance_state" : "OFF",
+            "service_name" : "ZOOKEEPER",
+            "stale_configs" : false,
+            "state" : "INSTALLED"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "ZOOKEEPER_SERVER",
+            "maintenance_state" : "OFF",
+            "service_name" : "ZOOKEEPER",
+            "stale_configs" : false,
+            "state" : "STARTED"
+          }
         }
-      }
+      ]
     }
   ]
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/assets/data/hosts/quick_links.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/hosts/quick_links.json b/ambari-web/app/assets/data/hosts/quick_links.json
new file mode 100644
index 0000000..6b5ca69
--- /dev/null
+++ b/ambari-web/app/assets/data/hosts/quick_links.json
@@ -0,0 +1,62 @@
+{
+  "items" : [
+    {
+      "Hosts" : {
+        "host_name" : "dev01.hortonworks.com",
+        "public_host_name" : "dev01.hortonworks.com"
+      },
+      "host_components" : [
+        {
+          "HostRoles" : {
+            "component_name" : "DATANODE"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HDFS_CLIENT"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "HISTORYSERVER"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "JOBTRACKER"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "MAPREDUCE_CLIENT"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "NAMENODE"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "PIG"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "SECONDARY_NAMENODE"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "SQOOP"
+          }
+        },
+        {
+          "HostRoles" : {
+            "component_name" : "TASKTRACKER"
+          }
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/assets/data/services/HDP2/services.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/services/HDP2/services.json b/ambari-web/app/assets/data/services/HDP2/services.json
index dc470a8..3cb544d 100644
--- a/ambari-web/app/assets/data/services/HDP2/services.json
+++ b/ambari-web/app/assets/data/services/HDP2/services.json
@@ -18,6 +18,22 @@
       }
     },
     {
+      "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/services/GANGLIA",
+      "ServiceInfo" : {
+        "maintenance_state" : "OFF",
+        "cluster_name" : "cl",
+        "service_name" : "HIVE",
+        "state": "STARTED"
+      },
+      "alerts" : {
+        "summary" : {
+          "CRITICAL" : 0,
+          "OK" : 0,
+          "WARNING" : 0
+        }
+      }
+    },
+    {
       "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/services/HBASE",
       "ServiceInfo" : {
         "maintenance_state" : "OFF",

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/assets/data/services/host_component_stale_configs.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/services/host_component_stale_configs.json b/ambari-web/app/assets/data/services/host_component_stale_configs.json
index e256ff0..a63f647 100644
--- a/ambari-web/app/assets/data/services/host_component_stale_configs.json
+++ b/ambari-web/app/assets/data/services/host_component_stale_configs.json
@@ -1,42 +1,38 @@
 {
-  "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/host_components?fields=HostRoles/component_name&HostRoles/stale_configs=true",
   "items" : [
     {
-      "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/hosts/dev01.hortonworks.com/host_components/HBASE_CLIENT",
-      "HostRoles" : {
-        "cluster_name" : "cl",
-        "component_name" : "HBASE_CLIENT",
-        "host_name" : "dev01.hortonworks.com",
-        "stale_configs" : true
+      "ServiceComponentInfo" : {
+        "component_name" : "DATANODE"
       },
-      "host" : {
-        "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/hosts/dev01.hortonworks.com"
-      }
+      "host_components" : [
+        {
+          "HostRoles" : {
+            "component_name" : "DATANODE",
+            "host_name" : "dev01.hortonworks.com",
+            "maintenance_state" : "OFF",
+            "service_name" : "HDFS",
+            "stale_configs" : true,
+            "state" : "STARTED"
+          }
+        }
+      ]
     },
     {
-      "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/hosts/dev01.hortonworks.com/host_components/HBASE_MASTER",
-      "HostRoles" : {
-        "cluster_name" : "cl",
-        "component_name" : "HBASE_MASTER",
-        "ha_status" : "passive",
-        "host_name" : "dev01.hortonworks.com",
-        "stale_configs" : true
+      "ServiceComponentInfo" : {
+        "component_name" : "HDFS_CLIENT"
       },
-      "host" : {
-        "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/hosts/dev01.hortonworks.com"
-      }
-    },
-    {
-      "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/hosts/dev01.hortonworks.com/host_components/HBASE_REGIONSERVER",
-      "HostRoles" : {
-        "cluster_name" : "cl",
-        "component_name" : "HBASE_REGIONSERVER",
-        "host_name" : "dev01.hortonworks.com",
-        "stale_configs" : true
-      },
-      "host" : {
-        "href" : "http://192.168.56.101:8080/api/v1/clusters/cl/hosts/dev01.hortonworks.com"
-      }
+      "host_components" : [
+        {
+          "HostRoles" : {
+            "component_name" : "HDFS_CLIENT",
+            "host_name" : "dev01.hortonworks.com",
+            "maintenance_state" : "OFF",
+            "service_name" : "HDFS",
+            "stale_configs" : true,
+            "state" : "INSTALLED"
+          }
+        }
+      ]
     }
   ]
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/6738d3d3/ambari-web/app/assets/data/stacks/HDP-2.1/operating_systems.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/stacks/HDP-2.1/operating_systems.json b/ambari-web/app/assets/data/stacks/HDP-2.1/operating_systems.json
new file mode 100644
index 0000000..31aa8a4
--- /dev/null
+++ b/ambari-web/app/assets/data/stacks/HDP-2.1/operating_systems.json
@@ -0,0 +1,157 @@
+{
+  "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems?fields=repositories/*&_=1409658025867",
+  "items" : [
+    {
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/debian12",
+      "OperatingSystems" : {
+        "os_type" : "debian12",
+        "stack_name" : "HDP",
+        "stack_version" : "2.1"
+      },
+      "repositories" : [
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/debian12/repositories/HDP-2.1",
+          "Repositories" : {
+            "base_url" : "REPLACE_WITH_UBUNTU12_URL",
+            "default_base_url" : "REPLACE_WITH_UBUNTU12_URL",
+            "latest_base_url" : "http://private-repo-1.hortonworks.com/HDP/ubuntu12/2.1.5.0",
+            "mirrors_list" : null,
+            "os_type" : "debian12",
+            "repo_id" : "HDP-2.1",
+            "repo_name" : "HDP",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          }
+        },
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/debian12/repositories/HDP-UTILS-1.1.0.19",
+          "Repositories" : {
+            "base_url" : "http://dev.hortonworks.com.s3.amazonaws.com/HDP-UTILS-1.1.0.19/repos/ubuntu12",
+            "default_base_url" : "http://dev.hortonworks.com.s3.amazonaws.com/HDP-UTILS-1.1.0.19/repos/ubuntu12",
+            "latest_base_url" : "http://dev.hortonworks.com.s3.amazonaws.com/HDP-UTILS-1.1.0.19/repos/ubuntu12",
+            "mirrors_list" : null,
+            "os_type" : "debian12",
+            "repo_id" : "HDP-UTILS-1.1.0.19",
+            "repo_name" : "HDP-UTILS",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          }
+        }
+      ]
+    },
+    {
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/redhat5",
+      "OperatingSystems" : {
+        "os_type" : "redhat5",
+        "stack_name" : "HDP",
+        "stack_version" : "2.1"
+      },
+      "repositories" : [
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/redhat5/repositories/HDP-2.1",
+          "Repositories" : {
+            "base_url" : "REPLACE_WITH_CENTOS5_URL",
+            "default_base_url" : "REPLACE_WITH_CENTOS5_URL",
+            "latest_base_url" : "http://private-repo-1.hortonworks.com/HDP/centos5/2.x/updates/2.1.5.0",
+            "mirrors_list" : null,
+            "os_type" : "redhat5",
+            "repo_id" : "HDP-2.1",
+            "repo_name" : "HDP",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          }
+        },
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/redhat5/repositories/HDP-UTILS-1.1.0.17",
+          "Repositories" : {
+            "base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/centos5",
+            "default_base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/centos5",
+            "latest_base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/centos5",
+            "mirrors_list" : null,
+            "os_type" : "redhat5",
+            "repo_id" : "HDP-UTILS-1.1.0.17",
+            "repo_name" : "HDP-UTILS",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          }
+        }
+      ]
+    },
+    {
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/redhat6",
+      "OperatingSystems" : {
+        "os_type" : "redhat6",
+        "stack_name" : "HDP",
+        "stack_version" : "2.1"
+      },
+      "repositories" : [
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/redhat6/repositories/HDP-2.1",
+          "Repositories" : {
+            "base_url" : "REPLACE_WITH_CENTOS6_URL",
+            "default_base_url" : "REPLACE_WITH_CENTOS6_URL",
+            "latest_base_url" : "http://private-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.1.5.0",
+            "mirrors_list" : null,
+            "os_type" : "redhat6",
+            "repo_id" : "HDP-2.1",
+            "repo_name" : "HDP",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          }
+        },
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/redhat6/repositories/HDP-UTILS-1.1.0.17",
+          "Repositories" : {
+            "base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/centos6",
+            "default_base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/centos6",
+            "latest_base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/centos6",
+            "mirrors_list" : null,
+            "os_type" : "redhat6",
+            "repo_id" : "HDP-UTILS-1.1.0.17",
+            "repo_name" : "HDP-UTILS",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          }
+        }
+      ]
+    },
+    {
+      "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/suse11",
+      "OperatingSystems" : {
+        "os_type" : "suse11",
+        "stack_name" : "HDP",
+        "stack_version" : "2.1"
+      },
+      "repositories" : [
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/suse11/repositories/HDP-2.1",
+          "Repositories" : {
+            "base_url" : "REPLACE_WITH_SUSE11_URL",
+            "default_base_url" : "REPLACE_WITH_SUSE11_URL",
+            "latest_base_url" : "http://private-repo-1.hortonworks.com/HDP/sles11sp1/2.x/updates/2.1.5.0",
+            "mirrors_list" : null,
+            "os_type" : "suse11",
+            "repo_id" : "HDP-2.1",
+            "repo_name" : "HDP",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          }
+        },
+        {
+          "href" : "http://192.168.56.101:8080/api/v1/stacks/HDP/versions/2.1/operating_systems/suse11/repositories/HDP-UTILS-1.1.0.17",
+          "Repositories" : {
+            "base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/suse11",
+            "default_base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/suse11",
+            "latest_base_url" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.17/repos/suse11",
+            "mirrors_list" : null,
+            "os_type" : "suse11",
+            "repo_id" : "HDP-UTILS-1.1.0.17",
+            "repo_name" : "HDP-UTILS",
+            "stack_name" : "HDP",
+            "stack_version" : "2.1"
+          }
+        }
+      ]
+    }
+  ]
+}
\ No newline at end of file


[12/15] git commit: AMBARI-7084 - Capacity Scheduler View cleanup (Jeff Sposetti via tbeerbower)

Posted by nc...@apache.org.
AMBARI-7084 - Capacity Scheduler View cleanup (Jeff Sposetti via tbeerbower)


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

Branch: refs/heads/branch-alerts-dev
Commit: ea58eab3b253a903d34eac0030b3b500d513821d
Parents: f94ff9b
Author: tbeerbower <tb...@hortonworks.com>
Authored: Tue Sep 2 14:53:13 2014 -0400
Committer: tbeerbower <tb...@hortonworks.com>
Committed: Tue Sep 2 14:53:40 2014 -0400

----------------------------------------------------------------------
 .../capacityscheduler/ConfigurationService.java |   1 +
 .../ui/app/assets/fonts/fontawesome-webfont.svg |  31 ++-
 .../fonts/glyphicons-halflings-regular.svg      | 229 +++++++++++++++++++
 .../ui/app/components/confirmDelete.js          |   2 +-
 .../src/main/resources/ui/app/router.js         |   2 +-
 .../resources/ui/app/styles/application.less    |  52 ++++-
 .../ui/app/templates/capacityEditForm.hbs       |   4 +-
 .../app/templates/components/totalCapacity.hbs  |  22 +-
 .../main/resources/ui/app/templates/queue.hbs   |  60 ++---
 .../main/resources/ui/app/templates/queues.hbs  |  12 +-
 .../ui/app/templates/schedulerPanel.hbs         |  14 +-
 .../src/main/resources/view.xml                 |   6 +-
 12 files changed, 361 insertions(+), 74 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/java/org/apache/ambari/view/capacityscheduler/ConfigurationService.java
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/java/org/apache/ambari/view/capacityscheduler/ConfigurationService.java b/contrib/views/capacity-scheduler/src/main/java/org/apache/ambari/view/capacityscheduler/ConfigurationService.java
index 02259d8..550991a 100644
--- a/contrib/views/capacity-scheduler/src/main/java/org/apache/ambari/view/capacityscheduler/ConfigurationService.java
+++ b/contrib/views/capacity-scheduler/src/main/java/org/apache/ambari/view/capacityscheduler/ConfigurationService.java
@@ -48,6 +48,7 @@ public class ConfigurationService {
       "  \"RequestInfo\" : {\n" +
       "    \"command\" : \"REFRESHQUEUES\",\n" +
       "    \"context\" : \"Refresh YARN Capacity Scheduler\"\n" +
+      "    \"parameters/forceRefreshConfigTags\" : \"capacity-scheduler\"\n" +
       "  },\n" +
       "  \"Requests/resource_filters\": [{\n" +
       "    \"service_name\" : \"YARN\",\n" +

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/fontawesome-webfont.svg
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/fontawesome-webfont.svg b/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/fontawesome-webfont.svg
index 2edb4ec..45fdf33 100644
--- a/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/fontawesome-webfont.svg
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/fontawesome-webfont.svg
@@ -280,8 +280,8 @@
 <glyph unicode="&#xf113;" horiz-adv-x="1664" d="M640 320q0 -40 -12.5 -82t-43 -76t-72.5 -34t-72.5 34t-43 76t-12.5 82t12.5 82t43 76t72.5 34t72.5 -34t43 -76t12.5 -82zM1280 320q0 -40 -12.5 -82t-43 -76t-72.5 -34t-72.5 34t-43 76t-12.5 82t12.5 82t43 76t72.5 34t72.5 -34t43 -76t12.5 -82zM1440 320 q0 120 -69 204t-187 84q-41 0 -195 -21q-71 -11 -157 -11t-157 11q-152 21 -195 21q-118 0 -187 -84t-69 -204q0 -88 32 -153.5t81 -103t122 -60t140 -29.5t149 -7h168q82 0 149 7t140 29.5t122 60t81 103t32 153.5zM1664 496q0 -207 -61 -331q-38 -77 -105.5 -133t-141 -86 t-170 -47.5t-171.5 -22t-167 -4.5q-78 0 -142 3t-147.5 12.5t-152.5 30t-137 51.5t-121 81t-86 115q-62 123 -62 331q0 237 136 396q-27 82 -27 170q0 116 51 218q108 0 190 -39.5t189 -123.5q147 35 309 35q148 0 280 -32q105 82 187 121t189 39q51 -102 51 -218 q0 -87 -27 -168q136 -160 136 -398z" />
 <glyph unicode="&#xf114;" horiz-adv-x="1664" d="M1536 224v704q0 40 -28 68t-68 28h-704q-40 0 -68 28t-28 68v64q0 40 -28 68t-68 28h-320q-40 0 -68 -28t-28 -68v-960q0 -40 28 -68t68 -28h1216q40 0 68 28t28 68zM1664 928v-704q0 -92 -66 -158t-158 -66h-1216q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320 q92 0 158 -66t66 -158v-32h672q92 0 158 -66t66 -158z" />
 <glyph unicode="&#xf115;" horiz-adv-x="1920" d="M1781 605q0 35 -53 35h-1088q-40 0 -85.5 -21.5t-71.5 -52.5l-294 -363q-18 -24 -18 -40q0 -35 53 -35h1088q40 0 86 22t71 53l294 363q18 22 18 39zM640 768h768v160q0 40 -28 68t-68 28h-576q-40 0 -68 28t-28 68v64q0 40 -28 68t-68 28h-320q-40 0 -68 -28t-28 -68 v-853l256 315q44 53 116 87.5t140 34.5zM1909 605q0 -62 -46 -120l-295 -363q-43 -53 -116 -87.5t-140 -34.5h-1088q-92 0 -158 66t-66 158v960q0 92 66 158t158 66h320q92 0 158 -66t66 -158v-32h544q92 0 158 -66t66 -158v-160h192q54 0 99 -24.5t67 -70.5q15 -32 15 -68z " />
-<glyph unicode="&#xf116;" horiz-adv-x="1152" d="M896 608v-64q0 -14 -9 -23t-23 -9h-224v-224q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v224h-224q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v224q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-224h224q14 0 23 -9t9 -23zM1024 224v704q0 40 -28 68t-68 28h-704q-40 0 -68 -28 t-28 -68v-704q0 -40 28 -68t68 -28h704q40 0 68 28t28 68zM1152 928v-704q0 -92 -65.5 -158t-158.5 -66h-704q-93 0 -158.5 66t-65.5 158v704q0 93 65.5 158.5t158.5 65.5h704q93 0 158.5 -65.5t65.5 -158.5z" />
-<glyph unicode="&#xf117;" horiz-adv-x="1152" d="M928 1152q93 0 158.5 -65.5t65.5 -158.5v-704q0 -92 -65.5 -158t-158.5 -66h-704q-93 0 -158.5 66t-65.5 158v704q0 93 65.5 158.5t158.5 65.5h704zM1024 224v704q0 40 -28 68t-68 28h-704q-40 0 -68 -28t-28 -68v-704q0 -40 28 -68t68 -28h704q40 0 68 28t28 68z M864 640q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-576q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h576z" />
+<glyph unicode="&#xf116;" horiz-adv-x="1792" />
+<glyph unicode="&#xf117;" horiz-adv-x="1792" />
 <glyph unicode="&#xf118;" d="M1134 461q-37 -121 -138 -195t-228 -74t-228 74t-138 195q-8 25 4 48.5t38 31.5q25 8 48.5 -4t31.5 -38q25 -80 92.5 -129.5t151.5 -49.5t151.5 49.5t92.5 129.5q8 26 32 38t49 4t37 -31.5t4 -48.5zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5 t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5 t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
 <glyph unicode="&#xf119;" d="M1134 307q8 -25 -4 -48.5t-37 -31.5t-49 4t-32 38q-25 80 -92.5 129.5t-151.5 49.5t-151.5 -49.5t-92.5 -129.5q-8 -26 -31.5 -38t-48.5 -4q-26 8 -38 31.5t-4 48.5q37 121 138 195t228 74t228 -74t138 -195zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5 t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204 t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
 <glyph unicode="&#xf11a;" d="M1152 448q0 -26 -19 -45t-45 -19h-640q-26 0 -45 19t-19 45t19 45t45 19h640q26 0 45 -19t19 -45zM640 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1152 896q0 -53 -37.5 -90.5t-90.5 -37.5t-90.5 37.5 t-37.5 90.5t37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1408 640q0 130 -51 248.5t-136.5 204t-204 136.5t-248.5 51t-248.5 -51t-204 -136.5t-136.5 -204t-51 -248.5t51 -248.5t136.5 -204t204 -136.5t248.5 -51t248.5 51t204 136.5t136.5 204t51 248.5zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
@@ -310,7 +310,7 @@
 <glyph unicode="&#xf133;" horiz-adv-x="1664" d="M128 -128h1408v1024h-1408v-1024zM512 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1280 1088v288q0 14 -9 23t-23 9h-64q-14 0 -23 -9t-9 -23v-288q0 -14 9 -23t23 -9h64q14 0 23 9t9 23zM1664 1152v-1280 q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" />
 <glyph unicode="&#xf134;" horiz-adv-x="1408" d="M512 1344q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1408 1376v-320q0 -16 -12 -25q-8 -7 -20 -7q-4 0 -7 1l-448 96q-11 2 -18 11t-7 20h-256v-102q111 -23 183.5 -111t72.5 -203v-800q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v800 q0 106 62.5 190.5t161.5 114.5v111h-32q-59 0 -115 -23.5t-91.5 -53t-66 -66.5t-40.5 -53.5t-14 -24.5q-17 -35 -57 -35q-16 0 -29 7q-23 12 -31.5 37t3.5 49q5 10 14.5 26t37.5 53.5t60.5 70t85 67t108.5 52.5q-25 42 -25 86q0 66 47 113t113 47t113 -47t47 -113 q0 -33 -14 -64h302q0 11 7 20t18 11l448 96q3 1 7 1q12 0 20 -7q12 -9 12 -25z" />
 <glyph unicode="&#xf135;" horiz-adv-x="1664" d="M1440 1088q0 40 -28 68t-68 28t-68 -28t-28 -68t28 -68t68 -28t68 28t28 68zM1664 1376q0 -249 -75.5 -430.5t-253.5 -360.5q-81 -80 -195 -176l-20 -379q-2 -16 -16 -26l-384 -224q-7 -4 -16 -4q-12 0 -23 9l-64 64q-13 14 -8 32l85 276l-281 281l-276 -85q-3 -1 -9 -1 q-14 0 -23 9l-64 64q-17 19 -5 39l224 384q10 14 26 16l379 20q96 114 176 195q188 187 358 258t431 71q14 0 24 -9.5t10 -22.5z" />
-<glyph unicode="&#xf136;" horiz-adv-x="1792" d="M1708 881l-188 -881h-304l181 849q4 21 1 43q-4 20 -16 35q-10 14 -28 24q-18 9 -40 9h-197l-205 -960h-303l204 960h-304l-205 -960h-304l272 1280h1139q157 0 245 -118q86 -116 52 -281z" />
+<glyph unicode="&#xf136;" horiz-adv-x="1792" d="M1745 763l-164 -763h-334l178 832q13 56 -15 88q-27 33 -83 33h-169l-204 -953h-334l204 953h-286l-204 -953h-334l204 953l-153 327h1276q101 0 189.5 -40.5t147.5 -113.5q60 -73 81 -168.5t0 -194.5z" />
 <glyph unicode="&#xf137;" d="M909 141l102 102q19 19 19 45t-19 45l-307 307l307 307q19 19 19 45t-19 45l-102 102q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l454 -454q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
 <glyph unicode="&#xf138;" d="M717 141l454 454q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-102 -102q-19 -19 -19 -45t19 -45l307 -307l-307 -307q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
 <glyph unicode="&#xf139;" d="M1165 397l102 102q19 19 19 45t-19 45l-454 454q-19 19 -45 19t-45 -19l-454 -454q-19 -19 -19 -45t19 -45l102 -102q19 -19 45 -19t45 19l307 307l307 -307q19 -19 45 -19t45 19zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
@@ -342,7 +342,7 @@
 <glyph unicode="&#xf155;" horiz-adv-x="1024" d="M978 351q0 -153 -99.5 -263.5t-258.5 -136.5v-175q0 -14 -9 -23t-23 -9h-135q-13 0 -22.5 9.5t-9.5 22.5v175q-66 9 -127.5 31t-101.5 44.5t-74 48t-46.5 37.5t-17.5 18q-17 21 -2 41l103 135q7 10 23 12q15 2 24 -9l2 -2q113 -99 243 -125q37 -8 74 -8q81 0 142.5 43 t61.5 122q0 28 -15 53t-33.5 42t-58.5 37.5t-66 32t-80 32.5q-39 16 -61.5 25t-61.5 26.5t-62.5 31t-56.5 35.5t-53.5 42.5t-43.5 49t-35.5 58t-21 66.5t-8.5 78q0 138 98 242t255 134v180q0 13 9.5 22.5t22.5 9.5h135q14 0 23 -9t9 -23v-176q57 -6 110.5 -23t87 -33.5 t63.5 -37.5t39 -29t15 -14q17 -18 5 -38l-81 -146q-8 -15 -23 -16q-14 -3 -27 7q-3 3 -14.5 12t-39 26.5t-58.5 32t-74.5 26t-85.5 11.5q-95 0 -155 -43t-60 -111q0 -26 8.5 -48t29.5 -41.5t39.5 -33t56 -31t60.5 -27t70 -27.5q53 -20 81 -31.5t76 -35t75.5 -42.5t62 -50 t53 -63.5t31.5 -76.5t13 -94z" />
 <glyph unicode="&#xf156;" horiz-adv-x="898" d="M898 1066v-102q0 -14 -9 -23t-23 -9h-168q-23 -144 -129 -234t-276 -110q167 -178 459 -536q14 -16 4 -34q-8 -18 -29 -18h-195q-16 0 -25 12q-306 367 -498 571q-9 9 -9 22v127q0 13 9.5 22.5t22.5 9.5h112q132 0 212.5 43t102.5 125h-427q-14 0 -23 9t-9 23v102 q0 14 9 23t23 9h413q-57 113 -268 113h-145q-13 0 -22.5 9.5t-9.5 22.5v133q0 14 9 23t23 9h832q14 0 23 -9t9 -23v-102q0 -14 -9 -23t-23 -9h-233q47 -61 64 -144h171q14 0 23 -9t9 -23z" />
 <glyph unicode="&#xf157;" horiz-adv-x="1027" d="M603 0h-172q-13 0 -22.5 9t-9.5 23v330h-288q-13 0 -22.5 9t-9.5 23v103q0 13 9.5 22.5t22.5 9.5h288v85h-288q-13 0 -22.5 9t-9.5 23v104q0 13 9.5 22.5t22.5 9.5h214l-321 578q-8 16 0 32q10 16 28 16h194q19 0 29 -18l215 -425q19 -38 56 -125q10 24 30.5 68t27.5 61 l191 420q8 19 29 19h191q17 0 27 -16q9 -14 1 -31l-313 -579h215q13 0 22.5 -9.5t9.5 -22.5v-104q0 -14 -9.5 -23t-22.5 -9h-290v-85h290q13 0 22.5 -9.5t9.5 -22.5v-103q0 -14 -9.5 -23t-22.5 -9h-290v-330q0 -13 -9.5 -22.5t-22.5 -9.5z" />
-<glyph unicode="&#xf158;" horiz-adv-x="1664" d="M1664 352v-32q0 -132 -94 -226t-226 -94h-128q-132 0 -226 94t-94 226v480h-224q-2 -102 -14.5 -190.5t-30.5 -156t-48.5 -126.5t-57 -99.5t-67.5 -77.5t-69.5 -58.5t-74 -44t-69 -32t-65.5 -25.5q-4 -2 -32 -13q-8 -2 -12 -2q-22 0 -30 20l-71 178q-5 13 0 25t17 17 q7 3 20 7.5t18 6.5q31 12 46.5 18.5t44.5 20t45.5 26t42 32.5t40.5 42.5t34.5 53.5t30.5 68.5t22.5 83.5t17 103t6.5 123h-256q-14 0 -23 9t-9 23v160q0 14 9 23t23 9h1216q14 0 23 -9t9 -23v-160q0 -14 -9 -23t-23 -9h-224v-512q0 -26 19 -45t45 -19h128q26 0 45 19t19 45 v64q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1280 1376v-160q0 -14 -9 -23t-23 -9h-960q-14 0 -23 9t-9 23v160q0 14 9 23t23 9h960q14 0 23 -9t9 -23z" />
+<glyph unicode="&#xf158;" horiz-adv-x="1280" d="M1043 971q0 100 -65 162t-171 62h-320v-448h320q106 0 171 62t65 162zM1280 971q0 -193 -126.5 -315t-326.5 -122h-340v-118h505q14 0 23 -9t9 -23v-128q0 -14 -9 -23t-23 -9h-505v-192q0 -14 -9.5 -23t-22.5 -9h-167q-14 0 -23 9t-9 23v192h-224q-14 0 -23 9t-9 23v128 q0 14 9 23t23 9h224v118h-224q-14 0 -23 9t-9 23v149q0 13 9 22.5t23 9.5h224v629q0 14 9 23t23 9h539q200 0 326.5 -122t126.5 -315z" />
 <glyph unicode="&#xf159;" horiz-adv-x="1792" d="M514 341l81 299h-159l75 -300q1 -1 1 -3t1 -3q0 1 0.5 3.5t0.5 3.5zM630 768l35 128h-292l32 -128h225zM822 768h139l-35 128h-70zM1271 340l78 300h-162l81 -299q0 -1 0.5 -3.5t1.5 -3.5q0 1 0.5 3t0.5 3zM1382 768l33 128h-297l34 -128h230zM1792 736v-64q0 -14 -9 -23 t-23 -9h-213l-164 -616q-7 -24 -31 -24h-159q-24 0 -31 24l-166 616h-209l-167 -616q-7 -24 -31 -24h-159q-11 0 -19.5 7t-10.5 17l-160 616h-208q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h175l-33 128h-142q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h109l-89 344q-5 15 5 28 q10 12 26 12h137q26 0 31 -24l90 -360h359l97 360q7 24 31 24h126q24 0 31 -24l98 -360h365l93 360q5 24 31 24h137q16 0 26 -12q10 -13 5 -28l-91 -344h111q14 0 23 -9t9 -23v-64q0 -14 -9 -23t-23 -9h-145l-34 -128h179q14 0 23 -9t9 -23z" />
 <glyph unicode="&#xf15a;" horiz-adv-x="1280" d="M1167 896q18 -182 -131 -258q117 -28 175 -103t45 -214q-7 -71 -32.5 -125t-64.5 -89t-97 -58.5t-121.5 -34.5t-145.5 -15v-255h-154v251q-80 0 -122 1v-252h-154v255q-18 0 -54 0.5t-55 0.5h-200l31 183h111q50 0 58 51v402h16q-6 1 -16 1v287q-13 68 -89 68h-111v164 l212 -1q64 0 97 1v252h154v-247q82 2 122 2v245h154v-252q79 -7 140 -22.5t113 -45t82.5 -78t36.5 -114.5zM952 351q0 36 -15 64t-37 46t-57.5 30.5t-65.5 18.5t-74 9t-69 3t-64.5 -1t-47.5 -1v-338q8 0 37 -0.5t48 -0.5t53 1.5t58.5 4t57 8.5t55.5 14t47.5 21t39.5 30 t24.5 40t9.5 51zM881 827q0 33 -12.5 58.5t-30.5 42t-48 28t-55 16.5t-61.5 8t-58 2.5t-54 -1t-39.5 -0.5v-307q5 0 34.5 -0.5t46.5 0t50 2t55 5.5t51.5 11t48.5 18.5t37 27t27 38.5t9 51z" />
 <glyph unicode="&#xf15b;" horiz-adv-x="1280" d="M1280 768v-800q0 -40 -28 -68t-68 -28h-1088q-40 0 -68 28t-28 68v1344q0 40 28 68t68 28h544v-544q0 -40 28 -68t68 -28h544zM1277 896h-509v509q82 -15 132 -65l312 -312q50 -50 65 -132z" />
@@ -390,10 +390,25 @@
 <glyph unicode="&#xf188;" horiz-adv-x="1664" d="M1632 576q0 -26 -19 -45t-45 -19h-224q0 -171 -67 -290l208 -209q19 -19 19 -45t-19 -45q-18 -19 -45 -19t-45 19l-198 197q-5 -5 -15 -13t-42 -28.5t-65 -36.5t-82 -29t-97 -13v896h-128v-896q-51 0 -101.5 13.5t-87 33t-66 39t-43.5 32.5l-15 14l-183 -207 q-20 -21 -48 -21q-24 0 -43 16q-19 18 -20.5 44.5t15.5 46.5l202 227q-58 114 -58 274h-224q-26 0 -45 19t-19 45t19 45t45 19h224v294l-173 173q-19 19 -19 45t19 45t45 19t45 -19l173 -173h844l173 173q19 19 45 19t45 -19t19 -45t-19 -45l-173 -173v-294h224q26 0 45 -19 t19 -45zM1152 1152h-640q0 133 93.5 226.5t226.5 93.5t226.5 -93.5t93.5 -226.5z" />
 <glyph unicode="&#xf189;" horiz-adv-x="1920" d="M1917 1016q23 -64 -150 -294q-24 -32 -65 -85q-78 -100 -90 -131q-17 -41 14 -81q17 -21 81 -82h1l1 -1l1 -1l2 -2q141 -131 191 -221q3 -5 6.5 -12.5t7 -26.5t-0.5 -34t-25 -27.5t-59 -12.5l-256 -4q-24 -5 -56 5t-52 22l-20 12q-30 21 -70 64t-68.5 77.5t-61 58 t-56.5 15.5q-3 -1 -8 -3.5t-17 -14.5t-21.5 -29.5t-17 -52t-6.5 -77.5q0 -15 -3.5 -27.5t-7.5 -18.5l-4 -5q-18 -19 -53 -22h-115q-71 -4 -146 16.5t-131.5 53t-103 66t-70.5 57.5l-25 24q-10 10 -27.5 30t-71.5 91t-106 151t-122.5 211t-130.5 272q-6 16 -6 27t3 16l4 6 q15 19 57 19l274 2q12 -2 23 -6.5t16 -8.5l5 -3q16 -11 24 -32q20 -50 46 -103.5t41 -81.5l16 -29q29 -60 56 -104t48.5 -68.5t41.5 -38.5t34 -14t27 5q2 1 5 5t12 22t13.5 47t9.5 81t0 125q-2 40 -9 73t-14 46l-6 12q-25 34 -85 43q-13 2 5 24q17 19 38 30q53 26 239 24 q82 -1 135 -13q20 -5 33.5 -13.5t20.5 -24t10.5 -32t3.5 -45.5t-1 -55t-2.5 -70.5t-1.5 -82.5q0 -11 -1 -42t-0.5 -48t3.5 -40.5t11.5 -39t22.5 -24.5q8 -2 17 -4t26 11t38 34.5t52 67t68 107.5q60 104 107 225q4 10
  10 17.5t11 10.5l4 3l5 2.5t13 3t20 0.5l288 2 q39 5 64 -2.5t31 -16.5z" />
 <glyph unicode="&#xf18a;" horiz-adv-x="1792" d="M675 252q21 34 11 69t-45 50q-34 14 -73 1t-60 -46q-22 -34 -13 -68.5t43 -50.5t74.5 -2.5t62.5 47.5zM769 373q8 13 3.5 26.5t-17.5 18.5q-14 5 -28.5 -0.5t-21.5 -18.5q-17 -31 13 -45q14 -5 29 0.5t22 18.5zM943 266q-45 -102 -158 -150t-224 -12 q-107 34 -147.5 126.5t6.5 187.5q47 93 151.5 139t210.5 19q111 -29 158.5 -119.5t2.5 -190.5zM1255 426q-9 96 -89 170t-208.5 109t-274.5 21q-223 -23 -369.5 -141.5t-132.5 -264.5q9 -96 89 -170t208.5 -109t274.5 -21q223 23 369.5 141.5t132.5 264.5zM1563 422 q0 -68 -37 -139.5t-109 -137t-168.5 -117.5t-226 -83t-270.5 -31t-275 33.5t-240.5 93t-171.5 151t-65 199.5q0 115 69.5 245t197.5 258q169 169 341.5 236t246.5 -7q65 -64 20 -209q-4 -14 -1 -20t10 -7t14.5 0.5t13.5 3.5l6 2q139 59 246 59t153 -61q45 -63 0 -178 q-2 -13 -4.5 -20t4.5 -12.5t12 -7.5t17 -6q57 -18 103 -47t80 -81.5t34 -116.5zM1489 1046q42 -47 54.5 -108.5t-6.5 -117.5q-8 -23 -29.5 -34t-44.5 -4q-23 8 -34 29.5t-4 44.5q20 63 -24 111t-107 35q-24 -5 -45 8t-25 37q-5 24 8 44.5t3
 7 25.5q60 13 119 -5.5t101 -65.5z M1670 1209q87 -96 112.5 -222.5t-13.5 -241.5q-9 -27 -34 -40t-52 -4t-40 34t-5 52q28 82 10 172t-80 158q-62 69 -148 95.5t-173 8.5q-28 -6 -52 9.5t-30 43.5t9.5 51.5t43.5 29.5q123 26 244 -11.5t208 -134.5z" />
-<glyph unicode="&#xf18b;" horiz-adv-x="1920" d="M805 163q-122 -67 -261 -67q-141 0 -261 67q98 61 167 149t94 191q25 -103 94 -191t167 -149zM453 1176v-344q0 -179 -89.5 -326t-234.5 -217q-129 152 -129 351q0 200 129.5 352t323.5 184zM958 991q-128 -152 -128 -351q0 -201 128 -351q-145 70 -234.5 218t-89.5 328 v341q196 -33 324 -185zM1638 163q-122 -67 -261 -67q-141 0 -261 67q98 61 167 149t94 191q25 -103 94 -191t167 -149zM1286 1176v-344q0 -179 -91 -326t-237 -217v0q133 154 133 351q0 195 -133 351q129 151 328 185zM1920 640q0 -201 -129 -351q-145 70 -234.5 218 t-89.5 328v341q194 -32 323.5 -184t129.5 -352z" />
-<glyph unicode="&#xf18c;" horiz-adv-x="1792" />
-<glyph unicode="&#xf18d;" horiz-adv-x="1792" />
-<glyph unicode="&#xf18e;" horiz-adv-x="1792" />
+<glyph unicode="&#xf18b;" d="M1133 -34q-171 -94 -368 -94q-196 0 -367 94q138 87 235.5 211t131.5 268q35 -144 132.5 -268t235.5 -211zM638 1394v-485q0 -252 -126.5 -459.5t-330.5 -306.5q-181 215 -181 495q0 187 83.5 349.5t229.5 269.5t325 137zM1536 638q0 -280 -181 -495 q-204 99 -330.5 306.5t-126.5 459.5v485q179 -30 325 -137t229.5 -269.5t83.5 -349.5z" />
+<glyph unicode="&#xf18c;" horiz-adv-x="1408" d="M1402 433q-32 -80 -76 -138t-91 -88.5t-99 -46.5t-101.5 -14.5t-96.5 8.5t-86.5 22t-69.5 27.5t-46 22.5l-17 10q-113 -228 -289.5 -359.5t-384.5 -132.5q-19 0 -32 13t-13 32t13 31.5t32 12.5q173 1 322.5 107.5t251.5 294.5q-36 -14 -72 -23t-83 -13t-91 2.5t-93 28.5 t-92 59t-84.5 100t-74.5 146q114 47 214 57t167.5 -7.5t124.5 -56.5t88.5 -77t56.5 -82q53 131 79 291q-7 -1 -18 -2.5t-46.5 -2.5t-69.5 0.5t-81.5 10t-88.5 23t-84 42.5t-75 65t-54.5 94.5t-28.5 127.5q70 28 133.5 36.5t112.5 -1t92 -30t73.5 -50t56 -61t42 -63t27.5 -56 t16 -39.5l4 -16q12 122 12 195q-8 6 -21.5 16t-49 44.5t-63.5 71.5t-54 93t-33 112.5t12 127t70 138.5q73 -25 127.5 -61.5t84.5 -76.5t48 -85t20.5 -89t-0.5 -85.5t-13 -76.5t-19 -62t-17 -42l-7 -15q1 -5 1 -50.5t-1 -71.5q3 7 10 18.5t30.5 43t50.5 58t71 55.5t91.5 44.5 t112 14.5t132.5 -24q-2 -78 -21.5 -141.5t-50 -104.5t-69.5 -71.5t-81.5 -45.5t-84.5 -24t-80 -9.5t-67.5 1t-46.5 4.5l-17 3q-23 -147 -73 -283q6 7 18 18.5t49.5 41t77.5 52.5t99.5 42t117.5 20t129 -
 23.5t137 -77.5z" />
+<glyph unicode="&#xf18d;" horiz-adv-x="1280" d="M1259 283v-66q0 -85 -57.5 -144.5t-138.5 -59.5h-57l-260 -269v269h-529q-81 0 -138.5 59.5t-57.5 144.5v66h1238zM1259 609v-255h-1238v255h1238zM1259 937v-255h-1238v255h1238zM1259 1077v-67h-1238v67q0 84 57.5 143.5t138.5 59.5h846q81 0 138.5 -59.5t57.5 -143.5z " />
+<glyph unicode="&#xf18e;" d="M1152 640q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192h-352q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h352v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198 t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
+<glyph unicode="&#xf190;" d="M1152 736v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-352v-192q0 -14 -9 -23t-23 -9q-12 0 -24 10l-319 319q-9 9 -9 23t9 23l320 320q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5v-192h352q13 0 22.5 -9.5t9.5 -22.5zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198 t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
+<glyph unicode="&#xf191;" d="M1024 960v-640q0 -26 -19 -45t-45 -19q-20 0 -37 12l-448 320q-27 19 -27 52t27 52l448 320q17 12 37 12q26 0 45 -19t19 -45zM1280 160v960q0 13 -9.5 22.5t-22.5 9.5h-960q-13 0 -22.5 -9.5t-9.5 -22.5v-960q0 -13 9.5 -22.5t22.5 -9.5h960q13 0 22.5 9.5t9.5 22.5z M1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
+<glyph unicode="&#xf192;" d="M1024 640q0 -106 -75 -181t-181 -75t-181 75t-75 181t75 181t181 75t181 -75t75 -181zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5 t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
+<glyph unicode="&#xf193;" horiz-adv-x="1664" d="M1023 349l102 -204q-58 -179 -210 -290t-339 -111q-156 0 -288.5 77.5t-210 210t-77.5 288.5q0 181 104.5 330t274.5 211l17 -131q-122 -54 -195 -165.5t-73 -244.5q0 -185 131.5 -316.5t316.5 -131.5q126 0 232.5 65t165 175.5t49.5 236.5zM1571 249l58 -114l-256 -128 q-13 -7 -29 -7q-40 0 -57 35l-239 477h-472q-24 0 -42.5 16.5t-21.5 40.5l-96 779q-2 16 6 42q14 51 57 82.5t97 31.5q66 0 113 -47t47 -113q0 -69 -52 -117.5t-120 -41.5l37 -289h423v-128h-407l16 -128h455q40 0 57 -35l228 -455z" />
+<glyph unicode="&#xf194;" d="M1254 899q16 85 -21 132q-52 65 -187 45q-17 -3 -41 -12.5t-57.5 -30.5t-64.5 -48.5t-59.5 -70t-44.5 -91.5q80 7 113.5 -16t26.5 -99q-5 -52 -52 -143q-43 -78 -71 -99q-44 -32 -87 14q-23 24 -37.5 64.5t-19 73t-10 84t-8.5 71.5q-23 129 -34 164q-12 37 -35.5 69 t-50.5 40q-57 16 -127 -25q-54 -32 -136.5 -106t-122.5 -102v-7q16 -8 25.5 -26t21.5 -20q21 -3 54.5 8.5t58 10.5t41.5 -30q11 -18 18.5 -38.5t15 -48t12.5 -40.5q17 -46 53 -187q36 -146 57 -197q42 -99 103 -125q43 -12 85 -1.5t76 31.5q131 77 250 237 q104 139 172.5 292.5t82.5 226.5zM1536 1120v-960q0 -119 -84.5 -203.5t-203.5 -84.5h-960q-119 0 -203.5 84.5t-84.5 203.5v960q0 119 84.5 203.5t203.5 84.5h960q119 0 203.5 -84.5t84.5 -203.5z" />
+<glyph unicode="&#xf195;" horiz-adv-x="1152" d="M1152 704q0 -191 -94.5 -353t-256.5 -256.5t-353 -94.5h-160q-14 0 -23 9t-9 23v611l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v93l-215 -66q-3 -1 -9 -1q-10 0 -19 6q-13 10 -13 26v128q0 23 23 31l233 71v250q0 14 9 23t23 9h160 q14 0 23 -9t9 -23v-181l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-93l375 116q15 5 28 -5t13 -26v-128q0 -23 -23 -31l-393 -121v-487q188 13 318 151t130 328q0 14 9 23t23 9h160q14 0 23 -9t9 -23z" />
+<glyph unicode="&#xf196;" horiz-adv-x="1408" d="M1152 736v-64q0 -14 -9 -23t-23 -9h-352v-352q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v352h-352q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h352v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-352h352q14 0 23 -9t9 -23zM1280 288v832q0 66 -47 113t-113 47h-832 q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113zM1408 1120v-832q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q119 0 203.5 -84.5t84.5 -203.5z" />
+<glyph unicode="&#xf197;" horiz-adv-x="1792" />
+<glyph unicode="&#xf198;" horiz-adv-x="1792" />
+<glyph unicode="&#xf199;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19a;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19b;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19c;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19d;" horiz-adv-x="1792" />
+<glyph unicode="&#xf19e;" horiz-adv-x="1792" />
 <glyph unicode="&#xf500;" horiz-adv-x="1792" />
 </font>
 </defs></svg> 
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/ea58eab3/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/glyphicons-halflings-regular.svg
----------------------------------------------------------------------
diff --git a/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/glyphicons-halflings-regular.svg b/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/glyphicons-halflings-regular.svg
new file mode 100644
index 0000000..9f3594d
--- /dev/null
+++ b/contrib/views/capacity-scheduler/src/main/resources/ui/app/assets/fonts/glyphicons-halflings-regular.svg
@@ -0,0 +1,229 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
+<svg xmlns="http://www.w3.org/2000/svg">
+<metadata></metadata>
+<defs>
+<font id="glyphicons_halflingsregular" horiz-adv-x="1200" >
+<font-face units-per-em="1200" ascent="960" descent="-240" />
+<missing-glyph horiz-adv-x="500" />
+<glyph />
+<glyph />
+<glyph unicode="&#xd;" />
+<glyph unicode=" " />
+<glyph unicode="*" d="M100 500v200h259l-183 183l141 141l183 -183v259h200v-259l183 183l141 -141l-183 -183h259v-200h-259l183 -183l-141 -141l-183 183v-259h-200v259l-183 -183l-141 141l183 183h-259z" />
+<glyph unicode="+" d="M0 400v300h400v400h300v-400h400v-300h-400v-400h-300v400h-400z" />
+<glyph unicode="&#xa0;" />
+<glyph unicode="&#x2000;" horiz-adv-x="652" />
+<glyph unicode="&#x2001;" horiz-adv-x="1304" />
+<glyph unicode="&#x2002;" horiz-adv-x="652" />
+<glyph unicode="&#x2003;" horiz-adv-x="1304" />
+<glyph unicode="&#x2004;" horiz-adv-x="434" />
+<glyph unicode="&#x2005;" horiz-adv-x="326" />
+<glyph unicode="&#x2006;" horiz-adv-x="217" />
+<glyph unicode="&#x2007;" horiz-adv-x="217" />
+<glyph unicode="&#x2008;" horiz-adv-x="163" />
+<glyph unicode="&#x2009;" horiz-adv-x="260" />
+<glyph unicode="&#x200a;" horiz-adv-x="72" />
+<glyph unicode="&#x202f;" horiz-adv-x="260" />
+<glyph unicode="&#x205f;" horiz-adv-x="326" />
+<glyph unicode="&#x20ac;" d="M100 500l100 100h113q0 47 5 100h-218l100 100h135q37 167 112 257q117 141 297 141q242 0 354 -189q60 -103 66 -209h-181q0 55 -25.5 99t-63.5 68t-75 36.5t-67 12.5q-24 0 -52.5 -10t-62.5 -32t-65.5 -67t-50.5 -107h379l-100 -100h-300q-6 -46 -6 -100h406l-100 -100 h-300q9 -74 33 -132t52.5 -91t62 -54.5t59 -29t46.5 -7.5q29 0 66 13t75 37t63.5 67.5t25.5 96.5h174q-31 -172 -128 -278q-107 -117 -274 -117q-205 0 -324 158q-36 46 -69 131.5t-45 205.5h-217z" />
+<glyph unicode="&#x2212;" d="M200 400h900v300h-900v-300z" />
+<glyph unicode="&#x2601;" d="M-14 494q0 -80 56.5 -137t135.5 -57h750q120 0 205 86t85 208q0 120 -85 206.5t-205 86.5q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5z" />
+<glyph unicode="&#x2709;" d="M0 100l400 400l200 -200l200 200l400 -400h-1200zM0 300v600l300 -300zM0 1100l600 -603l600 603h-1200zM900 600l300 300v-600z" />
+<glyph unicode="&#x270f;" d="M-13 -13l333 112l-223 223zM187 403l214 -214l614 614l-214 214zM887 1103l214 -214l99 92q13 13 13 32.5t-13 33.5l-153 153q-15 13 -33 13t-33 -13z" />
+<glyph unicode="&#xe000;" horiz-adv-x="500" d="M0 0z" />
+<glyph unicode="&#xe001;" d="M0 1200h1200l-500 -550v-550h300v-100h-800v100h300v550z" />
+<glyph unicode="&#xe002;" d="M14 84q18 -55 86 -75.5t147 5.5q65 21 109 69t44 90v606l600 155v-521q-64 16 -138 -7q-79 -26 -122.5 -83t-25.5 -111q17 -55 85.5 -75.5t147.5 4.5q70 23 111.5 63.5t41.5 95.5v881q0 10 -7 15.5t-17 2.5l-752 -193q-10 -3 -17 -12.5t-7 -19.5v-689q-64 17 -138 -7 q-79 -25 -122.5 -82t-25.5 -112z" />
+<glyph unicode="&#xe003;" d="M23 693q0 200 142 342t342 142t342 -142t142 -342q0 -142 -78 -261l300 -300q7 -8 7 -18t-7 -18l-109 -109q-8 -7 -18 -7t-18 7l-300 300q-119 -78 -261 -78q-200 0 -342 142t-142 342zM176 693q0 -136 97 -233t234 -97t233.5 96.5t96.5 233.5t-96.5 233.5t-233.5 96.5 t-234 -97t-97 -233z" />
+<glyph unicode="&#xe005;" d="M100 784q0 64 28 123t73 100.5t104.5 64t119 20.5t120 -38.5t104.5 -104.5q48 69 109.5 105t121.5 38t118.5 -20.5t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-149.5 152.5t-126.5 127.5 t-94 124.5t-33.5 117.5z" />
+<glyph unicode="&#xe006;" d="M-72 800h479l146 400h2l146 -400h472l-382 -278l145 -449l-384 275l-382 -275l146 447zM168 71l2 1z" />
+<glyph unicode="&#xe007;" d="M-72 800h479l146 400h2l146 -400h472l-382 -278l145 -449l-384 275l-382 -275l146 447zM168 71l2 1zM237 700l196 -142l-73 -226l192 140l195 -141l-74 229l193 140h-235l-77 211l-78 -211h-239z" />
+<glyph unicode="&#xe008;" d="M0 0v143l400 257v100q-37 0 -68.5 74.5t-31.5 125.5v200q0 124 88 212t212 88t212 -88t88 -212v-200q0 -51 -31.5 -125.5t-68.5 -74.5v-100l400 -257v-143h-1200z" />
+<glyph unicode="&#xe009;" d="M0 0v1100h1200v-1100h-1200zM100 100h100v100h-100v-100zM100 300h100v100h-100v-100zM100 500h100v100h-100v-100zM100 700h100v100h-100v-100zM100 900h100v100h-100v-100zM300 100h600v400h-600v-400zM300 600h600v400h-600v-400zM1000 100h100v100h-100v-100z M1000 300h100v100h-100v-100zM1000 500h100v100h-100v-100zM1000 700h100v100h-100v-100zM1000 900h100v100h-100v-100z" />
+<glyph unicode="&#xe010;" d="M0 50v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5zM0 650v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5zM600 50v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5zM600 650v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe011;" d="M0 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM0 450v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200 q-21 0 -35.5 14.5t-14.5 35.5zM0 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5 t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 450v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5 v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 450v200q0 
 21 14.5 35.5t35.5 14.5h200 q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe012;" d="M0 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM0 450q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v200q0 21 -14.5 35.5t-35.5 14.5h-200q-21 0 -35.5 -14.5 t-14.5 -35.5v-200zM0 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 50v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5 t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5zM400 450v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5zM400 850v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5 v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe013;" d="M29 454l419 -420l818 820l-212 212l-607 -607l-206 207z" />
+<glyph unicode="&#xe014;" d="M106 318l282 282l-282 282l212 212l282 -282l282 282l212 -212l-282 -282l282 -282l-212 -212l-282 282l-282 -282z" />
+<glyph unicode="&#xe015;" d="M23 693q0 200 142 342t342 142t342 -142t142 -342q0 -142 -78 -261l300 -300q7 -8 7 -18t-7 -18l-109 -109q-8 -7 -18 -7t-18 7l-300 300q-119 -78 -261 -78q-200 0 -342 142t-142 342zM176 693q0 -136 97 -233t234 -97t233.5 96.5t96.5 233.5t-96.5 233.5t-233.5 96.5 t-234 -97t-97 -233zM300 600v200h100v100h200v-100h100v-200h-100v-100h-200v100h-100z" />
+<glyph unicode="&#xe016;" d="M23 694q0 200 142 342t342 142t342 -142t142 -342q0 -141 -78 -262l300 -299q7 -7 7 -18t-7 -18l-109 -109q-8 -8 -18 -8t-18 8l-300 299q-120 -77 -261 -77q-200 0 -342 142t-142 342zM176 694q0 -136 97 -233t234 -97t233.5 97t96.5 233t-96.5 233t-233.5 97t-234 -97 t-97 -233zM300 601h400v200h-400v-200z" />
+<glyph unicode="&#xe017;" d="M23 600q0 183 105 331t272 210v-166q-103 -55 -165 -155t-62 -220q0 -177 125 -302t302 -125t302 125t125 302q0 120 -62 220t-165 155v166q167 -62 272 -210t105 -331q0 -118 -45.5 -224.5t-123 -184t-184 -123t-224.5 -45.5t-224.5 45.5t-184 123t-123 184t-45.5 224.5 zM500 750q0 -21 14.5 -35.5t35.5 -14.5h100q21 0 35.5 14.5t14.5 35.5v400q0 21 -14.5 35.5t-35.5 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-400z" />
+<glyph unicode="&#xe018;" d="M100 1h200v300h-200v-300zM400 1v500h200v-500h-200zM700 1v800h200v-800h-200zM1000 1v1200h200v-1200h-200z" />
+<glyph unicode="&#xe019;" d="M26 601q0 -33 6 -74l151 -38l2 -6q14 -49 38 -93l3 -5l-80 -134q45 -59 105 -105l133 81l5 -3q45 -26 94 -39l5 -2l38 -151q40 -5 74 -5q27 0 74 5l38 151l6 2q46 13 93 39l5 3l134 -81q56 44 104 105l-80 134l3 5q24 44 39 93l1 6l152 38q5 40 5 74q0 28 -5 73l-152 38 l-1 6q-16 51 -39 93l-3 5l80 134q-44 58 -104 105l-134 -81l-5 3q-45 25 -93 39l-6 1l-38 152q-40 5 -74 5q-27 0 -74 -5l-38 -152l-5 -1q-50 -14 -94 -39l-5 -3l-133 81q-59 -47 -105 -105l80 -134l-3 -5q-25 -47 -38 -93l-2 -6l-151 -38q-6 -48 -6 -73zM385 601 q0 88 63 151t152 63t152 -63t63 -151q0 -89 -63 -152t-152 -63t-152 63t-63 152z" />
+<glyph unicode="&#xe020;" d="M100 1025v50q0 10 7.5 17.5t17.5 7.5h275v100q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5v-100h275q10 0 17.5 -7.5t7.5 -17.5v-50q0 -11 -7 -18t-18 -7h-1050q-11 0 -18 7t-7 18zM200 100v800h900v-800q0 -41 -29.5 -71t-70.5 -30h-700q-41 0 -70.5 30 t-29.5 71zM300 100h100v700h-100v-700zM500 100h100v700h-100v-700zM500 1100h300v100h-300v-100zM700 100h100v700h-100v-700zM900 100h100v700h-100v-700z" />
+<glyph unicode="&#xe021;" d="M1 601l656 644l644 -644h-200v-600h-300v400h-300v-400h-300v600h-200z" />
+<glyph unicode="&#xe022;" d="M100 25v1150q0 11 7 18t18 7h475v-500h400v-675q0 -11 -7 -18t-18 -7h-850q-11 0 -18 7t-7 18zM700 800v300l300 -300h-300z" />
+<glyph unicode="&#xe023;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM500 500v400h100 v-300h200v-100h-300z" />
+<glyph unicode="&#xe024;" d="M-100 0l431 1200h209l-21 -300h162l-20 300h208l431 -1200h-538l-41 400h-242l-40 -400h-539zM488 500h224l-27 300h-170z" />
+<glyph unicode="&#xe025;" d="M0 0v400h490l-290 300h200v500h300v-500h200l-290 -300h490v-400h-1100zM813 200h175v100h-175v-100z" />
+<glyph unicode="&#xe026;" d="M1 600q0 122 47.5 233t127.5 191t191 127.5t233 47.5t233 -47.5t191 -127.5t127.5 -191t47.5 -233t-47.5 -233t-127.5 -191t-191 -127.5t-233 -47.5t-233 47.5t-191 127.5t-127.5 191t-47.5 233zM188 600q0 -170 121 -291t291 -121t291 121t121 291t-121 291t-291 121 t-291 -121t-121 -291zM350 600h150v300h200v-300h150l-250 -300z" />
+<glyph unicode="&#xe027;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM350 600l250 300 l250 -300h-150v-300h-200v300h-150z" />
+<glyph unicode="&#xe028;" d="M0 25v475l200 700h800q199 -700 200 -700v-475q0 -11 -7 -18t-18 -7h-1150q-11 0 -18 7t-7 18zM200 500h200l50 -200h300l50 200h200l-97 500h-606z" />
+<glyph unicode="&#xe029;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -172 121.5 -293t292.5 -121t292.5 121t121.5 293q0 171 -121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM500 397v401 l297 -200z" />
+<glyph unicode="&#xe030;" d="M23 600q0 -118 45.5 -224.5t123 -184t184 -123t224.5 -45.5t224.5 45.5t184 123t123 184t45.5 224.5h-150q0 -177 -125 -302t-302 -125t-302 125t-125 302t125 302t302 125q136 0 246 -81l-146 -146h400v400l-145 -145q-157 122 -355 122q-118 0 -224.5 -45.5t-184 -123 t-123 -184t-45.5 -224.5z" />
+<glyph unicode="&#xe031;" d="M23 600q0 118 45.5 224.5t123 184t184 123t224.5 45.5q198 0 355 -122l145 145v-400h-400l147 147q-112 80 -247 80q-177 0 -302 -125t-125 -302h-150zM100 0v400h400l-147 -147q112 -80 247 -80q177 0 302 125t125 302h150q0 -118 -45.5 -224.5t-123 -184t-184 -123 t-224.5 -45.5q-198 0 -355 122z" />
+<glyph unicode="&#xe032;" d="M100 0h1100v1200h-1100v-1200zM200 100v900h900v-900h-900zM300 200v100h100v-100h-100zM300 400v100h100v-100h-100zM300 600v100h100v-100h-100zM300 800v100h100v-100h-100zM500 200h500v100h-500v-100zM500 400v100h500v-100h-500zM500 600v100h500v-100h-500z M500 800v100h500v-100h-500z" />
+<glyph unicode="&#xe033;" d="M0 100v600q0 41 29.5 70.5t70.5 29.5h100v200q0 82 59 141t141 59h300q82 0 141 -59t59 -141v-200h100q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-900q-41 0 -70.5 29.5t-29.5 70.5zM400 800h300v150q0 21 -14.5 35.5t-35.5 14.5h-200 q-21 0 -35.5 -14.5t-14.5 -35.5v-150z" />
+<glyph unicode="&#xe034;" d="M100 0v1100h100v-1100h-100zM300 400q60 60 127.5 84t127.5 17.5t122 -23t119 -30t110 -11t103 42t91 120.5v500q-40 -81 -101.5 -115.5t-127.5 -29.5t-138 25t-139.5 40t-125.5 25t-103 -29.5t-65 -115.5v-500z" />
+<glyph unicode="&#xe035;" d="M0 275q0 -11 7 -18t18 -7h50q11 0 18 7t7 18v300q0 127 70.5 231.5t184.5 161.5t245 57t245 -57t184.5 -161.5t70.5 -231.5v-300q0 -11 7 -18t18 -7h50q11 0 18 7t7 18v300q0 116 -49.5 227t-131 192.5t-192.5 131t-227 49.5t-227 -49.5t-192.5 -131t-131 -192.5 t-49.5 -227v-300zM200 20v460q0 8 6 14t14 6h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14zM800 20v460q0 8 6 14t14 6h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14z" />
+<glyph unicode="&#xe036;" d="M0 400h300l300 -200v800l-300 -200h-300v-400zM688 459l141 141l-141 141l71 71l141 -141l141 141l71 -71l-141 -141l141 -141l-71 -71l-141 141l-141 -141z" />
+<glyph unicode="&#xe037;" d="M0 400h300l300 -200v800l-300 -200h-300v-400zM700 857l69 53q111 -135 111 -310q0 -169 -106 -302l-67 54q86 110 86 248q0 146 -93 257z" />
+<glyph unicode="&#xe038;" d="M0 401v400h300l300 200v-800l-300 200h-300zM702 858l69 53q111 -135 111 -310q0 -170 -106 -303l-67 55q86 110 86 248q0 145 -93 257zM889 951l7 -8q123 -151 123 -344q0 -189 -119 -339l-7 -8l81 -66l6 8q142 178 142 405q0 230 -144 408l-6 8z" />
+<glyph unicode="&#xe039;" d="M0 0h500v500h-200v100h-100v-100h-200v-500zM0 600h100v100h400v100h100v100h-100v300h-500v-600zM100 100v300h300v-300h-300zM100 800v300h300v-300h-300zM200 200v100h100v-100h-100zM200 900h100v100h-100v-100zM500 500v100h300v-300h200v-100h-100v-100h-200v100 h-100v100h100v200h-200zM600 0v100h100v-100h-100zM600 1000h100v-300h200v-300h300v200h-200v100h200v500h-600v-200zM800 800v300h300v-300h-300zM900 0v100h300v-100h-300zM900 900v100h100v-100h-100zM1100 200v100h100v-100h-100z" />
+<glyph unicode="&#xe040;" d="M0 200h100v1000h-100v-1000zM100 0v100h300v-100h-300zM200 200v1000h100v-1000h-100zM500 0v91h100v-91h-100zM500 200v1000h200v-1000h-200zM700 0v91h100v-91h-100zM800 200v1000h100v-1000h-100zM900 0v91h200v-91h-200zM1000 200v1000h200v-1000h-200z" />
+<glyph unicode="&#xe041;" d="M1 700v475q0 10 7.5 17.5t17.5 7.5h474l700 -700l-500 -500zM148 953q0 -42 29 -71q30 -30 71.5 -30t71.5 30q29 29 29 71t-29 71q-30 30 -71.5 30t-71.5 -30q-29 -29 -29 -71z" />
+<glyph unicode="&#xe042;" d="M2 700v475q0 11 7 18t18 7h474l700 -700l-500 -500zM148 953q0 -42 30 -71q29 -30 71 -30t71 30q30 29 30 71t-30 71q-29 30 -71 30t-71 -30q-30 -29 -30 -71zM701 1200h100l700 -700l-500 -500l-50 50l450 450z" />
+<glyph unicode="&#xe043;" d="M100 0v1025l175 175h925v-1000l-100 -100v1000h-750l-100 -100h750v-1000h-900z" />
+<glyph unicode="&#xe044;" d="M200 0l450 444l450 -443v1150q0 20 -14.5 35t-35.5 15h-800q-21 0 -35.5 -15t-14.5 -35v-1151z" />
+<glyph unicode="&#xe045;" d="M0 100v700h200l100 -200h600l100 200h200v-700h-200v200h-800v-200h-200zM253 829l40 -124h592l62 124l-94 346q-2 11 -10 18t-18 7h-450q-10 0 -18 -7t-10 -18zM281 24l38 152q2 10 11.5 17t19.5 7h500q10 0 19.5 -7t11.5 -17l38 -152q2 -10 -3.5 -17t-15.5 -7h-600 q-10 0 -15.5 7t-3.5 17z" />
+<glyph unicode="&#xe046;" d="M0 200q0 -41 29.5 -70.5t70.5 -29.5h1000q41 0 70.5 29.5t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5h-150q-4 8 -11.5 21.5t-33 48t-53 61t-69 48t-83.5 21.5h-200q-41 0 -82 -20.5t-70 -50t-52 -59t-34 -50.5l-12 -20h-150q-41 0 -70.5 -29.5t-29.5 -70.5v-600z M356 500q0 100 72 172t172 72t172 -72t72 -172t-72 -172t-172 -72t-172 72t-72 172zM494 500q0 -44 31 -75t75 -31t75 31t31 75t-31 75t-75 31t-75 -31t-31 -75zM900 700v100h100v-100h-100z" />
+<glyph unicode="&#xe047;" d="M53 0h365v66q-41 0 -72 11t-49 38t1 71l92 234h391l82 -222q16 -45 -5.5 -88.5t-74.5 -43.5v-66h417v66q-34 1 -74 43q-18 19 -33 42t-21 37l-6 13l-385 998h-93l-399 -1006q-24 -48 -52 -75q-12 -12 -33 -25t-36 -20l-15 -7v-66zM416 521l178 457l46 -140l116 -317h-340 z" />
+<glyph unicode="&#xe048;" d="M100 0v89q41 7 70.5 32.5t29.5 65.5v827q0 28 -1 39.5t-5.5 26t-15.5 21t-29 14t-49 14.5v70h471q120 0 213 -88t93 -228q0 -55 -11.5 -101.5t-28 -74t-33.5 -47.5t-28 -28l-12 -7q8 -3 21.5 -9t48 -31.5t60.5 -58t47.5 -91.5t21.5 -129q0 -84 -59 -156.5t-142 -111 t-162 -38.5h-500zM400 200h161q89 0 153 48.5t64 132.5q0 90 -62.5 154.5t-156.5 64.5h-159v-400zM400 700h139q76 0 130 61.5t54 138.5q0 82 -84 130.5t-239 48.5v-379z" />
+<glyph unicode="&#xe049;" d="M200 0v57q77 7 134.5 40.5t65.5 80.5l173 849q10 56 -10 74t-91 37q-6 1 -10.5 2.5t-9.5 2.5v57h425l2 -57q-33 -8 -62 -25.5t-46 -37t-29.5 -38t-17.5 -30.5l-5 -12l-128 -825q-10 -52 14 -82t95 -36v-57h-500z" />
+<glyph unicode="&#xe050;" d="M-75 200h75v800h-75l125 167l125 -167h-75v-800h75l-125 -167zM300 900v300h150h700h150v-300h-50q0 29 -8 48.5t-18.5 30t-33.5 15t-39.5 5.5t-50.5 1h-200v-850l100 -50v-100h-400v100l100 50v850h-200q-34 0 -50.5 -1t-40 -5.5t-33.5 -15t-18.5 -30t-8.5 -48.5h-49z " />
+<glyph unicode="&#xe051;" d="M33 51l167 125v-75h800v75l167 -125l-167 -125v75h-800v-75zM100 901v300h150h700h150v-300h-50q0 29 -8 48.5t-18 30t-33.5 15t-40 5.5t-50.5 1h-200v-650l100 -50v-100h-400v100l100 50v650h-200q-34 0 -50.5 -1t-39.5 -5.5t-33.5 -15t-18.5 -30t-8 -48.5h-50z" />
+<glyph unicode="&#xe052;" d="M0 50q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 350q0 -20 14.5 -35t35.5 -15h800q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-800q-21 0 -35.5 -14.5t-14.5 -35.5 v-100zM0 650q0 -20 14.5 -35t35.5 -15h1000q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1000q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 950q0 -20 14.5 -35t35.5 -15h600q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-600q-21 0 -35.5 -14.5 t-14.5 -35.5v-100z" />
+<glyph unicode="&#xe053;" d="M0 50q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 650q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5 v-100zM200 350q0 -20 14.5 -35t35.5 -15h700q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-700q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM200 950q0 -20 14.5 -35t35.5 -15h700q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-700q-21 0 -35.5 -14.5 t-14.5 -35.5v-100z" />
+<glyph unicode="&#xe054;" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM100 650v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1000q-21 0 -35.5 15 t-14.5 35zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM500 950v100q0 21 14.5 35.5t35.5 14.5h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-600 q-21 0 -35.5 15t-14.5 35z" />
+<glyph unicode="&#xe055;" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM0 350v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15 t-14.5 35zM0 650v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM0 950v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100 q-21 0 -35.5 15t-14.5 35z" />
+<glyph unicode="&#xe056;" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35zM0 350v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15 t-14.5 35zM0 650v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35zM0 950v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15 t-14.5 35zM300 50v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800 q-21 0 -35.5 15t-14.5 35zM300 650v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM300 950v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-10
 0q0 -20 -14.5 -35t-35.5 -15 h-800q-21 0 -35.5 15t-14.5 35z" />
+<glyph unicode="&#xe057;" d="M-101 500v100h201v75l166 -125l-166 -125v75h-201zM300 0h100v1100h-100v-1100zM500 50q0 -20 14.5 -35t35.5 -15h600q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-600q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 350q0 -20 14.5 -35t35.5 -15h300q20 0 35 15t15 35 v100q0 21 -15 35.5t-35 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 650q0 -20 14.5 -35t35.5 -15h500q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 950q0 -20 14.5 -35t35.5 -15h100q20 0 35 15t15 35v100 q0 21 -15 35.5t-35 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-100z" />
+<glyph unicode="&#xe058;" d="M1 50q0 -20 14.5 -35t35.5 -15h600q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-600q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 350q0 -20 14.5 -35t35.5 -15h300q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 650 q0 -20 14.5 -35t35.5 -15h500q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 950q0 -20 14.5 -35t35.5 -15h100q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM801 0v1100h100v-1100 h-100zM934 550l167 -125v75h200v100h-200v75z" />
+<glyph unicode="&#xe059;" d="M0 275v650q0 31 22 53t53 22h750q31 0 53 -22t22 -53v-650q0 -31 -22 -53t-53 -22h-750q-31 0 -53 22t-22 53zM900 600l300 300v-600z" />
+<glyph unicode="&#xe060;" d="M0 44v1012q0 18 13 31t31 13h1112q19 0 31.5 -13t12.5 -31v-1012q0 -18 -12.5 -31t-31.5 -13h-1112q-18 0 -31 13t-13 31zM100 263l247 182l298 -131l-74 156l293 318l236 -288v500h-1000v-737zM208 750q0 56 39 95t95 39t95 -39t39 -95t-39 -95t-95 -39t-95 39t-39 95z " />
+<glyph unicode="&#xe062;" d="M148 745q0 124 60.5 231.5t165 172t226.5 64.5q123 0 227 -63t164.5 -169.5t60.5 -229.5t-73 -272q-73 -114 -166.5 -237t-150.5 -189l-57 -66q-10 9 -27 26t-66.5 70.5t-96 109t-104 135.5t-100.5 155q-63 139 -63 262zM342 772q0 -107 75.5 -182.5t181.5 -75.5 q107 0 182.5 75.5t75.5 182.5t-75.5 182t-182.5 75t-182 -75.5t-75 -181.5z" />
+<glyph unicode="&#xe063;" d="M1 600q0 122 47.5 233t127.5 191t191 127.5t233 47.5t233 -47.5t191 -127.5t127.5 -191t47.5 -233t-47.5 -233t-127.5 -191t-191 -127.5t-233 -47.5t-233 47.5t-191 127.5t-127.5 191t-47.5 233zM173 600q0 -177 125.5 -302t301.5 -125v854q-176 0 -301.5 -125 t-125.5 -302z" />
+<glyph unicode="&#xe064;" d="M117 406q0 94 34 186t88.5 172.5t112 159t115 177t87.5 194.5q21 -71 57.5 -142.5t76 -130.5t83 -118.5t82 -117t70 -116t50 -125.5t18.5 -136q0 -89 -39 -165.5t-102 -126.5t-140 -79.5t-156 -33.5q-114 6 -211.5 53t-161.5 138.5t-64 210.5zM243 414q14 -82 59.5 -136 t136.5 -80l16 98q-7 6 -18 17t-34 48t-33 77q-15 73 -14 143.5t10 122.5l9 51q-92 -110 -119.5 -185t-12.5 -156z" />
+<glyph unicode="&#xe065;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5q366 -6 397 -14l-186 -186h-311q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v125l200 200v-225q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5 t-117.5 282.5zM436 341l161 50l412 412l-114 113l-405 -405zM995 1015l113 -113l113 113l-21 85l-92 28z" />
+<glyph unicode="&#xe066;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h261l2 -80q-133 -32 -218 -120h-145q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5l200 153v-53q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5 zM423 524q30 38 81.5 64t103 35.5t99 14t77.5 3.5l29 -1v-209l360 324l-359 318v-216q-7 0 -19 -1t-48 -8t-69.5 -18.5t-76.5 -37t-76.5 -59t-62 -88t-39.5 -121.5z" />
+<glyph unicode="&#xe067;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q60 0 127 -23l-178 -177h-349q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v69l200 200v-169q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5 t-117.5 282.5zM342 632l283 -284l566 567l-136 137l-430 -431l-147 147z" />
+<glyph unicode="&#xe068;" d="M0 603l300 296v-198h200v200h-200l300 300l295 -300h-195v-200h200v198l300 -296l-300 -300v198h-200v-200h195l-295 -300l-300 300h200v200h-200v-198z" />
+<glyph unicode="&#xe069;" d="M200 50v1000q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-437l500 487v-1100l-500 488v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe070;" d="M0 50v1000q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-437l500 487v-487l500 487v-1100l-500 488v-488l-500 488v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe071;" d="M136 550l564 550v-487l500 487v-1100l-500 488v-488z" />
+<glyph unicode="&#xe072;" d="M200 0l900 550l-900 550v-1100z" />
+<glyph unicode="&#xe073;" d="M200 150q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v800q0 21 -14.5 35.5t-35.5 14.5h-200q-21 0 -35.5 -14.5t-14.5 -35.5v-800zM600 150q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v800q0 21 -14.5 35.5t-35.5 14.5h-200 q-21 0 -35.5 -14.5t-14.5 -35.5v-800z" />
+<glyph unicode="&#xe074;" d="M200 150q0 -20 14.5 -35t35.5 -15h800q21 0 35.5 15t14.5 35v800q0 21 -14.5 35.5t-35.5 14.5h-800q-21 0 -35.5 -14.5t-14.5 -35.5v-800z" />
+<glyph unicode="&#xe075;" d="M0 0v1100l500 -487v487l564 -550l-564 -550v488z" />
+<glyph unicode="&#xe076;" d="M0 0v1100l500 -487v487l500 -487v437q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438l-500 -488v488z" />
+<glyph unicode="&#xe077;" d="M300 0v1100l500 -487v437q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438z" />
+<glyph unicode="&#xe078;" d="M100 250v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5zM100 500h1100l-550 564z" />
+<glyph unicode="&#xe079;" d="M185 599l592 -592l240 240l-353 353l353 353l-240 240z" />
+<glyph unicode="&#xe080;" d="M272 194l353 353l-353 353l241 240l572 -571l21 -22l-1 -1v-1l-592 -591z" />
+<glyph unicode="&#xe081;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -300t-217.5 -218t-299.5 -80t-299.5 80t-217.5 218t-80 300zM300 500h200v-200h200v200h200v200h-200v200h-200v-200h-200v-200z" />
+<glyph unicode="&#xe082;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -300t-217.5 -218t-299.5 -80t-299.5 80t-217.5 218t-80 300zM300 500h600v200h-600v-200z" />
+<glyph unicode="&#xe083;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -300t-217.5 -218t-299.5 -80t-299.5 80t-217.5 218t-80 300zM246 459l213 -213l141 142l141 -142l213 213l-142 141l142 141l-213 212l-141 -141l-141 142l-212 -213l141 -141z" />
+<glyph unicode="&#xe084;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM270 551l276 -277l411 411l-175 174l-236 -236l-102 102z" />
+<glyph unicode="&#xe085;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -300t-217.5 -218t-299.5 -80t-299.5 80t-217.5 218t-80 300zM363 700h144q4 0 11.5 -1t11 -1t6.5 3t3 9t1 11t3.5 8.5t3.5 6t5.5 4t6.5 2.5t9 1.5t9 0.5h11.5h12.5q19 0 30 -10t11 -26 q0 -22 -4 -28t-27 -22q-5 -1 -12.5 -3t-27 -13.5t-34 -27t-26.5 -46t-11 -68.5h200q5 3 14 8t31.5 25.5t39.5 45.5t31 69t14 94q0 51 -17.5 89t-42 58t-58.5 32t-58.5 15t-51.5 3q-105 0 -172 -56t-67 -183zM500 300h200v100h-200v-100z" />
+<glyph unicode="&#xe086;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -300t-217.5 -218t-299.5 -80t-299.5 80t-217.5 218t-80 300zM400 300h400v100h-100v300h-300v-100h100v-200h-100v-100zM500 800h200v100h-200v-100z" />
+<glyph unicode="&#xe087;" d="M0 500v200h194q15 60 36 104.5t55.5 86t88 69t126.5 40.5v200h200v-200q54 -20 113 -60t112.5 -105.5t71.5 -134.5h203v-200h-203q-25 -102 -116.5 -186t-180.5 -117v-197h-200v197q-140 27 -208 102.5t-98 200.5h-194zM290 500q24 -73 79.5 -127.5t130.5 -78.5v206h200 v-206q149 48 201 206h-201v200h200q-25 74 -76 127.5t-124 76.5v-204h-200v203q-75 -24 -130 -77.5t-79 -125.5h209v-200h-210z" />
+<glyph unicode="&#xe088;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM356 465l135 135 l-135 135l109 109l135 -135l135 135l109 -109l-135 -135l135 -135l-109 -109l-135 135l-135 -135z" />
+<glyph unicode="&#xe089;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM322 537l141 141 l87 -87l204 205l142 -142l-346 -345z" />
+<glyph unicode="&#xe090;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -115 62 -215l568 567q-100 62 -216 62q-171 0 -292.5 -121.5t-121.5 -292.5zM391 245q97 -59 209 -59q171 0 292.5 121.5t121.5 292.5 q0 112 -59 209z" />
+<glyph unicode="&#xe091;" d="M0 547l600 453v-300h600v-300h-600v-301z" />
+<glyph unicode="&#xe092;" d="M0 400v300h600v300l600 -453l-600 -448v301h-600z" />
+<glyph unicode="&#xe093;" d="M204 600l450 600l444 -600h-298v-600h-300v600h-296z" />
+<glyph unicode="&#xe094;" d="M104 600h296v600h300v-600h298l-449 -600z" />
+<glyph unicode="&#xe095;" d="M0 200q6 132 41 238.5t103.5 193t184 138t271.5 59.5v271l600 -453l-600 -448v301q-95 -2 -183 -20t-170 -52t-147 -92.5t-100 -135.5z" />
+<glyph unicode="&#xe096;" d="M0 0v400l129 -129l294 294l142 -142l-294 -294l129 -129h-400zM635 777l142 -142l294 294l129 -129v400h-400l129 -129z" />
+<glyph unicode="&#xe097;" d="M34 176l295 295l-129 129h400v-400l-129 130l-295 -295zM600 600v400l129 -129l295 295l142 -141l-295 -295l129 -130h-400z" />
+<glyph unicode="&#xe101;" d="M23 600q0 118 45.5 224.5t123 184t184 123t224.5 45.5t224.5 -45.5t184 -123t123 -184t45.5 -224.5t-45.5 -224.5t-123 -184t-184 -123t-224.5 -45.5t-224.5 45.5t-184 123t-123 184t-45.5 224.5zM456 851l58 -302q4 -20 21.5 -34.5t37.5 -14.5h54q20 0 37.5 14.5 t21.5 34.5l58 302q4 20 -8 34.5t-33 14.5h-207q-20 0 -32 -14.5t-8 -34.5zM500 300h200v100h-200v-100z" />
+<glyph unicode="&#xe102;" d="M0 800h100v-200h400v300h200v-300h400v200h100v100h-111v6t-1 15t-3 18l-34 172q-11 39 -41.5 63t-69.5 24q-32 0 -61 -17l-239 -144q-22 -13 -40 -35q-19 24 -40 36l-238 144q-33 18 -62 18q-39 0 -69.5 -23t-40.5 -61l-35 -177q-2 -8 -3 -18t-1 -15v-6h-111v-100z M100 0h400v400h-400v-400zM200 900q-3 0 14 48t35 96l18 47l214 -191h-281zM700 0v400h400v-400h-400zM731 900l202 197q5 -12 12 -32.5t23 -64t25 -72t7 -28.5h-269z" />
+<glyph unicode="&#xe103;" d="M0 -22v143l216 193q-9 53 -13 83t-5.5 94t9 113t38.5 114t74 124q47 60 99.5 102.5t103 68t127.5 48t145.5 37.5t184.5 43.5t220 58.5q0 -189 -22 -343t-59 -258t-89 -181.5t-108.5 -120t-122 -68t-125.5 -30t-121.5 -1.5t-107.5 12.5t-87.5 17t-56.5 7.5l-99 -55z M238.5 300.5q19.5 -6.5 86.5 76.5q55 66 367 234q70 38 118.5 69.5t102 79t99 111.5t86.5 148q22 50 24 60t-6 19q-7 5 -17 5t-26.5 -14.5t-33.5 -39.5q-35 -51 -113.5 -108.5t-139.5 -89.5l-61 -32q-369 -197 -458 -401q-48 -111 -28.5 -117.5z" />
+<glyph unicode="&#xe104;" d="M111 408q0 -33 5 -63q9 -56 44 -119.5t105 -108.5q31 -21 64 -16t62 23.5t57 49.5t48 61.5t35 60.5q32 66 39 184.5t-13 157.5q79 -80 122 -164t26 -184q-5 -33 -20.5 -69.5t-37.5 -80.5q-10 -19 -14.5 -29t-12 -26t-9 -23.5t-3 -19t2.5 -15.5t11 -9.5t19.5 -5t30.5 2.5 t42 8q57 20 91 34t87.5 44.5t87 64t65.5 88.5t47 122q38 172 -44.5 341.5t-246.5 278.5q22 -44 43 -129q39 -159 -32 -154q-15 2 -33 9q-79 33 -120.5 100t-44 175.5t48.5 257.5q-13 -8 -34 -23.5t-72.5 -66.5t-88.5 -105.5t-60 -138t-8 -166.5q2 -12 8 -41.5t8 -43t6 -39.5 t3.5 -39.5t-1 -33.5t-6 -31.5t-13.5 -24t-21 -20.5t-31 -12q-38 -10 -67 13t-40.5 61.5t-15 81.5t10.5 75q-52 -46 -83.5 -101t-39 -107t-7.5 -85z" />
+<glyph unicode="&#xe105;" d="M-61 600l26 40q6 10 20 30t49 63.5t74.5 85.5t97 90t116.5 83.5t132.5 59t145.5 23.5t145.5 -23.5t132.5 -59t116.5 -83.5t97 -90t74.5 -85.5t49 -63.5t20 -30l26 -40l-26 -40q-6 -10 -20 -30t-49 -63.5t-74.5 -85.5t-97 -90t-116.5 -83.5t-132.5 -59t-145.5 -23.5 t-145.5 23.5t-132.5 59t-116.5 83.5t-97 90t-74.5 85.5t-49 63.5t-20 30zM120 600q7 -10 40.5 -58t56 -78.5t68 -77.5t87.5 -75t103 -49.5t125 -21.5t123.5 20t100.5 45.5t85.5 71.5t66.5 75.5t58 81.5t47 66q-1 1 -28.5 37.5t-42 55t-43.5 53t-57.5 63.5t-58.5 54 q49 -74 49 -163q0 -124 -88 -212t-212 -88t-212 88t-88 212q0 85 46 158q-102 -87 -226 -258zM377 656q49 -124 154 -191l105 105q-37 24 -75 72t-57 84l-20 36z" />
+<glyph unicode="&#xe106;" d="M-61 600l26 40q6 10 20 30t49 63.5t74.5 85.5t97 90t116.5 83.5t132.5 59t145.5 23.5q61 0 121 -17l37 142h148l-314 -1200h-148l37 143q-82 21 -165 71.5t-140 102t-109.5 112t-72 88.5t-29.5 43zM120 600q210 -282 393 -336l37 141q-107 18 -178.5 101.5t-71.5 193.5 q0 85 46 158q-102 -87 -226 -258zM377 656q49 -124 154 -191l47 47l23 87q-30 28 -59 69t-44 68l-14 26zM780 161l38 145q22 15 44.5 34t46 44t40.5 44t41 50.5t33.5 43.5t33 44t24.5 34q-97 127 -140 175l39 146q67 -54 131.5 -125.5t87.5 -103.5t36 -52l26 -40l-26 -40 q-7 -12 -25.5 -38t-63.5 -79.5t-95.5 -102.5t-124 -100t-146.5 -79z" />
+<glyph unicode="&#xe107;" d="M-97.5 34q13.5 -34 50.5 -34h1294q37 0 50.5 35.5t-7.5 67.5l-642 1056q-20 33 -48 36t-48 -29l-642 -1066q-21 -32 -7.5 -66zM155 200l445 723l445 -723h-345v100h-200v-100h-345zM500 600l100 -300l100 300v100h-200v-100z" />
+<glyph unicode="&#xe108;" d="M100 262v41q0 20 11 44.5t26 38.5l363 325v339q0 62 44 106t106 44t106 -44t44 -106v-339l363 -325q15 -14 26 -38.5t11 -44.5v-41q0 -20 -12 -26.5t-29 5.5l-359 249v-263q100 -91 100 -113v-64q0 -21 -13 -29t-32 1l-94 78h-222l-94 -78q-19 -9 -32 -1t-13 29v64 q0 22 100 113v263l-359 -249q-17 -12 -29 -5.5t-12 26.5z" />
+<glyph unicode="&#xe109;" d="M0 50q0 -20 14.5 -35t35.5 -15h1000q21 0 35.5 15t14.5 35v750h-1100v-750zM0 900h1100v150q0 21 -14.5 35.5t-35.5 14.5h-150v100h-100v-100h-500v100h-100v-100h-150q-21 0 -35.5 -14.5t-14.5 -35.5v-150zM100 100v100h100v-100h-100zM100 300v100h100v-100h-100z M100 500v100h100v-100h-100zM300 100v100h100v-100h-100zM300 300v100h100v-100h-100zM300 500v100h100v-100h-100zM500 100v100h100v-100h-100zM500 300v100h100v-100h-100zM500 500v100h100v-100h-100zM700 100v100h100v-100h-100zM700 300v100h100v-100h-100zM700 500 v100h100v-100h-100zM900 100v100h100v-100h-100zM900 300v100h100v-100h-100zM900 500v100h100v-100h-100z" />
+<glyph unicode="&#xe110;" d="M0 200v200h259l600 600h241v198l300 -295l-300 -300v197h-159l-600 -600h-341zM0 800h259l122 -122l141 142l-181 180h-341v-200zM678 381l141 142l122 -123h159v198l300 -295l-300 -300v197h-241z" />
+<glyph unicode="&#xe111;" d="M0 400v600q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-596l-304 -300v300h-100q-41 0 -70.5 29.5t-29.5 70.5z" />
+<glyph unicode="&#xe112;" d="M100 600v200h300v-250q0 -113 6 -145q17 -92 102 -117q39 -11 92 -11q37 0 66.5 5.5t50 15.5t36 24t24 31.5t14 37.5t7 42t2.5 45t0 47v25v250h300v-200q0 -42 -3 -83t-15 -104t-31.5 -116t-58 -109.5t-89 -96.5t-129 -65.5t-174.5 -25.5t-174.5 25.5t-129 65.5t-89 96.5 t-58 109.5t-31.5 116t-15 104t-3 83zM100 900v300h300v-300h-300zM800 900v300h300v-300h-300z" />
+<glyph unicode="&#xe113;" d="M-30 411l227 -227l352 353l353 -353l226 227l-578 579z" />
+<glyph unicode="&#xe114;" d="M70 797l580 -579l578 579l-226 227l-353 -353l-352 353z" />
+<glyph unicode="&#xe115;" d="M-198 700l299 283l300 -283h-203v-400h385l215 -200h-800v600h-196zM402 1000l215 -200h381v-400h-198l299 -283l299 283h-200v600h-796z" />
+<glyph unicode="&#xe116;" d="M18 939q-5 24 10 42q14 19 39 19h896l38 162q5 17 18.5 27.5t30.5 10.5h94q20 0 35 -14.5t15 -35.5t-15 -35.5t-35 -14.5h-54l-201 -961q-2 -4 -6 -10.5t-19 -17.5t-33 -11h-31v-50q0 -20 -14.5 -35t-35.5 -15t-35.5 15t-14.5 35v50h-300v-50q0 -20 -14.5 -35t-35.5 -15 t-35.5 15t-14.5 35v50h-50q-21 0 -35.5 15t-14.5 35q0 21 14.5 35.5t35.5 14.5h535l48 200h-633q-32 0 -54.5 21t-27.5 43z" />
+<glyph unicode="&#xe117;" d="M0 0v800h1200v-800h-1200zM0 900v100h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500v-100h-1200z" />
+<glyph unicode="&#xe118;" d="M1 0l300 700h1200l-300 -700h-1200zM1 400v600h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500v-200h-1000z" />
+<glyph unicode="&#xe119;" d="M302 300h198v600h-198l298 300l298 -300h-198v-600h198l-298 -300z" />
+<glyph unicode="&#xe120;" d="M0 600l300 298v-198h600v198l300 -298l-300 -297v197h-600v-197z" />
+<glyph unicode="&#xe121;" d="M0 100v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM31 400l172 739q5 22 23 41.5t38 19.5h672q19 0 37.5 -22.5t23.5 -45.5l172 -732h-1138zM800 100h100v100h-100v-100z M1000 100h100v100h-100v-100z" />
+<glyph unicode="&#xe122;" d="M-101 600v50q0 24 25 49t50 38l25 13v-250l-11 5.5t-24 14t-30 21.5t-24 27.5t-11 31.5zM99 500v250v5q0 13 0.5 18.5t2.5 13t8 10.5t15 3h200l675 250v-850l-675 200h-38l47 -276q2 -12 -3 -17.5t-11 -6t-21 -0.5h-8h-83q-20 0 -34.5 14t-18.5 35q-56 337 -56 351z M1100 200v850q0 21 14.5 35.5t35.5 14.5q20 0 35 -14.5t15 -35.5v-850q0 -20 -15 -35t-35 -15q-21 0 -35.5 15t-14.5 35z" />
+<glyph unicode="&#xe123;" d="M74 350q0 21 13.5 35.5t33.5 14.5h17l118 173l63 327q15 77 76 140t144 83l-18 32q-6 19 3 32t29 13h94q20 0 29 -10.5t3 -29.5l-18 -37q83 -19 144 -82.5t76 -140.5l63 -327l118 -173h17q20 0 33.5 -14.5t13.5 -35.5q0 -20 -13 -40t-31 -27q-22 -9 -63 -23t-167.5 -37 t-251.5 -23t-245.5 20.5t-178.5 41.5l-58 20q-18 7 -31 27.5t-13 40.5zM497 110q12 -49 40 -79.5t63 -30.5t63 30.5t39 79.5q-48 -6 -102 -6t-103 6z" />
+<glyph unicode="&#xe124;" d="M21 445l233 -45l-78 -224l224 78l45 -233l155 179l155 -179l45 233l224 -78l-78 224l234 45l-180 155l180 156l-234 44l78 225l-224 -78l-45 233l-155 -180l-155 180l-45 -233l-224 78l78 -225l-233 -44l179 -156z" />
+<glyph unicode="&#xe125;" d="M0 200h200v600h-200v-600zM300 275q0 -75 100 -75h61q123 -100 139 -100h250q46 0 83 57l238 344q29 31 29 74v100q0 44 -30.5 84.5t-69.5 40.5h-328q28 118 28 125v150q0 44 -30.5 84.5t-69.5 40.5h-50q-27 0 -51 -20t-38 -48l-96 -198l-145 -196q-20 -26 -20 -63v-400z M400 300v375l150 212l100 213h50v-175l-50 -225h450v-125l-250 -375h-214l-136 100h-100z" />
+<glyph unicode="&#xe126;" d="M0 400v600h200v-600h-200zM300 525v400q0 75 100 75h61q123 100 139 100h250q46 0 83 -57l238 -344q29 -31 29 -74v-100q0 -44 -30.5 -84.5t-69.5 -40.5h-328q28 -118 28 -125v-150q0 -44 -30.5 -84.5t-69.5 -40.5h-50q-27 0 -51 20t-38 48l-96 198l-145 196 q-20 26 -20 63zM400 525l150 -212l100 -213h50v175l-50 225h450v125l-250 375h-214l-136 -100h-100v-375z" />
+<glyph unicode="&#xe127;" d="M8 200v600h200v-600h-200zM308 275v525q0 17 14 35.5t28 28.5l14 9l362 230q14 6 25 6q17 0 29 -12l109 -112q14 -14 14 -34q0 -18 -11 -32l-85 -121h302q85 0 138.5 -38t53.5 -110t-54.5 -111t-138.5 -39h-107l-130 -339q-7 -22 -20.5 -41.5t-28.5 -19.5h-341 q-7 0 -90 81t-83 94zM408 289l100 -89h293l131 339q6 21 19.5 41t28.5 20h203q16 0 25 15t9 36q0 20 -9 34.5t-25 14.5h-457h-6.5h-7.5t-6.5 0.5t-6 1t-5 1.5t-5.5 2.5t-4 4t-4 5.5q-5 12 -5 20q0 14 10 27l147 183l-86 83l-339 -236v-503z" />
+<glyph unicode="&#xe128;" d="M-101 651q0 72 54 110t139 37h302l-85 121q-11 16 -11 32q0 21 14 34l109 113q13 12 29 12q11 0 25 -6l365 -230q7 -4 16.5 -10.5t26 -26t16.5 -36.5v-526q0 -13 -85.5 -93.5t-93.5 -80.5h-342q-15 0 -28.5 20t-19.5 41l-131 339h-106q-84 0 -139 39t-55 111zM-1 601h222 q15 0 28.5 -20.5t19.5 -40.5l131 -339h293l106 89v502l-342 237l-87 -83l145 -184q10 -11 10 -26q0 -11 -5 -20q-1 -3 -3.5 -5.5l-4 -4t-5 -2.5t-5.5 -1.5t-6.5 -1t-6.5 -0.5h-7.5h-6.5h-476v-100zM999 201v600h200v-600h-200z" />
+<glyph unicode="&#xe129;" d="M97 719l230 -363q4 -6 10.5 -15.5t26 -25t36.5 -15.5h525q13 0 94 83t81 90v342q0 15 -20 28.5t-41 19.5l-339 131v106q0 84 -39 139t-111 55t-110 -53.5t-38 -138.5v-302l-121 84q-15 12 -33.5 11.5t-32.5 -13.5l-112 -110q-22 -22 -6 -53zM172 739l83 86l183 -146 q22 -18 47 -5q3 1 5.5 3.5l4 4t2.5 5t1.5 5.5t1 6.5t0.5 6v7.5v7v456q0 22 25 31t50 -0.5t25 -30.5v-202q0 -16 20 -29.5t41 -19.5l339 -130v-294l-89 -100h-503zM400 0v200h600v-200h-600z" />
+<glyph unicode="&#xe130;" d="M1 585q-15 -31 7 -53l112 -110q13 -13 32 -13.5t34 10.5l121 85l-1 -302q0 -84 38.5 -138t110.5 -54t111 55t39 139v106l339 131q20 6 40.5 19.5t20.5 28.5v342q0 7 -81 90t-94 83h-525q-17 0 -35.5 -14t-28.5 -28l-10 -15zM76 565l237 339h503l89 -100v-294l-340 -130 q-20 -6 -40 -20t-20 -29v-202q0 -22 -25 -31t-50 0t-25 31v456v14.5t-1.5 11.5t-5 12t-9.5 7q-24 13 -46 -5l-184 -146zM305 1104v200h600v-200h-600z" />
+<glyph unicode="&#xe131;" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q162 0 299.5 -80t217.5 -218t80 -300t-80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM300 500h300l-2 -194l402 294l-402 298v-197h-298v-201z" />
+<glyph unicode="&#xe132;" d="M0 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t231.5 47.5q122 0 232.5 -47.5t190.5 -127.5t127.5 -190.5t47.5 -232.5q0 -162 -80 -299.5t-218 -217.5t-300 -80t-299.5 80t-217.5 217.5t-80 299.5zM200 600l400 -294v194h302v201h-300v197z" />
+<glyph unicode="&#xe133;" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q121 0 231.5 -47.5t190.5 -127.5t127.5 -190.5t47.5 -232.5q0 -162 -80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM300 600h200v-300h200v300h200l-300 400z" />
+<glyph unicode="&#xe134;" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q121 0 231.5 -47.5t190.5 -127.5t127.5 -190.5t47.5 -232.5q0 -162 -80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM300 600l300 -400l300 400h-200v300h-200v-300h-200z" />
+<glyph unicode="&#xe135;" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q121 0 231.5 -47.5t190.5 -127.5t127.5 -190.5t47.5 -232.5q0 -162 -80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM254 780q-8 -34 5.5 -93t7.5 -87q0 -9 17 -44t16 -60q12 0 23 -5.5 t23 -15t20 -13.5q20 -10 108 -42q22 -8 53 -31.5t59.5 -38.5t57.5 -11q8 -18 -15 -55.5t-20 -57.5q12 -21 22.5 -34.5t28 -27t36.5 -17.5q0 -6 -3 -15.5t-3.5 -14.5t4.5 -17q101 -2 221 111q31 30 47 48t34 49t21 62q-14 9 -37.5 9.5t-35.5 7.5q-14 7 -49 15t-52 19 q-9 0 -39.5 -0.5t-46.5 -1.5t-39 -6.5t-39 -16.5q-50 -35 -66 -12q-4 2 -3.5 25.5t0.5 25.5q-6 13 -26.5 17t-24.5 7q2 22 -2 41t-16.5 28t-38.5 -20q-23 -25 -42 4q-19 28 -8 58q8 16 22 22q6 -1 26 -1.5t33.5 -4.5t19.5 -13q12 -19 32 -37.5t34 -27.5l14 -8q0 3 9.5 39.5 t5.5 57.5q-4 23 14.5 44.5t22.5 31.5q5 14 10 35t8.5 31t15.5 22.5t34 21.5q-6 18 10 37q8 0 23.5 -1.5t24.5 -1.5t20.5 4.5t20.5 15.5q-10 23 -30.5 42.5t-38 30t-49 26.5t-43.5 23q11 41 1 44q31 -13 58.5 -14.5t39.5 3.5l11 4q6 3
 6 -17 53.5t-64 28.5t-56 23 q-19 -3 -37 0q-15 -12 -36.5 -21t-34.5 -12t-44 -8t-39 -6q-15 -3 -46 0t-45 -3q-20 -6 -51.5 -25.5t-34.5 -34.5q-3 -11 6.5 -22.5t8.5 -18.5q-3 -34 -27.5 -91t-29.5 -79zM518 915q3 12 16 30.5t16 25.5q10 -10 18.5 -10t14 6t14.5 14.5t16 12.5q0 -18 8 -42.5t16.5 -44 t9.5 -23.5q-6 1 -39 5t-53.5 10t-36.5 16z" />
+<glyph unicode="&#xe136;" d="M0 164.5q0 21.5 15 37.5l600 599q-33 101 6 201.5t135 154.5q164 92 306 -9l-259 -138l145 -232l251 126q13 -175 -151 -267q-123 -70 -253 -23l-596 -596q-15 -16 -36.5 -16t-36.5 16l-111 110q-15 15 -15 36.5z" />
+<glyph unicode="&#xe137;" horiz-adv-x="1220" d="M0 196v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM0 596v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5zM0 996v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM600 596h500v100h-500v-100zM800 196h300v100h-300v-100zM900 996h200v100h-200v-100z" />
+<glyph unicode="&#xe138;" d="M100 1100v100h1000v-100h-1000zM150 1000h900l-350 -500v-300l-200 -200v500z" />
+<glyph unicode="&#xe139;" d="M0 200v200h1200v-200q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM0 500v400q0 41 29.5 70.5t70.5 29.5h300v100q0 41 29.5 70.5t70.5 29.5h200q41 0 70.5 -29.5t29.5 -70.5v-100h300q41 0 70.5 -29.5t29.5 -70.5v-400h-500v100h-200v-100h-500z M500 1000h200v100h-200v-100z" />
+<glyph unicode="&#xe140;" d="M0 0v400l129 -129l200 200l142 -142l-200 -200l129 -129h-400zM0 800l129 129l200 -200l142 142l-200 200l129 129h-400v-400zM729 329l142 142l200 -200l129 129v-400h-400l129 129zM729 871l200 200l-129 129h400v-400l-129 129l-200 -200z" />
+<glyph unicode="&#xe141;" d="M0 596q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM182 596q0 -172 121.5 -293t292.5 -121t292.5 121t121.5 293q0 171 -121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM291 655 q0 23 15.5 38.5t38.5 15.5t39 -16t16 -38q0 -23 -16 -39t-39 -16q-22 0 -38 16t-16 39zM400 850q0 22 16 38.5t39 16.5q22 0 38 -16t16 -39t-16 -39t-38 -16q-23 0 -39 16.5t-16 38.5zM513 609q0 32 21 56.5t52 29.5l122 126l1 1q-9 14 -9 28q0 22 16 38.5t39 16.5 q22 0 38 -16t16 -39t-16 -39t-38 -16q-16 0 -29 10l-55 -145q17 -22 17 -51q0 -36 -25.5 -61.5t-61.5 -25.5q-37 0 -62.5 25.5t-25.5 61.5zM800 655q0 22 16 38t39 16t38.5 -15.5t15.5 -38.5t-16 -39t-38 -16q-23 0 -39 16t-16 39z" />
+<glyph unicode="&#xe142;" d="M-40 375q-13 -95 35 -173q35 -57 94 -89t129 -32q63 0 119 28q33 16 65 40.5t52.5 45.5t59.5 64q40 44 57 61l394 394q35 35 47 84t-3 96q-27 87 -117 104q-20 2 -29 2q-46 0 -79.5 -17t-67.5 -51l-388 -396l-7 -7l69 -67l377 373q20 22 39 38q23 23 50 23q38 0 53 -36 q16 -39 -20 -75l-547 -547q-52 -52 -125 -52q-55 0 -100 33t-54 96q-5 35 2.5 66t31.5 63t42 50t56 54q24 21 44 41l348 348q52 52 82.5 79.5t84 54t107.5 26.5q25 0 48 -4q95 -17 154 -94.5t51 -175.5q-7 -101 -98 -192l-252 -249l-253 -256l7 -7l69 -60l517 511 q67 67 95 157t11 183q-16 87 -67 154t-130 103q-69 33 -152 33q-107 0 -197 -55q-40 -24 -111 -95l-512 -512q-68 -68 -81 -163z" />
+<glyph unicode="&#xe143;" d="M79 784q0 131 99 229.5t230 98.5q144 0 242 -129q103 129 245 129q130 0 227 -98.5t97 -229.5q0 -46 -17.5 -91t-61 -99t-77 -89.5t-104.5 -105.5q-197 -191 -293 -322l-17 -23l-16 23q-43 58 -100 122.5t-92 99.5t-101 100l-84.5 84.5t-68 74t-60 78t-33.5 70.5t-15 78z M250 784q0 -27 30.5 -70t61.5 -75.5t95 -94.5l22 -22q93 -90 190 -201q82 92 195 203l12 12q64 62 97.5 97t64.5 79t31 72q0 71 -48 119.5t-106 48.5q-73 0 -131 -83l-118 -171l-114 174q-51 80 -124 80q-59 0 -108.5 -49.5t-49.5 -118.5z" />
+<glyph unicode="&#xe144;" d="M57 353q0 -94 66 -160l141 -141q66 -66 159 -66q95 0 159 66l283 283q66 66 66 159t-66 159l-141 141q-12 12 -19 17l-105 -105l212 -212l-389 -389l-247 248l95 95l-18 18q-46 45 -75 101l-55 -55q-66 -66 -66 -159zM269 706q0 -93 66 -159l141 -141l19 -17l105 105 l-212 212l389 389l247 -247l-95 -96l18 -18q46 -46 77 -99l29 29q35 35 62.5 88t27.5 96q0 93 -66 159l-141 141q-66 66 -159 66q-95 0 -159 -66l-283 -283q-66 -64 -66 -159z" />
+<glyph unicode="&#xe145;" d="M200 100v953q0 21 30 46t81 48t129 38t163 15t162 -15t127 -38t79 -48t29 -46v-953q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-41 0 -70.5 29.5t-29.5 70.5zM300 300h600v700h-600v-700zM496 150q0 -43 30.5 -73.5t73.5 -30.5t73.5 30.5t30.5 73.5t-30.5 73.5t-73.5 30.5 t-73.5 -30.5t-30.5 -73.5z" />
+<glyph unicode="&#xe146;" d="M0 0l303 380l207 208l-210 212h300l267 279l-35 36q-15 14 -15 35t15 35q14 15 35 15t35 -15l283 -282q15 -15 15 -36t-15 -35q-14 -15 -35 -15t-35 15l-36 35l-279 -267v-300l-212 210l-208 -207z" />
+<glyph unicode="&#xe148;" d="M295 433h139q5 -77 48.5 -126.5t117.5 -64.5v335l-27 7q-46 14 -79 26.5t-72 36t-62.5 52t-40 72.5t-16.5 99q0 92 44 159.5t109 101t144 40.5v78h100v-79q38 -4 72.5 -13.5t75.5 -31.5t71 -53.5t51.5 -84t24.5 -118.5h-159q-8 72 -35 109.5t-101 50.5v-307l64 -14 q34 -7 64 -16.5t70 -31.5t67.5 -52t47.5 -80.5t20 -112.5q0 -139 -89 -224t-244 -96v-77h-100v78q-152 17 -237 104q-40 40 -52.5 93.5t-15.5 139.5zM466 889q0 -29 8 -51t16.5 -34t29.5 -22.5t31 -13.5t38 -10q7 -2 11 -3v274q-61 -8 -97.5 -37.5t-36.5 -102.5zM700 237 q170 18 170 151q0 64 -44 99.5t-126 60.5v-311z" />
+<glyph unicode="&#xe149;" d="M100 600v100h166q-24 49 -44 104q-10 26 -14.5 55.5t-3 72.5t25 90t68.5 87q97 88 263 88q129 0 230 -89t101 -208h-153q0 52 -34 89.5t-74 51.5t-76 14q-37 0 -79 -14.5t-62 -35.5q-41 -44 -41 -101q0 -11 2.5 -24.5t5.5 -24t9.5 -26.5t10.5 -25t14 -27.5t14 -25.5 t15.5 -27t13.5 -24h242v-100h-197q8 -50 -2.5 -115t-31.5 -94q-41 -59 -99 -113q35 11 84 18t70 7q32 1 102 -16t104 -17q76 0 136 30l50 -147q-41 -25 -80.5 -36.5t-59 -13t-61.5 -1.5q-23 0 -128 33t-155 29q-39 -4 -82 -17t-66 -25l-24 -11l-55 145l16.5 11t15.5 10 t13.5 9.5t14.5 12t14.5 14t17.5 18.5q48 55 54 126.5t-30 142.5h-221z" />
+<glyph unicode="&#xe150;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM602 900l298 300l298 -300h-198v-900h-200v900h-198z" />
+<glyph unicode="&#xe151;" d="M2 300h198v900h200v-900h198l-298 -300zM700 0v200h100v-100h200v-100h-300zM700 400v100h300v-200h-99v-100h-100v100h99v100h-200zM700 700v500h300v-500h-100v100h-100v-100h-100zM801 900h100v200h-100v-200z" />
+<glyph unicode="&#xe152;" d="M2 300h198v900h200v-900h198l-298 -300zM700 0v500h300v-500h-100v100h-100v-100h-100zM700 700v200h100v-100h200v-100h-300zM700 1100v100h300v-200h-99v-100h-100v100h99v100h-200zM801 200h100v200h-100v-200z" />
+<glyph unicode="&#xe153;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM800 100v400h300v-500h-100v100h-200zM800 1100v100h200v-500h-100v400h-100zM901 200h100v200h-100v-200z" />
+<glyph unicode="&#xe154;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM800 400v100h200v-500h-100v400h-100zM800 800v400h300v-500h-100v100h-200zM901 900h100v200h-100v-200z" />
+<glyph unicode="&#xe155;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM700 100v200h500v-200h-500zM700 400v200h400v-200h-400zM700 700v200h300v-200h-300zM700 1000v200h200v-200h-200z" />
+<glyph unicode="&#xe156;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM700 100v200h200v-200h-200zM700 400v200h300v-200h-300zM700 700v200h400v-200h-400zM700 1000v200h500v-200h-500z" />
+<glyph unicode="&#xe157;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q162 0 281 -118.5t119 -281.5v-300q0 -165 -118.5 -282.5t-281.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500z" />
+<glyph unicode="&#xe158;" d="M0 400v300q0 163 119 281.5t281 118.5h300q165 0 282.5 -117.5t117.5 -282.5v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-163 0 -281.5 117.5t-118.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM400 300l333 250l-333 250v-500z" />
+<glyph unicode="&#xe159;" d="M0 400v300q0 163 117.5 281.5t282.5 118.5h300q163 0 281.5 -119t118.5 -281v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM300 700l250 -333l250 333h-500z" />
+<glyph unicode="&#xe160;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q165 0 282.5 -117.5t117.5 -282.5v-300q0 -162 -118.5 -281t-281.5 -119h-300q-165 0 -282.5 118.5t-117.5 281.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM300 400h500l-250 333z" />
+<glyph unicode="&#xe161;" d="M0 400v300h300v200l400 -350l-400 -350v200h-300zM500 0v200h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-500v200h400q165 0 282.5 -117.5t117.5 -282.5v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-400z" />
+<glyph unicode="&#xe162;" d="M216 519q10 -19 32 -19h302q-155 -438 -160 -458q-5 -21 4 -32l9 -8l9 -1q13 0 26 16l538 630q15 19 6 36q-8 18 -32 16h-300q1 4 78 219.5t79 227.5q2 17 -6 27l-8 8h-9q-16 0 -25 -15q-4 -5 -98.5 -111.5t-228 -257t-209.5 -238.5q-17 -19 -7 -40z" />
+<glyph unicode="&#xe163;" d="M0 400q0 -165 117.5 -282.5t282.5 -117.5h300q47 0 100 15v185h-500q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5h500v185q-14 4 -114 7.5t-193 5.5l-93 2q-165 0 -282.5 -117.5t-117.5 -282.5v-300zM600 400v300h300v200l400 -350l-400 -350v200h-300z " />
+<glyph unicode="&#xe164;" d="M0 400q0 -165 117.5 -282.5t282.5 -117.5h300q163 0 281.5 117.5t118.5 282.5v98l-78 73l-122 -123v-148q0 -41 -29.5 -70.5t-70.5 -29.5h-500q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5h156l118 122l-74 78h-100q-165 0 -282.5 -117.5t-117.5 -282.5 v-300zM496 709l353 342l-149 149h500v-500l-149 149l-342 -353z" />
+<glyph unicode="&#xe165;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM406 600 q0 80 57 137t137 57t137 -57t57 -137t-57 -137t-137 -57t-137 57t-57 137z" />
+<glyph unicode="&#xe166;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 800l445 -500l450 500h-295v400h-300v-400h-300zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe167;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 700h300v-300h300v300h295l-445 500zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe168;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 705l305 -305l596 596l-154 155l-442 -442l-150 151zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe169;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 988l97 -98l212 213l-97 97zM200 401h700v699l-250 -239l-149 149l-212 -212l149 -149zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe170;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM200 612l212 -212l98 97l-213 212zM300 1200l239 -250l-149 -149l212 -212l149 148l248 -237v700h-699zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe171;" d="M23 415l1177 784v-1079l-475 272l-310 -393v416h-392zM494 210l672 938l-672 -712v-226z" />
+<glyph unicode="&#xe172;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-850q0 -21 -15 -35.5t-35 -14.5h-150v400h-700v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 1000h100v200h-100v-200z" />
+<glyph unicode="&#xe173;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-218l-276 -275l-120 120l-126 -127h-378v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM581 306l123 123l120 -120l353 352l123 -123l-475 -476zM600 1000h100v200h-100v-200z" />
+<glyph unicode="&#xe174;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-269l-103 -103l-170 170l-298 -298h-329v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 1000h100v200h-100v-200zM700 133l170 170l-170 170l127 127l170 -170l170 170l127 -128l-170 -169l170 -170 l-127 -127l-170 170l-170 -170z" />
+<glyph unicode="&#xe175;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-300h-400v-200h-500v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 300l300 -300l300 300h-200v300h-200v-300h-200zM600 1000v200h100v-200h-100z" />
+<glyph unicode="&#xe176;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-402l-200 200l-298 -298h-402v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 300h200v-300h200v300h200l-300 300zM600 1000v200h100v-200h-100z" />
+<glyph unicode="&#xe177;" d="M0 250q0 -21 14.5 -35.5t35.5 -14.5h1100q21 0 35.5 14.5t14.5 35.5v550h-1200v-550zM0 900h1200v150q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-150zM100 300v200h400v-200h-400z" />
+<glyph unicode="&#xe178;" d="M0 400l300 298v-198h400v-200h-400v-198zM100 800v200h100v-200h-100zM300 800v200h100v-200h-100zM500 800v200h400v198l300 -298l-300 -298v198h-400zM800 300v200h100v-200h-100zM1000 300h100v200h-100v-200z" />
+<glyph unicode="&#xe179;" d="M100 700v400l50 100l50 -100v-300h100v300l50 100l50 -100v-300h100v300l50 100l50 -100v-400l-100 -203v-447q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v447zM800 597q0 -29 10.5 -55.5t25 -43t29 -28.5t25.5 -18l10 -5v-397q0 -21 14.5 -35.5 t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v1106q0 31 -18 40.5t-44 -7.5l-276 -117q-25 -16 -43.5 -50.5t-18.5 -65.5v-359z" />
+<glyph unicode="&#xe180;" d="M100 0h400v56q-75 0 -87.5 6t-12.5 44v394h500v-394q0 -38 -12.5 -44t-87.5 -6v-56h400v56q-4 0 -11 0.5t-24 3t-30 7t-24 15t-11 24.5v888q0 22 25 34.5t50 13.5l25 2v56h-400v-56q75 0 87.5 -6t12.5 -44v-394h-500v394q0 38 12.5 44t87.5 6v56h-400v-56q4 0 11 -0.5 t24 -3t30 -7t24 -15t11 -24.5v-888q0 -22 -25 -34.5t-50 -13.5l-25 -2v-56z" />
+<glyph unicode="&#xe181;" d="M0 300q0 -41 29.5 -70.5t70.5 -29.5h300q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-300q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM100 100h400l200 200h105l295 98v-298h-425l-100 -100h-375zM100 300v200h300v-200h-300zM100 600v200h300v-200h-300z M100 1000h400l200 -200v-98l295 98h105v200h-425l-100 100h-375zM700 402v163l400 133v-163z" />
+<glyph unicode="&#xe182;" d="M16.5 974.5q0.5 -21.5 16 -90t46.5 -140t104 -177.5t175 -208q103 -103 207.5 -176t180 -103.5t137 -47t92.5 -16.5l31 1l163 162q16 17 13 40.5t-22 37.5l-192 136q-19 14 -45 12t-42 -19l-119 -118q-143 103 -267 227q-126 126 -227 268l118 118q17 17 20 41.5 t-11 44.5l-139 194q-14 19 -36.5 22t-40.5 -14l-162 -162q-1 -11 -0.5 -32.5z" />
+<glyph unicode="&#xe183;" d="M0 50v212q0 20 10.5 45.5t24.5 39.5l365 303v50q0 4 1 10.5t12 22.5t30 28.5t60 23t97 10.5t97 -10t60 -23.5t30 -27.5t12 -24l1 -10v-50l365 -303q14 -14 24.5 -39.5t10.5 -45.5v-212q0 -21 -15 -35.5t-35 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5zM0 712 q0 -21 14.5 -33.5t34.5 -8.5l202 33q20 4 34.5 21t14.5 38v146q141 24 300 24t300 -24v-146q0 -21 14.5 -38t34.5 -21l202 -33q20 -4 34.5 8.5t14.5 33.5v200q-6 8 -19 20.5t-63 45t-112 57t-171 45t-235 20.5q-92 0 -175 -10.5t-141.5 -27t-108.5 -36.5t-81.5 -40 t-53.5 -36.5t-31 -27.5l-9 -10v-200z" />
+<glyph unicode="&#xe184;" d="M100 0v100h1100v-100h-1100zM175 200h950l-125 150v250l100 100v400h-100v-200h-100v200h-200v-200h-100v200h-200v-200h-100v200h-100v-400l100 -100v-250z" />
+<glyph unicode="&#xe185;" d="M100 0h300v400q0 41 -29.5 70.5t-70.5 29.5h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-400zM500 0v1000q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-1000h-300zM900 0v700q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-700h-300z" />
+<glyph unicode="&#xe186;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v300h-200v100h200v100h-300v-300h200v-100h-200v-100zM600 300h200v100h100v300h-100v100h-200v-500 zM700 400v300h100v-300h-100z" />
+<glyph unicode="&#xe187;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h100v200h100v-200h100v500h-100v-200h-100v200h-100v-500zM600 300h200v100h100v300h-100v100h-200v-500 zM700 400v300h100v-300h-100z" />
+<glyph unicode="&#xe188;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v100h-200v300h200v100h-300v-500zM600 300h300v100h-200v300h200v100h-300v-500z" />
+<glyph unicode="&#xe189;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 550l300 -150v300zM600 400l300 150l-300 150v-300z" />
+<glyph unicode="&#xe190;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300v500h700v-500h-700zM300 400h130q41 0 68 42t27 107t-28.5 108t-66.5 43h-130v-300zM575 549 q0 -65 27 -107t68 -42h130v300h-130q-38 0 -66.5 -43t-28.5 -108z" />
+<glyph unicode="&#xe191;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v300h-200v100h200v100h-300v-300h200v-100h-200v-100zM601 300h100v100h-100v-100zM700 700h100 v-400h100v500h-200v-100z" />
+<glyph unicode="&#xe192;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v400h-200v100h-100v-500zM301 400v200h100v-200h-100zM601 300h100v100h-100v-100zM700 700h100 v-400h100v500h-200v-100z" />
+<glyph unicode="&#xe193;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 700v100h300v-300h-99v-100h-100v100h99v200h-200zM201 300v100h100v-100h-100zM601 300v100h100v-100h-100z M700 700v100h200v-500h-100v400h-100z" />
+<glyph unicode="&#xe194;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM400 500v200 l100 100h300v-100h-300v-200h300v-100h-300z" />
+<glyph unicode="&#xe195;" d="M0 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM182 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM400 400v400h300 l100 -100v-100h-100v100h-200v-100h200v-100h-200v-100h-100zM700 400v100h100v-100h-100z" />
+<glyph unicode="&#xe197;" d="M-14 494q0 -80 56.5 -137t135.5 -57h222v300h400v-300h128q120 0 205 86t85 208q0 120 -85 206.5t-205 86.5q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5zM300 200h200v300h200v-300 h200l-300 -300z" />
+<glyph unicode="&#xe198;" d="M-14 494q0 -80 56.5 -137t135.5 -57h8l414 414l403 -403q94 26 154.5 104t60.5 178q0 121 -85 207.5t-205 86.5q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5zM300 200l300 300 l300 -300h-200v-300h-200v300h-200z" />
+<glyph unicode="&#xe199;" d="M100 200h400v-155l-75 -45h350l-75 45v155h400l-270 300h170l-270 300h170l-300 333l-300 -333h170l-270 -300h170z" />
+<glyph unicode="&#xe200;" d="M121 700q0 -53 28.5 -97t75.5 -65q-4 -16 -4 -38q0 -74 52.5 -126.5t126.5 -52.5q56 0 100 30v-306l-75 -45h350l-75 45v306q46 -30 100 -30q74 0 126.5 52.5t52.5 126.5q0 24 -9 55q50 32 79.5 83t29.5 112q0 90 -61.5 155.5t-150.5 71.5q-26 89 -99.5 145.5 t-167.5 56.5q-116 0 -197.5 -81.5t-81.5 -197.5q0 -4 1 -12t1 -11q-14 2 -23 2q-74 0 -126.5 -52.5t-52.5 -126.5z" />
+</font>
+</defs></svg> 


[13/15] git commit: AMBARI-7119. log4j does not get used by hadoop as settings are present in hadoop.config.sh (aonishuk)

Posted by nc...@apache.org.
AMBARI-7119. log4j does not get used by hadoop as settings are present in hadoop.config.sh (aonishuk)


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

Branch: refs/heads/branch-alerts-dev
Commit: 15e4032038a48b3f1472f5a1e4940ccb4f7d4102
Parents: ea58eab
Author: Andrew Onishuk <ao...@hortonworks.com>
Authored: Tue Sep 2 22:08:14 2014 +0300
Committer: Andrew Onishuk <ao...@hortonworks.com>
Committed: Tue Sep 2 22:08:14 2014 +0300

----------------------------------------------------------------------
 .../ambari/server/upgrade/UpgradeCatalog170.java       |  4 ++++
 .../HDP/1.3.2/hooks/after-INSTALL/scripts/params.py    |  1 +
 .../1.3.2/services/HDFS/configuration/hadoop-env.xml   |  8 ++++++++
 .../1.3.2/services/HDFS/configuration/hdfs-log4j.xml   |  1 +
 .../HDP/1.3.2/services/HDFS/package/scripts/params.py  |  1 +
 .../HDP/2.0.6/hooks/after-INSTALL/scripts/params.py    |  1 +
 .../2.0.6/services/HDFS/configuration/hadoop-env.xml   |  8 ++++++++
 .../2.0.6/services/HDFS/configuration/hdfs-log4j.xml   |  1 +
 .../HDP/2.0.6/services/HDFS/package/scripts/params.py  |  1 +
 .../ambari/server/upgrade/UpgradeCatalog170Test.java   |  4 ++++
 ambari-web/app/data/HDP2/site_properties.js            | 13 +++++++++++++
 ambari-web/app/data/site_properties.js                 | 13 +++++++++++++
 12 files changed, 56 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
index c2dec57..801249f 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog170.java
@@ -769,6 +769,10 @@ public class UpgradeCatalog170 extends AbstractUpgradeCatalog {
         false);
 
     updateConfigurationProperties("sqoop-env", Collections.singletonMap("sqoop_user", "sqoop"), false, false);
+
+    updateConfigurationProperties("hadoop-env",
+            Collections.singletonMap("hadoop_root_logger", "INFO,RFA"), false,
+            false);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/after-INSTALL/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/after-INSTALL/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/after-INSTALL/scripts/params.py
index a4fb172..9fc0322 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/after-INSTALL/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/hooks/after-INSTALL/scripts/params.py
@@ -33,6 +33,7 @@ hadoop_conf_dir = "/etc/hadoop/conf"
 hadoop_conf_empty_dir = "/etc/hadoop/conf.empty"
 hdfs_log_dir_prefix = config['configurations']['hadoop-env']['hdfs_log_dir_prefix']
 hadoop_pid_dir_prefix = config['configurations']['hadoop-env']['hadoop_pid_dir_prefix']
+hadoop_root_logger = config['configurations']['hadoop-env']['hadoop_root_logger']
 hadoop_env_sh_template = config['configurations']['hadoop-env']['content']
 
 #hadoop-env.sh

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml
index a8e6243..3e42d2f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hadoop-env.xml
@@ -32,6 +32,11 @@
     <description>Hadoop PID Dir Prefix</description>
   </property>
   <property>
+    <name>hadoop_root_logger</name>
+    <value>INFO,RFA</value>
+    <description>Hadoop Root Logger</description>
+  </property>
+  <property>
     <name>hadoop_heapsize</name>
     <value>1024</value>
     <description>Hadoop maximum Java heap size</description>
@@ -209,6 +214,9 @@ export HADOOP_LIBEXEC_DIR={{hadoop_libexec_dir}}
 
 #Mostly required for hadoop 2.0
 export JAVA_LIBRARY_PATH=${JAVA_LIBRARY_PATH}:/usr/lib/hadoop/lib/native/Linux-amd64-64
+
+#Hadoop logging options
+export HADOOP_ROOT_LOGGER={{hadoop_root_logger}}
     </value>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hdfs-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hdfs-log4j.xml b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hdfs-log4j.xml
index 1366c5d..172f66e 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hdfs-log4j.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/configuration/hdfs-log4j.xml
@@ -45,6 +45,7 @@
 # limitations under the License.
 
 # Define some default values that can be overridden by system properties
+# To change daemon root logger use hadoop_root_logger in hadoop-env
 hadoop.root.logger=INFO,console
 hadoop.log.dir=.
 hadoop.log.file=hadoop.log

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py
index 7d23680..e1a8b8f 100644
--- a/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/1.3.2/services/HDFS/package/scripts/params.py
@@ -101,6 +101,7 @@ hadoop_pid_dir_prefix = status_params.hadoop_pid_dir_prefix
 hadoop_bin = "/usr/lib/hadoop/bin"
 
 hdfs_log_dir_prefix = config['configurations']['hadoop-env']['hdfs_log_dir_prefix']
+hadoop_root_logger = config['configurations']['hadoop-env']['hadoop_root_logger']
 
 dfs_domain_socket_path = "/var/lib/hadoop-hdfs/dn_socket"
 dfs_domain_socket_dir = os.path.dirname(dfs_domain_socket_path)

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py
index 3fe5905..e741247 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py
@@ -33,6 +33,7 @@ hadoop_conf_dir = "/etc/hadoop/conf"
 hadoop_conf_empty_dir = "/etc/hadoop/conf.empty"
 hdfs_log_dir_prefix = config['configurations']['hadoop-env']['hdfs_log_dir_prefix']
 hadoop_pid_dir_prefix = config['configurations']['hadoop-env']['hadoop_pid_dir_prefix']
+hadoop_root_logger = config['configurations']['hadoop-env']['hadoop_root_logger']
 hadoop_env_sh_template = config['configurations']['hadoop-env']['content']
 
 #hadoop-env.sh

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml
index 817be91..1bd08d5 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hadoop-env.xml
@@ -32,6 +32,11 @@
     <description>Hadoop PID Dir Prefix</description>
   </property>
   <property>
+    <name>hadoop_root_logger</name>
+    <value>INFO,RFA</value>
+    <description>Hadoop Root Logger</description>
+  </property>
+  <property>
     <name>hadoop_heapsize</name>
     <value>1024</value>
     <description>Hadoop maximum Java heap size</description>
@@ -211,6 +216,9 @@ export HADOOP_LIBEXEC_DIR={{hadoop_libexec_dir}}
 
 #Mostly required for hadoop 2.0
 export JAVA_LIBRARY_PATH=${JAVA_LIBRARY_PATH}:/usr/lib/hadoop/lib/native/Linux-amd64-64
+
+#Hadoop logging options
+export HADOOP_ROOT_LOGGER={{hadoop_root_logger}}
     </value>
   </property>
   

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hdfs-log4j.xml
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hdfs-log4j.xml b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hdfs-log4j.xml
index 976a3c2..08822eb 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hdfs-log4j.xml
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/configuration/hdfs-log4j.xml
@@ -47,6 +47,7 @@
 
 
 # Define some default values that can be overridden by system properties
+# To change daemon root logger use hadoop_root_logger in hadoop-env
 hadoop.root.logger=INFO,console
 hadoop.log.dir=.
 hadoop.log.file=hadoop.log

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py
index ee6b64f..f6905e8 100644
--- a/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py
+++ b/ambari-server/src/main/resources/stacks/HDP/2.0.6/services/HDFS/package/scripts/params.py
@@ -106,6 +106,7 @@ hadoop_pid_dir_prefix = status_params.hadoop_pid_dir_prefix
 hadoop_bin = "/usr/lib/hadoop/sbin"
 
 hdfs_log_dir_prefix = config['configurations']['hadoop-env']['hdfs_log_dir_prefix']
+hadoop_root_logger = config['configurations']['hadoop-env']['hadoop_root_logger']
 
 dfs_domain_socket_path = config['configurations']['hdfs-site']['dfs.domain.socket.path']
 dfs_domain_socket_dir = os.path.dirname(dfs_domain_socket_path)

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
index cc97114..9668ed5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog170Test.java
@@ -300,6 +300,10 @@ public class UpgradeCatalog170Test {
     upgradeCatalog.updateConfigurationProperties("sqoop-env", Collections.singletonMap("sqoop_user", "sqoop"), false, false);
     expectLastCall();
 
+    upgradeCatalog.updateConfigurationProperties("hadoop-env",
+            Collections.singletonMap("hadoop_root_logger", "INFO,RFA"), false, false);
+    expectLastCall();
+
     expect(dbAccessor.executeSelect("SELECT role_name, user_id FROM user_roles")).andReturn(userRolesResultSet).once();
     expect(entityManager.getTransaction()).andReturn(trans).anyTimes();
     expect(entityManager.getCriteriaBuilder()).andReturn(cb).anyTimes();

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/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 3ba0246..2498d94 100644
--- a/ambari-web/app/data/HDP2/site_properties.js
+++ b/ambari-web/app/data/HDP2/site_properties.js
@@ -1763,6 +1763,19 @@ module.exports =
     },
     {
       "id": "puppet var",
+      "name": "hadoop_root_logger",
+      "displayName": "Hadoop Root Logger",
+      "description": "Hadoop logging options",
+      "defaultValue": "INFO,RFA",
+      "displayType": "string",
+      "isOverridable": false,
+      "isVisible": true,
+      "serviceName": "HDFS",
+      "filename": "hadoop-env.xml",
+      "category": "Advanced hadoop-env"
+    },
+    {
+      "id": "puppet var",
       "name": "security_enabled",
       "displayName": "Hadoop Security",
       "description": "Enable hadoop security",

http://git-wip-us.apache.org/repos/asf/ambari/blob/15e40320/ambari-web/app/data/site_properties.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/site_properties.js b/ambari-web/app/data/site_properties.js
index 1f6bb63..4fb4ac8 100644
--- a/ambari-web/app/data/site_properties.js
+++ b/ambari-web/app/data/site_properties.js
@@ -938,6 +938,19 @@ module.exports =
     },
     {
       "id": "puppet var",
+      "name": "hadoop_root_logger",
+      "displayName": "Hadoop Root Logger",
+      "description": "Hadoop logging options",
+      "defaultValue": "INFO,RFA",
+      "displayType": "string",
+      "isOverridable": false,
+      "isVisible": true,
+      "serviceName": "HDFS",
+      "filename": "hadoop-env.xml",
+      "category": "Advanced hadoop-env"
+    },
+    {
+      "id": "puppet var",
       "name": "namenode_opt_maxnewsize",
       "displayName": "NameNode maximum new generation size",
       "description": "",