Updated Branches: refs/heads/trunk fb60f21da -> 05be921e3
http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/05be921e/ambari-web/app/data/config_mapping.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/data/config_mapping.js b/ambari-web/app/data/config_mapping.js index 7107fa0..7b09bf5 100644 --- a/ambari-web/app/data/config_mapping.js +++ b/ambari-web/app/data/config_mapping.js @@ -66,6 +66,29 @@ var configs = [ "filename": "core-site.xml", "isOverridable" : true }, + { + "name": "dfs.datanode.address", + "templateName": ["dfs_datanode_address"], + "foreignKey": null, + "value": "0.0.0.0:<templateName[0]>", + "filename": "hdfs-site.xml" + }, + { + "name": "dfs.datanode.http.address", + "templateName": ["dfs_datanode_http_address"], + "foreignKey": null, + "value": "0.0.0.0:<templateName[0]>", + "filename": "hdfs-site.xml" + }, + + /******************************************MAPREDUCE***************************************/ + { + "name": "mapred.child.java.opts", + "templateName": ["mapred_child_java_opts_sz"], + "foreignKey": null, + "value": "-server -Xmx<templateName[0]>m -Djava.net.preferIPv4Stack=true", + "filename": "mapred-site.xml" + }, /**********************************************hbase-site***************************************/ { http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/05be921e/ambari-web/app/data/global_properties.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/data/global_properties.js b/ambari-web/app/data/global_properties.js index 01a9557..9e7bc9a 100644 --- a/ambari-web/app/data/global_properties.js +++ b/ambari-web/app/data/global_properties.js @@ -85,7 +85,6 @@ module.exports = "description": "The host that has been assigned to run NameNode", "displayType": "masterHost", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": true, "domain": "global", "serviceName": "HDFS", @@ -130,7 +129,6 @@ module.exports = "defaultValue": "", "description": "The host that has been assigned to run SecondaryNameNode", "displayType": "masterHost", - "isRequiredByAgent": false, "isOverridable": false, "isVisible": true, "domain": "global", @@ -147,7 +145,6 @@ module.exports = "description": "The hosts that have been assigned to run DataNode", "displayType": "slaveHosts", "isRequired": false, - "isRequiredByAgent": false, "isOverridable": false, "isVisible": true, "domain": "datanode-global", @@ -265,7 +262,20 @@ module.exports = "serviceName": "HDFS", "category": "NameNode" }, - + { + "id": "puppet var", + "name": "hcat_conf_dir", + "displayName": "HCat conf directory", + "description": "", + "defaultValue": "", + "isRequired": false, + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "HDFS", + "category": "Advanced" + }, /**********************************************HCFS***************************************/ { "id": "puppet var", @@ -361,7 +371,6 @@ module.exports = "description": "The host that has been assigned to run JobTracker", "displayType": "masterHost", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": true, "domain": "global", "serviceName": "MAPREDUCE", @@ -424,7 +433,6 @@ module.exports = "isOverridable": false, "isVisible": true, "isRequired": false, - "isRequiredByAgent": false, "domain": "tasktracker-global", "serviceName": "MAPREDUCE", "category": "TaskTracker", @@ -432,6 +440,20 @@ module.exports = }, { "id": "puppet var", + "name": "mapred_child_java_opts_sz", + "displayName": "Java options for MapReduce tasks", + "description": "Java options for the TaskTracker child processes.", + "defaultValue": "768", + "displayType": "int", + "unit": "MB", + "isVisible": true, + "domain": "tasktracker-global", + "serviceName": "MAPREDUCE", + "category": "TaskTracker", + "index": 4 + }, + { + "id": "puppet var", "name": "lzo_enabled", "displayName": "LZO compression", "description": "LZO compression enabled", @@ -481,7 +503,6 @@ module.exports = "description": "The host that has been assigned to run HBase Master", "displayType": "masterHosts", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": true, "domain": "global", "serviceName": "HBASE", @@ -512,7 +533,6 @@ module.exports = "description": "The hosts that have been assigned to run RegionServer", "displayType": "slaveHosts", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": true, "isRequired": false, "domain": "regionserver-global", @@ -584,7 +604,6 @@ module.exports = "defaultValue": "", "description": "The host that has been assigned to run Hive Metastore", "displayType": "masterHost", - "isRequiredByAgent": false, "isOverridable": false, "isVisible": true, "serviceName": "HIVE", @@ -697,7 +716,6 @@ module.exports = "defaultValue": "", "isReconfigurable": false, "displayType": "host", - "isRequiredByAgent": false, "isOverridable": false, "isVisible": false, "isObserved": true, @@ -715,7 +733,6 @@ module.exports = "isReconfigurable": false, "displayType": "host", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": false, "isObserved": true, "domain": "global", @@ -732,7 +749,6 @@ module.exports = "description": "The host where Hive Metastore database is located", "isReconfigurable": false, "displayType": "masterHost", - "isRequiredByAgent": false, "isOverridable": false, "isVisible": false, "domain": "global", @@ -742,6 +758,22 @@ module.exports = }, { "id": "puppet var", + "name": "hive_database_name", + "displayName": "Database Name", + "description": "Database name used as the Hive Metastore", + "defaultValue": "hive", + "isReconfigurable": true, + "displayType": "host", + "isOverridable": false, + "isVisible": true, + "isObserved": true, + "domain": "global", + "serviceName": "HIVE", + "category": "Hive Metastore", + "index": 4 + }, + { + "id": "puppet var", "name": "hive_metastore_port", "displayName": "Hive metastore port", "description": "", @@ -756,6 +788,45 @@ module.exports = }, { "id": "puppet var", + "name": "hive_lib", + "displayName": "Hive library", + "description": "", + "defaultValue": "/usr/lib/hive/lib/", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "HIVE", + "category": "Advanced" + }, + { + "id": "puppet var", + "name": "hive_conf_dir", + "displayName": "Hive conf directory", + "description": "", + "defaultValue": "/etc/hive/conf", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "HIVE", + "category": "Advanced" + }, + { + "id": "puppet var", + "name": "hive_dbroot", + "displayName": "Hive db directory", + "description": "", + "defaultValue": "/usr/lib/hive/lib", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "HIVE", + "category": "Advanced" + }, + { + "id": "puppet var", "name": "hive_log_dir", "displayName": "Hive Log Dir", "description": "Directory for Hive log files", @@ -818,7 +889,6 @@ module.exports = "description": "The host that has been assigned to run WebHCat Server", "displayType": "masterHost", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": true, "domain": "global", "serviceName": "WEBHCAT", @@ -862,7 +932,6 @@ module.exports = "description": "The host that has been assigned to run Oozie Server", "displayType": "masterHost", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": true, "domain": "global", "serviceName": "OOZIE", @@ -887,6 +956,22 @@ module.exports = "category": "Oozie Server", "index": 1 }, + // for new MySQL + /*{ + "id": "puppet var", + "name": "oozie_ambari_database", + "displayName": "Database Type", + "value": "", + "defaultValue": "MySQL", + "description": "MySQL will be installed by Ambari", + "displayType": "masterHost", + "isVisible": false, + "isOverridable": false, + // "domain": "global", + "serviceName": "OOZIE", + "category": "Oozie Server", + "index": 1 + },*/ // for current derby { "id": "puppet var", @@ -983,7 +1068,6 @@ module.exports = "isReconfigurable": false, "isOverridable": false, "displayType": "host", - "isRequiredByAgent": false, "isVisible": false, "isObserved": true, "domain": "global", @@ -999,7 +1083,6 @@ module.exports = "defaultValue": "", "isReconfigurable": false, "isOverridable": false, - "isRequiredByAgent": false, "displayType": "host", "isVisible": false, "isObserved": true, @@ -1017,7 +1100,6 @@ module.exports = "description": "Host on which the database will be created by Ambari", "isReconfigurable": false, "isOverridable": false, - "isRequiredByAgent": false, "displayType": "masterHost", "isVisible": false, "domain": "global", @@ -1071,6 +1153,80 @@ module.exports = "serviceName": "OOZIE", "category": "Advanced" }, + /* { + "id": "puppet var", + "name": "oozie_database", + "displayName": "Oozie Database", + "value": "", + "defaultValue": "New PostgreSQL Database", + "options": [ + { + displayName: 'New PostgreSQL Database', + foreignKeys: ['oozie_ambari_database', 'oozie_ambari_host'] + }, + { + displayName: 'Existing Database', + foreignKeys: ['oozie_existing_database', 'oozie_existing_host'] + } + ], + "description": "PostgreSQL will be installed by ambari. Any other database will have to be installed by the user.", + "displayType": "radio button", + "radioName": "oozie-database", + "isVisible": true, + "serviceName": "OOZIE", + "category": "Oozie Server" + }, + { + "id": "puppet var", + "name": "oozie_existing_database", + "displayName": "Oozie Database", + "value": "", + "defaultValue": "MySQL", + "description": "Select the database, if you already have existing one for Oozie.", + "displayType": "combobox", + "isVisible": false, + "options": ['MySQL', 'PostgreSQL'], + "serviceName": "OOZIE", + "category": "Oozie Server" + }, + { + "id": "puppet var", + "name": "oozie_existing_host", + "displayName": "Database Host", + "description": "Select the host on which the existing database is hosted.", + "defaultValue": "", + "isReconfigurable": false, + "displayType": "host", + "isVisible": false, + "serviceName": "OOZIE", + "category": "Oozie Server" + }, + { + "id": "puppet var", + "name": "oozie_ambari_database", + "displayName": "Oozie Database", + "value": "", + "defaultValue": "PostgreSQL", + "description": "PostgreSQL will be installed by ambari.", + "displayType": "masterHost", + "isVisible": true, + "serviceName": "OOZIE", + "category": "Oozie Server" + }, + { + "id": "puppet var", + "name": "oozie_ambari_host", + "value": "", + "defaultValue": "", + "displayName": "PostgreSQL host", + "description": "Host on which the PostgreSQL database will be created by ambari. ", + "isReconfigurable": false, + "displayType": "masterHost", + "isVisible": true, + "serviceName": "OOZIE", + "category": "Oozie Server" + }, + */ /**********************************************NAGIOS***************************************/ { "id": "puppet var", @@ -1122,7 +1278,6 @@ module.exports = "defaultValue": "", "description": "The host that has been assigned to run ZooKeeper Server", "displayType": "masterHosts", - "isRequiredByAgent": false, "isVisible": true, "isOverridable": false, "isRequired": false, @@ -1232,6 +1387,19 @@ module.exports = "category": "Advanced", "index": 1 }, + { + "id": "puppet var", + "name": "zk_pid_file", + "displayName": "ZooKeeper PID File", + "description": "", + "defaultValue": "/var/run/zookeeper/zookeeper_server.pid", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "ZOOKEEPER", + "category": "Advanced" + }, /**********************************************HUE***************************************/ { "id": "puppet var", @@ -1241,7 +1409,6 @@ module.exports = "defaultValue": "", "description": "The host that has been assigned to run Hue Server", "displayType": "masterHost", - "isRequiredByAgent": false, "isOverridable": false, "isVisible": true, "domain": "global", @@ -1257,7 +1424,6 @@ module.exports = "isReconfigurable": false, "displayType": "directory", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": true, "domain": "global", "serviceName": "HUE", @@ -1272,7 +1438,6 @@ module.exports = "isReconfigurable": false, "displayType": "directory", "isOverridable": false, - "isRequiredByAgent": false, "isVisible": true, "domain": "global", "serviceName": "HUE", @@ -1292,7 +1457,21 @@ module.exports = "serviceName": "GANGLIA", "category": "Advanced" }, - /**********************************************MISC******************************************/ + /**********************************************MISC***************************************/ + { + "id": "puppet var", + "name": "hbase_conf_dir", + "displayName": "HBase conf dir", + "description": "", + "defaultValue": "/etc/hbase", + "isRequired": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General", + "belongsToService":[] + }, { "id": "puppet var", "name": "proxyuser_group", @@ -1311,6 +1490,64 @@ module.exports = }, { "id": "puppet var", + "name": "dfs_datanode_address", + "displayName": "dfs_datanode_address", + "description": "", + "defaultValue": "50010", + "isReconfigurable": true, + "displayType": "int", + "isVisible": true, + "filename": "hdfs-site.xml", + "domain": "global", + "serviceName": "MISC", + "category": "Advanced", + "belongsToService":[] + }, + { + "id": "puppet var", + "name": "dfs_datanode_http_address", + "displayName": "dfs_datanode_http_address", + "description": "", + "defaultValue": "50075", + "isReconfigurable": true, + "displayType": "int", + "isVisible": true, + "filename": "hdfs-site.xml", + "domain": "global", + "serviceName": "MISC", + "category": "Advanced", + "belongsToService":[] + }, + { + "id": "puppet var", + "name": "gpl_artifacts_download_url", + "displayName": "gpl artifact download url", + "description": "", + "defaultValue": "", + "isReconfigurable": false, + "displayType": "advanced", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General", + "belongsToService":[] + }, + { + "id": "puppet var", + "name": "apache_artifacts_download_url", + "displayName": "apache artifact download url", + "description": "", + "defaultValue": "", + "isReconfigurable": false, + "displayType": "advanced", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General", + "belongsToService":[] + }, + { + "id": "puppet var", "name": "ganglia_runtime_dir", "displayName": "Ganglia runtime directory", "description": "", @@ -1323,6 +1560,48 @@ module.exports = "category": "General", "belongsToService":[] }, + /* + { + "id": "puppet var", + "name": "ganglia_shell_cmds_dir", + "displayName": "ganglia_shell_cmds_dir", + "description": "", + "defaultValue": "/usr/libexec/hdp/ganglia", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General" + }, + { + "id": "puppet var", + "name": "webserver_group", + "displayName": "ganglia_shell_cmds_dir", + "description": "", + "defaultValue": "apache", + "isReconfigurable": false, + "displayType": "advanced", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General" + }, + */ + /* + { + "id": "puppet var", + "name": "jdk_location", + "displayName": "URL to download 64-bit JDK", + "description": "URL from where the 64-bit JDK binary can be downloaded", + "defaultValue": "", + "isRequired": false, + "isReconfigurable": false, + "displayType": "url", + "isVisible": true, + "serviceName": "MISC" + }, + */ { "id": "puppet var", "name": "java64_home", @@ -1339,6 +1618,138 @@ module.exports = }, { "id": "puppet var", + "name": "run_dir", + "displayName": "Hadoop run directory", + "description": "", + "defaultValue": "/var/run/hadoop", + "isRequired": false, + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "Advanced", + "belongsToService":[] + }, + { + "id": "puppet var", + "name": "hadoop_conf_dir", + "displayName": "Hadoop conf directory", + "description": "", + "defaultValue": "/etc/hadoop/conf", + "isRequired": false, + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "Advanced", + "belongsToService":[] + }, + /* + { + "id": "puppet var", + "name": "hcat_metastore_port", + "displayName": "hcat_metastore_port", + "description": "", + "defaultValue": "/usr/lib/hcatalog/share/hcatalog", + "isRequired": true, + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC" + }, + { + "id": "puppet var", + "name": "hcat_lib", + "displayName": "hcat_lib", + "description": "", + "defaultValue": "/usr/lib/hcatalog/share/hcatalog", + "isRequired": true, + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC" + }, + + { + "id": "puppet var", + "name": "hcat_dbroot", + "displayName": "hcat_dbroot", + "description": "", + "defaultValue": "/usr/lib/hcatalog/share/hcatalog", + "isRequired": true, + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC" + }, + { + "id": "puppet var", + "name": "hcat_dbroot", + "displayName": "hcat_dbroot", + "description": "", + "defaultValue": "/usr/lib/hcatalog/share/hcatalog", + "isRequired": true, + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC" + }, + + { + "id": "puppet var", + "name": "hadoop_log_dir", + "displayName": "Hadoop Log Dir", + "description": "Directory for Hadoop log files", + "defaultValue": "/var/log/hadoop", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": true, "serviceName": "MISC", + "category": "Advanced" + }, + { + "id": "puppet var", + "name": "hadoop_pid_dir", + "displayName": "Hadoop PID Dir", + "description": "Directory in which the pid files for Hadoop processes will be created", + "defaultValue": "/var/run/hadoop", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": true, "serviceName": "MISC", + "category": "Advanced" + }, + { + "id": "puppet var", + "name": "using_local_repo", + "displayName": "Whether a local repo is being used", + "description": "Whether a local repo is being used", + "defaultValue": false, + "isReconfigurable": false, + "displayType": "checkbox", + "isVisible": false, + "domain": "global", + "serviceName": "MISC" + }, + { + "id": "puppet var", + "name": "yum_repo_file", + "displayName": "Path to local repo file", + "description": "Path to local repository file that configures from where to download software packages", + "defaultValue": "/etc/yum.repos.d/hdp.repo", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": true, + "domain": "global", + "serviceName": "MISC" + }, + */ + { + "id": "puppet var", "name": "hdfs_user", "displayName": "HDFS User", "description": "User to run HDFS as", @@ -1442,6 +1853,63 @@ module.exports = "category": "Users and Groups", "belongsToService":["OOZIE"] }, + /* + { + "id": "puppet var", + "name": "oozie_conf_dir", + "displayName": "Oozie conf dir", + "description": "", + "defaultValue": "/etc/oozie", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General" + }, + + { + "id": "puppet var", + "name": "pig_conf_dir", + "displayName": "Pig conf dir", + "description": "", + "defaultValue": "/etc/pig", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General" + }, + */ + /* + { + "id": "puppet var", + "name": "sqoop_conf_dir", + "displayName": "sqoop conf dir", + "description": "", + "defaultValue": "/etc/sqoop", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General" + }, + { + "id": "puppet var", + "name": "sqoop_lib", + "displayName": "sqoop conf dir", + "description": "", + "defaultValue": "/usr/lib/sqoop/lib/", + "isReconfigurable": false, + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General" + }, + */ { "id": "puppet var", "name": "zk_user", @@ -1547,6 +2015,20 @@ module.exports = "category": "Users and Groups", "belongsToService":["HDFS"] }, + /* + { + "id": "puppet var", + "name": "zk_conf_dir", + "displayName": "zk_conf_dir", + "description": "", + "defaultValue": "/etc/conf/", + "displayType": "directory", + "isVisible": false, + "domain": "global", + "serviceName": "MISC", + "category": "General" + }, + */ { "id": "puppet var", "name": "rrdcached_base_dir", http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/05be921e/ambari-web/app/data/secure_mapping.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/data/secure_mapping.js b/ambari-web/app/data/secure_mapping.js index 2dacffb..8fb49eb 100644 --- a/ambari-web/app/data/secure_mapping.js +++ b/ambari-web/app/data/secure_mapping.js @@ -123,18 +123,18 @@ module.exports = [ "serviceName": "HDFS" }, { - "name": "ambari.dfs.datanode.port", + "name": "dfs.datanode.address", "templateName": ["dfs_datanode_address"], "foreignKey": null, - "value": "<templateName[0]>", + "value": "0.0.0.0:<templateName[0]>", "filename": "hdfs-site.xml", "serviceName": "HDFS" }, { - "name": "ambari.dfs.datanode.http.port", + "name": "dfs.datanode.http.address", "templateName": ["dfs_datanode_http_address"], "foreignKey": null, - "value": "<templateName[0]>", + "value": "0.0.0.0:<templateName[0]>", "filename": "hdfs-site.xml", "serviceName": "HDFS" }, http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/05be921e/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 acdc2a8..fdf7326 100644 --- a/ambari-web/app/data/site_properties.js +++ b/ambari-web/app/data/site_properties.js @@ -344,18 +344,6 @@ module.exports = "category": "Advanced", "serviceName": "MAPREDUCE" }, - { - "id": "site property", - "name": "ambari.mapred.child.java.opts.memory", - "displayName": "Java options for MapReduce tasks", - "description": "Java options for the TaskTracker child processes.", - "defaultValue": "", - "displayType": "int", - "unit": "MB", - "category": "TaskTracker", - "serviceName": "MAPREDUCE", - "index": 4 - }, /**********************************************oozie-site***************************************/ { @@ -472,20 +460,6 @@ module.exports = "serviceName": "HIVE", "index": 7 }, - { - "id": "site property", - "name": "ambari.hive.db.schema.name", - "displayName": "Database Name", - "description": "Database name used as the Hive Metastore", - "defaultValue": "", - "isReconfigurable": true, - "displayType": "host", - "isOverridable": false, - "isObserved": true, - "serviceName": "HIVE", - "category": "Hive Metastore", - "index": 4 - }, /**********************************************hbase-site***************************************/ { http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/05be921e/ambari-web/app/models/service_config.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/models/service_config.js b/ambari-web/app/models/service_config.js index 22f4a16..a410b7c 100644 --- a/ambari-web/app/models/service_config.js +++ b/ambari-web/app/models/service_config.js @@ -145,7 +145,6 @@ App.ServiceConfigProperty = Ember.Object.extend({ isReconfigurable: true, // by default a config property is reconfigurable isEditable: true, // by default a config property is editable isVisible: true, - isRequiredByAgent: true, // Setting it to true implies property will be stored in global configuration isSecureConfig: false, errorMessage: '', warnMessage: '', http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/05be921e/ambari-web/app/utils/config.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/utils/config.js b/ambari-web/app/utils/config.js index f7bcc3f..7d35b77 100644 --- a/ambari-web/app/utils/config.js +++ b/ambari-web/app/utils/config.js @@ -42,16 +42,16 @@ App.config = Em.Object.create({ """: '"', "'": "'" }, - + /** * Since values end up in XML files (core-sit.xml, etc.), certain * XML sensitive characters should be escaped. If not we will have - * an invalid XML document, and services will fail to start. - * + * an invalid XML document, and services will fail to start. + * * Special characters in XML are defined at * http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Predefined_entities_in_XML */ - escapeXMLCharacters: function (value) { + escapeXMLCharacters: function(value) { var self = this; // To prevent double/triple replacing '>' to '>gt;' to '>gt;gt', we need // to first unescape all XML chars, and then escape them again. @@ -62,28 +62,28 @@ App.config = Em.Object.create({ return self.xmlEscapeMap[s]; }); }, - preDefinedServiceConfigs: function () { + preDefinedServiceConfigs: function(){ var configs = this.get('preDefinedGlobalProperties'); var services = []; - $.extend(true, [], require('data/service_configs')).forEach(function (service) { + $.extend(true, [], require('data/service_configs')).forEach(function(service){ service.configs = configs.filterProperty('serviceName', service.serviceName); services.push(service); }); return services; }.property('preDefinedGlobalProperties'), - configMapping: function () { - if (App.get('isHadoop2Stack')) { - return $.extend(true, [], require('data/HDP2/config_mapping')); - } - return $.extend(true, [], require('data/config_mapping')); + configMapping: function() { + if (App.get('isHadoop2Stack')) { + return $.extend(true, [],require('data/HDP2/config_mapping')); + } + return $.extend(true, [],require('data/config_mapping')); }.property('App.isHadoop2Stack'), - preDefinedGlobalProperties: function () { + preDefinedGlobalProperties: function() { if (App.get('isHadoop2Stack')) { return $.extend(true, [], require('data/HDP2/global_properties').configProperties); } return $.extend(true, [], require('data/global_properties').configProperties); }.property('App.isHadoop2Stack'), - preDefinedSiteProperties: function () { + preDefinedSiteProperties: function() { if (App.get('isHadoop2Stack')) { return $.extend(true, [], require('data/HDP2/site_properties').configProperties); } @@ -98,9 +98,9 @@ App.config = Em.Object.create({ //categories which contain custom configs categoriesWithCustom: ['CapacityScheduler'], //configs with these filenames go to appropriate category not in Advanced - customFileNames: function () { + customFileNames: function() { if (App.supports.capacitySchedulerUi) { - if (App.get('isHadoop2Stack')) { + if(App.get('isHadoop2Stack')){ return ['capacity-scheduler.xml']; } return ['capacity-scheduler.xml', 'mapred-queue-acls.xml']; @@ -144,12 +144,12 @@ App.config = Em.Object.create({ /** * Array of global "service/desired_tag/actual_tag" strings which - * indicate different configurations. We cache these so that + * indicate different configurations. We cache these so that * we dont have to recalculate if two tags are difference. */ - differentGlobalTagsCache: [], - - identifyCategory: function (config) { + differentGlobalTagsCache:[], + + identifyCategory: function(config){ var category = null; var serviceConfigMetaData = this.get('preDefinedServiceConfigs').findProperty('serviceName', config.serviceName); if (serviceConfigMetaData) { @@ -167,7 +167,7 @@ App.config = Em.Object.create({ * checkbox and digital which values with 'm' at the end * @param config */ - handleSpecialProperties: function (config) { + handleSpecialProperties: function(config){ if (config.displayType === 'int' && /\d+m$/.test(config.value)) { config.value = config.value.slice(0, config.value.length - 1); config.defaultValue = config.value; @@ -183,12 +183,12 @@ App.config = Em.Object.create({ * @param isAdvanced * @param advancedConfigs */ - calculateConfigProperties: function (config, isAdvanced, advancedConfigs) { + calculateConfigProperties: function(config, isAdvanced, advancedConfigs){ if (!isAdvanced || this.get('customFileNames').contains(config.filename)) { var categoryMetaData = this.identifyCategory(config); if (categoryMetaData != null) { config.category = categoryMetaData.get('name'); - if (!isAdvanced) config.isUserProperty = true; + if(!isAdvanced) config.isUserProperty = true; } } else { config.category = config.category ? config.category : 'Advanced'; @@ -200,7 +200,7 @@ App.config = Em.Object.create({ capacitySchedulerFilter: function () { var yarnRegex = /^yarn\.scheduler\.capacity\.root\.(?!unfunded)([a-z]([\_\-a-z0-9]{0,50}))\.(acl_administer_jobs|acl_submit_jobs|state|user-limit-factor|maximum-capacity|capacity)$/i; var self = this; - if (App.get('isHadoop2Stack')) { + if(App.get('isHadoop2Stack')){ return function (_config) { return (yarnRegex.test(_config.name)); } @@ -228,6 +228,7 @@ App.config = Em.Object.create({ var globalConfigs = []; var preDefinedConfigs = this.get('preDefinedGlobalProperties').concat(this.get('preDefinedSiteProperties')); var mappingConfigs = []; + tags.forEach(function (_tag) { var isAdvanced = null; var properties = configGroups.filter(function (serviceConfigProperties) { @@ -249,12 +250,20 @@ App.config = Em.Object.create({ }); if (configsPropertyDef) { - this.setServiceConfigUiAttributes(serviceConfigObj, configsPropertyDef); + serviceConfigObj.displayType = configsPropertyDef.displayType; + serviceConfigObj.isRequired = (configsPropertyDef.isRequired !== undefined) ? configsPropertyDef.isRequired : true; + serviceConfigObj.isReconfigurable = (configsPropertyDef.isReconfigurable !== undefined) ? configsPropertyDef.isReconfigurable : true; + serviceConfigObj.isVisible = (configsPropertyDef.isVisible !== undefined) ? configsPropertyDef.isVisible : true; + serviceConfigObj.unit = (configsPropertyDef.unit !== undefined) ? configsPropertyDef.unit : undefined; + serviceConfigObj.description = (configsPropertyDef.description !== undefined) ? configsPropertyDef.description : undefined; + serviceConfigObj.isOverridable = configsPropertyDef.isOverridable === undefined ? true : configsPropertyDef.isOverridable; + serviceConfigObj.serviceName = configsPropertyDef ? configsPropertyDef.serviceName : null; + serviceConfigObj.index = configsPropertyDef.index; + serviceConfigObj.isSecureConfig = configsPropertyDef.isSecureConfig === undefined ? false : configsPropertyDef.isSecureConfig; + serviceConfigObj.belongsToService = configsPropertyDef.belongsToService; + serviceConfigObj.category = configsPropertyDef.category; } if (_tag.siteName === 'global') { - if (configsPropertyDef.isRequiredByAgent === false) { - continue; - } if (configsPropertyDef) { this.handleSpecialProperties(serviceConfigObj); } else { @@ -284,55 +293,34 @@ App.config = Em.Object.create({ mappingConfigs: mappingConfigs } }, - - /** - * @param serviceConfigObj : Object - * @param configsPropertyDef : Object - */ - setServiceConfigUiAttributes: function (serviceConfigObj, configsPropertyDef) { - serviceConfigObj.displayType = configsPropertyDef.displayType; - serviceConfigObj.isRequired = (configsPropertyDef.isRequired !== undefined) ? configsPropertyDef.isRequired : true; - serviceConfigObj.isRequiredByAgent = (configsPropertyDef.isRequiredByAgent !== undefined) ? configsPropertyDef.isRequiredByAgent : true; - serviceConfigObj.isReconfigurable = (configsPropertyDef.isReconfigurable !== undefined) ? configsPropertyDef.isReconfigurable : true; - serviceConfigObj.isVisible = (configsPropertyDef.isVisible !== undefined) ? configsPropertyDef.isVisible : true; - serviceConfigObj.unit = (configsPropertyDef.unit !== undefined) ? configsPropertyDef.unit : undefined; - serviceConfigObj.description = (configsPropertyDef.description !== undefined) ? configsPropertyDef.description : undefined; - serviceConfigObj.isOverridable = configsPropertyDef.isOverridable === undefined ? true : configsPropertyDef.isOverridable; - serviceConfigObj.serviceName = configsPropertyDef ? configsPropertyDef.serviceName : null; - serviceConfigObj.index = configsPropertyDef.index; - serviceConfigObj.isSecureConfig = configsPropertyDef.isSecureConfig === undefined ? false : configsPropertyDef.isSecureConfig; - serviceConfigObj.belongsToService = configsPropertyDef.belongsToService; - serviceConfigObj.category = configsPropertyDef.category; - }, - /** * synchronize order of config properties with order, that on UI side * @param configSet * @return {Object} */ - syncOrderWithPredefined: function (configSet) { + syncOrderWithPredefined: function(configSet){ var globalConfigs = configSet.globalConfigs, - siteConfigs = configSet.configs, - globalStart = [], - siteStart = []; + siteConfigs = configSet.configs, + globalStart = [], + siteStart = []; - this.get('preDefinedGlobalProperties').mapProperty('name').forEach(function (name) { + this.get('preDefinedGlobalProperties').mapProperty('name').forEach(function(name){ var _global = globalConfigs.findProperty('name', name); - if (_global) { + if(_global){ globalStart.push(_global); globalConfigs = globalConfigs.without(_global); } }, this); - this.get('preDefinedSiteProperties').mapProperty('name').forEach(function (name) { + this.get('preDefinedSiteProperties').mapProperty('name').forEach(function(name){ var _site = siteConfigs.findProperty('name', name); - if (_site) { + if(_site){ siteStart.push(_site); siteConfigs = siteConfigs.without(_site); } }, this); - var alphabeticalSort = function (a, b) { + var alphabeticalSort = function(a, b){ if (a.name < b.name) return -1; if (a.name > b.name) return 1; return 0; @@ -423,7 +411,7 @@ App.config = Em.Object.create({ if (_config) { if (this.get('configMapping').computed().someProperty('name', _config.name)) { } else if (!(configsToVerifying.someProperty('name', _config.name))) { - if (this.get('customFileNames').contains(_config.filename)) { + if(this.get('customFileNames').contains(_config.filename)){ categoryMetaData = this.identifyCategory(_config); if (categoryMetaData != null) { configCategory = categoryMetaData.get('name'); @@ -455,7 +443,7 @@ App.config = Em.Object.create({ var stored = configs.filter(function (_config) { return this.get('categoriesWithCustom').contains(_config.category); }, this); - if (App.supports.capacitySchedulerUi) { + if(App.supports.capacitySchedulerUi){ var queueProperties = stored.filter(this.get('capacitySchedulerFilter')); if (queueProperties.length) { queueProperties.setEach('isQueue', true); @@ -464,10 +452,8 @@ App.config = Em.Object.create({ }, miscConfigVisibleProperty: function (configs, serviceToShow) { - configs.forEach(function (item) { - item.set("isVisible", item.belongsToService.some(function (cur) { - return serviceToShow.contains(cur) - })); + configs.forEach(function(item) { + item.set("isVisible", item.belongsToService.some(function(cur){return serviceToShow.contains(cur)})); }); return configs; }, @@ -517,10 +503,10 @@ App.config = Em.Object.create({ // Use calculated default values for some configs var recommendedDefaults = {}; if (!storedConfigs && service.defaultsProviders) { - service.defaultsProviders.forEach(function (defaultsProvider) { + service.defaultsProviders.forEach(function(defaultsProvider) { var defaults = defaultsProvider.getDefaults(localDB); - for (var name in defaults) { - recommendedDefaults[name] = defaults[name]; + for(var name in defaults) { + recommendedDefaults[name] = defaults[name]; var config = configsByService.findProperty('name', name); if (config) { config.set('value', defaults[name]); @@ -530,10 +516,10 @@ App.config = Em.Object.create({ }); } if (service.configsValidator) { - service.configsValidator.set('recommendedDefaults', recommendedDefaults); - var validators = service.configsValidator.get('configValidators'); - for (var validatorName in validators) { - var c = configsByService.findProperty('name', validatorName); + service.configsValidator.set('recommendedDefaults', recommendedDefaults); + var validators = service.configsValidator.get('configValidators'); + for (var validatorName in validators) { + var c = configsByService.findProperty('name', validatorName); if (c) { c.set('serviceValidator', service.configsValidator); } @@ -546,13 +532,13 @@ App.config = Em.Object.create({ return renderedServiceConfigs; }, /** - Takes care of the "dynamic defaults" for the HCFS configs. Sets - some of the config defaults to previously user-entered data. - **/ + Takes care of the "dynamic defaults" for the HCFS configs. Sets + some of the config defaults to previously user-entered data. + **/ tweakDynamicDefaults: function (localDB, serviceConfigProperty, config) { console.log("Step7: Tweaking Dynamic defaults"); var firstHost = null; - for (var host in localDB.hosts) { + for(var host in localDB.hosts) { firstHost = host; break; } @@ -606,7 +592,7 @@ App.config = Em.Object.create({ serviceConfig.configCategories.filterProperty('isCustomView', true).forEach(function (category) { switch (category.name) { case 'CapacityScheduler': - if (App.supports.capacitySchedulerUi) { + if(App.supports.capacitySchedulerUi){ category.set('customView', App.ServiceConfigCapacityScheduler); } else { category.set('isCustomView', false); @@ -713,14 +699,14 @@ App.config = Em.Object.create({ } return globalPropertyToServicesMap; }, - + loadGlobalPropertyToServicesMapSuccess: function (data) { globalPropertyToServicesMap = {}; - if (data.items != null) { - data.items.forEach(function (service) { - service.configurations.forEach(function (config) { - if ("global.xml" === config.StackConfigurations.type) { - if (!(config.StackConfigurations.property_name in globalPropertyToServicesMap)) { + if(data.items!=null){ + data.items.forEach(function(service){ + service.configurations.forEach(function(config){ + if("global.xml" === config.StackConfigurations.type){ + if(!(config.StackConfigurations.property_name in globalPropertyToServicesMap)){ globalPropertyToServicesMap[config.StackConfigurations.property_name] = []; } globalPropertyToServicesMap[config.StackConfigurations.property_name].push(service.StackServices.service_name); @@ -729,7 +715,7 @@ App.config = Em.Object.create({ }); } }, - + /** * Hosts can override service configurations per property. This method GETs * the overriden configurations and sets only the changed properties into @@ -888,19 +874,19 @@ App.config = Em.Object.create({ * @param filename * @return {*} */ - fileConfigsIntoTextarea: function (configs, filename) { + fileConfigsIntoTextarea: function(configs, filename){ var fileConfigs = configs.filterProperty('filename', filename); var value = ''; var defaultValue = ''; var complexConfig = this.get('complexConfigs').findProperty('filename', filename); - if (complexConfig) { - fileConfigs.forEach(function (_config) { + if(complexConfig){ + fileConfigs.forEach(function(_config){ value += _config.name + '=' + _config.value + '\n'; defaultValue += _config.name + '=' + _config.defaultValue + '\n'; }, this); complexConfig.value = value; complexConfig.defaultValue = defaultValue; - configs = configs.filter(function (_config) { + configs = configs.filter(function(_config){ return _config.filename !== filename; }); configs.push(complexConfig); @@ -915,7 +901,7 @@ App.config = Em.Object.create({ * @param filename * @return {*} */ - textareaIntoFileConfigs: function (configs, filename) { + textareaIntoFileConfigs: function(configs, filename){ var complexConfigName = this.get('complexConfigs').findProperty('filename', filename).name; var configsTextarea = configs.findProperty('name', complexConfigName); if (configsTextarea) { @@ -951,12 +937,12 @@ App.config = Em.Object.create({ * @param property * @returns {*} */ - trimProperty: function (property, isEmberObject) { + trimProperty: function(property, isEmberObject){ var displayType = (isEmberObject) ? property.get('displayType') : property.displayType; var value = (isEmberObject) ? property.get('value') : property.value; var name = (isEmberObject) ? property.get('name') : property.name; var rez; - switch (displayType) { + switch (displayType){ case 'directories': case 'directory': rez = value.trim().split(/\s+/g).join(','); @@ -967,7 +953,7 @@ App.config = Em.Object.create({ case 'password': break; case 'advanced': - if (name == 'javax.jdo.option.ConnectionURL' || name == 'oozie.service.JPAService.jdbc.url') { + if(name == 'javax.jdo.option.ConnectionURL' || name == 'oozie.service.JPAService.jdbc.url') { rez = value.trim(); } default: @@ -976,7 +962,7 @@ App.config = Em.Object.create({ return ((rez == '') || (rez == undefined)) ? value : rez; }, - OnNnHAHideSnn: function (ServiceConfig) { + OnNnHAHideSnn: function(ServiceConfig) { var configCategories = ServiceConfig.get('configCategories'); var snCategory = configCategories.findProperty('name', 'SNameNode'); var activeNn = App.HDFSService.find('HDFS').get('activeNameNode.hostName'); @@ -1140,7 +1126,7 @@ App.config = Em.Object.create({ /** * Gets all the configuration-groups for a host. - * + * * @param hostName * (string) host name used to register * @return Array of App.ConfigGroups http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/05be921e/ambari-web/app/utils/helper.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/utils/helper.js b/ambari-web/app/utils/helper.js index 4a2bc55..f86a2be 100644 --- a/ambari-web/app/utils/helper.js +++ b/ambari-web/app/utils/helper.js @@ -126,10 +126,6 @@ String.prototype.highlight = function (words, highlightTemplate) { return self; }; -Array.prototype.move = function(from, to) { - this.splice(to, 0, this.splice(from, 1)[0]); -}; - Number.prototype.toDaysHoursMinutes = function () { var formatted = {}, dateDiff = this, http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/05be921e/ambari-web/app/views/wizard/controls_view.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/views/wizard/controls_view.js b/ambari-web/app/views/wizard/controls_view.js index ebc6710..cabfa4f 100644 --- a/ambari-web/app/views/wizard/controls_view.js +++ b/ambari-web/app/views/wizard/controls_view.js @@ -251,7 +251,7 @@ App.ServiceConfigRadioButtons = Ember.View.extend({ databaseName: function () { switch (this.get('serviceConfig.serviceName')) { case 'HIVE': - return this.get('categoryConfigsAll').findProperty('name', 'ambari.hive.db.schema.name').get('value'); + return this.get('categoryConfigsAll').findProperty('name', 'hive_database_name').get('value'); case 'OOZIE': return this.get('categoryConfigsAll').findProperty('name', 'oozie.db.schema.name').get('value'); default: