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

svn commit: r1448922 - in /incubator/ambari/trunk: ./ ambari-web/app/ ambari-web/app/assets/data/wizard/stack/ ambari-web/app/controllers/main/admin/ ambari-web/app/routes/ ambari-web/app/styles/ ambari-web/app/templates/main/admin/ ambari-web/app/util...

Author: yusaku
Date: Fri Feb 22 08:04:48 2013
New Revision: 1448922

URL: http://svn.apache.org/r1448922
Log:
AMBARI-1468. Stack Upgrade Wizard - Step 1 (show services and versions). (yusaku)

Modified:
    incubator/ambari/trunk/CHANGES.txt
    incubator/ambari/trunk/ambari-web/app/assets/data/wizard/stack/stacks.json
    incubator/ambari/trunk/ambari-web/app/controllers.js
    incubator/ambari/trunk/ambari-web/app/controllers/main/admin/cluster.js
    incubator/ambari/trunk/ambari-web/app/messages.js
    incubator/ambari/trunk/ambari-web/app/router.js
    incubator/ambari/trunk/ambari-web/app/routes/main.js
    incubator/ambari/trunk/ambari-web/app/styles/application.less
    incubator/ambari/trunk/ambari-web/app/templates/main/admin/cluster.hbs
    incubator/ambari/trunk/ambari-web/app/utils/db.js
    incubator/ambari/trunk/ambari-web/app/views.js
    incubator/ambari/trunk/ambari-web/app/views/main/admin/cluster.js

Modified: incubator/ambari/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/CHANGES.txt?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/CHANGES.txt (original)
+++ incubator/ambari/trunk/CHANGES.txt Fri Feb 22 08:04:48 2013
@@ -12,6 +12,9 @@ Trunk (unreleased changes):
 
  NEW FEATURES
 
+ AMBARI-1468. Stack Upgrade Wizard - Step 1 (show services and versions).
+ (yusaku)
+
  AMBARI-1459. Add Admin > Cluster page. (yusaku)
 
  AMBARI-1454. Service page: add "Reassign <Master Component>" action items

Modified: incubator/ambari/trunk/ambari-web/app/assets/data/wizard/stack/stacks.json
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/assets/data/wizard/stack/stacks.json?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/assets/data/wizard/stack/stacks.json (original)
+++ incubator/ambari/trunk/ambari-web/app/assets/data/wizard/stack/stacks.json Fri Feb 22 08:04:48 2013
@@ -1,99 +1,1643 @@
 [ {
   "name" : "HDP",
+  "version" : "1.2.2",
+  "repositories" : [ {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/centos6",
+    "osType" : "centos6",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "centos6",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch"
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/centos5",
+    "osType" : "centos5",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "centos5",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/centos6",
+    "osType" : "redhat6",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat6",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch"
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/centos5",
+    "osType" : "redhat5",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat5",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/suse11",
+    "osType" : "suse11",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.15/repos/suse11",
+    "osType" : "suse11",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/suse11",
+    "osType" : "sles11",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.15/repos/suse11",
+    "osType" : "sles11",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  } ],
+  "services" : [ {
+    "name" : "GANGLIA",
+    "version" : "3.2.0",
+    "user" : "root",
+    "comment" : "Ganglia Metrics Collection system",
+    "components" : [ {
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "GANGLIA_MONITOR",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MONITOR_WEBSERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  }, {
+    "name" : "OOZIE",
+    "version" : "3.2.0",
+    "user" : "root",
+    "comment" : "System for workflow coordination and execution of Apache Hadoop jobs",
+    "components" : [ {
+      "name" : "OOZIE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "OOZIE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "OOZIE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "MAPREDUCE",
+    "version" : "1.1.2",
+    "user" : "mapred",
+    "comment" : "Apache Hadoop Distributed Processing Framework",
+    "components" : [ {
+      "name" : "JOBTRACKER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "TASKTRACKER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HIVE",
+    "version" : "0.10.0",
+    "user" : "root",
+    "comment" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service",
+    "components" : [ {
+      "name" : "HIVE_METASTORE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HIVE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "MYSQL_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HDFS",
+    "version" : "1.1.2",
+    "user" : "root",
+    "comment" : "Apache Hadoop Distributed File System",
+    "components" : [ {
+      "name" : "NAMENODE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "DATANODE",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "SECONDARY_NAMENODE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HDFS_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HDFS_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "NAGIOS",
+    "version" : "3.2.3",
+    "user" : "root",
+    "comment" : "Nagios Monitoring and Alerting system",
+    "components" : [ {
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  }, {
+    "name" : "SQOOP",
+    "version" : "1.4.2",
+    "user" : "root",
+    "comment" : "Tool for transferring bulk data between Apache Hadoop and structured data stores such as relational databases",
+    "components" : [ {
+      "name" : "SQOOP",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "SQOOP",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "PIG",
+    "version" : "0.10.1",
+    "user" : "root",
+    "comment" : "Scripting platform for analyzing large datasets",
+    "components" : [ {
+      "name" : "PIG",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "PIG",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HBASE",
+    "version" : "0.94.2",
+    "user" : "mapred",
+    "comment" : "Non-relational distributed database and centralized service for configuration management & synchronization",
+    "components" : [ {
+      "name" : "HBASE_MASTER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HBASE_REGIONSERVER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HCATALOG",
+    "version" : "0.5.0",
+    "user" : "root",
+    "comment" : "This is comment for HCATALOG service",
+    "components" : [ {
+      "name" : "HCAT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "HCAT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "ZOOKEEPER",
+    "version" : "3.4.5",
+    "user" : "root",
+    "comment" : "This is comment for ZOOKEEPER service",
+    "components" : [ {
+      "name" : "ZOOKEEPER_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "ZOOKEEPER_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "ZOOKEEPER_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "WEBHCAT",
+    "version" : "0.5.0",
+    "user" : "root",
+    "comment" : "This is comment for WEBHCAT service",
+    "components" : [ {
+      "name" : "WEBHCAT_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "WEBHCAT_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  } ]
+}, {
+  "name" : "HDP",
   "version" : "0.1",
   "repositories" : [ {
-    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.1.1.16/repos/centos6",
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.1.1.16/repos/centos6",
+    "osType" : "centos6",
+    "repoId" : "HDP-1.1.1.16",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/centos6",
+    "osType" : "centos6",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "centos6",
+    "repoId" : "epel",
+    "repoName" : "epel",
+    "mirrorsList" : "https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.1.1.16/repos/centos5",
+    "osType" : "centos5",
+    "repoId" : "HDP-1.1.1.16",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/centos5",
+    "osType" : "centos5",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "centos5",
+    "repoId" : "epel",
+    "repoName" : "epel",
+    "mirrorsList" : "https://mirrors.fedoraproject.org/metalink?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.1.1.16/repos/centos5",
+    "osType" : "redhat5",
+    "repoId" : "HDP-1.1.1.16",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/centos5",
+    "osType" : "redhat5",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat5",
+    "repoId" : "epel",
+    "repoName" : "epel",
+    "mirrorsList" : "https://mirrors.fedoraproject.org/metalink?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.1.1.16/repos/centos6",
+    "osType" : "redhat6",
+    "repoId" : "HDP-1.1.1.16",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/centos6",
+    "osType" : "redhat6",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat6",
+    "repoId" : "epel",
+    "repoName" : "epel",
+    "mirrorsList" : "https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch"
+  } ],
+  "services" : [ {
+    "name" : "GANGLIA",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for GANGLIA service",
+    "components" : [ {
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "GANGLIA_MONITOR",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MONITOR_WEBSERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  }, {
+    "name" : "OOZIE",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for OOZIE service",
+    "components" : [ {
+      "name" : "OOZIE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "OOZIE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "OOZIE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "MAPREDUCE",
+    "version" : "1.0",
+    "user" : "mapred",
+    "comment" : "This is comment for MAPREDUCE service",
+    "components" : [ {
+      "name" : "JOBTRACKER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "TASKTRACKER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HIVE",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for HIVE service",
+    "components" : [ {
+      "name" : "HIVE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "TEMPLETON",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for TEMPLETON service",
+    "components" : [ {
+      "name" : "TEMPLETON_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "TEMPLETON_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "TEMPLETON_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HDFS",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for HDFS service",
+    "components" : [ {
+      "name" : "NAMENODE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "DATANODE",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "SECONDARY_NAMENODE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HDFS_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HDFS_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "NAGIOS",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for NAGIOS service",
+    "components" : [ {
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  }, {
+    "name" : "SQOOP",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for SQOOP service",
+    "components" : [ {
+      "name" : "SQOOP",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "SQOOP",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "PIG",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for PIG service",
+    "components" : [ {
+      "name" : "PIG",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "PIG",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HBASE",
+    "version" : "1.0",
+    "user" : "mapred",
+    "comment" : "This is comment for HBASE service",
+    "components" : [ {
+      "name" : "HBASE_MASTER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HBASE_REGIONSERVER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HCATALOG",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for HCATALOG service",
+    "components" : [ {
+      "name" : "HCAT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "HCAT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "ZOOKEEPER",
+    "version" : "1.0",
+    "user" : "root",
+    "comment" : "This is comment for ZOOKEEPER service",
+    "components" : [ {
+      "name" : "ZOOKEEPER_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "ZOOKEEPER_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "ZOOKEEPER_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  } ]
+}, {
+  "name" : "HDP",
+  "version" : "1.2.0",
+  "repositories" : [ {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/centos6",
+    "osType" : "centos6",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "centos6",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/centos5",
+    "osType" : "centos5",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "centos5",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/centos6",
+    "osType" : "redhat6",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat6",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/centos5",
+    "osType" : "redhat5",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat5",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/suse11",
+    "osType" : "suse11",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/suse11",
+    "osType" : "suse11",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/suse11",
+    "osType" : "sles11",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/suse11",
+    "osType" : "sles11",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  } ],
+  "services" : [ {
+    "name" : "GANGLIA",
+    "version" : "3.2.0",
+    "user" : "root",
+    "comment" : "Ganglia Metrics Collection system",
+    "components" : [ {
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "GANGLIA_MONITOR",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MONITOR_WEBSERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  }, {
+    "name" : "OOZIE",
+    "version" : "3.2.0",
+    "user" : "root",
+    "comment" : "System for workflow coordination and execution of Apache Hadoop jobs",
+    "components" : [ {
+      "name" : "OOZIE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "OOZIE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "OOZIE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "MAPREDUCE",
+    "version" : "1.1.2",
+    "user" : "mapred",
+    "comment" : "Apache Hadoop Distributed Processing Framework",
+    "components" : [ {
+      "name" : "JOBTRACKER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "TASKTRACKER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HIVE",
+    "version" : "0.10.0",
+    "user" : "root",
+    "comment" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service",
+    "components" : [ {
+      "name" : "HIVE_METASTORE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HIVE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "MYSQL_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HDFS",
+    "version" : "1.1.2",
+    "user" : "root",
+    "comment" : "Apache Hadoop Distributed File System",
+    "components" : [ {
+      "name" : "NAMENODE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "DATANODE",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "SECONDARY_NAMENODE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HDFS_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HDFS_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "NAGIOS",
+    "version" : "3.2.3",
+    "user" : "root",
+    "comment" : "Nagios Monitoring and Alerting system",
+    "components" : [ {
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  }, {
+    "name" : "SQOOP",
+    "version" : "1.4.2",
+    "user" : "root",
+    "comment" : "Tool for transferring bulk data between Apache Hadoop and structured data stores such as relational databases",
+    "components" : [ {
+      "name" : "SQOOP",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "SQOOP",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "PIG",
+    "version" : "0.10.1",
+    "user" : "root",
+    "comment" : "Scripting platform for analyzing large datasets",
+    "components" : [ {
+      "name" : "PIG",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "PIG",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HBASE",
+    "version" : "0.94.2",
+    "user" : "mapred",
+    "comment" : "Non-relational distributed database and centralized service for configuration management & synchronization",
+    "components" : [ {
+      "name" : "HBASE_MASTER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HBASE_REGIONSERVER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HCATALOG",
+    "version" : "0.5.0",
+    "user" : "root",
+    "comment" : "This is comment for HCATALOG service",
+    "components" : [ {
+      "name" : "HCAT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "HCAT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "ZOOKEEPER",
+    "version" : "3.4.5",
+    "user" : "root",
+    "comment" : "This is comment for ZOOKEEPER service",
+    "components" : [ {
+      "name" : "ZOOKEEPER_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "ZOOKEEPER_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "ZOOKEEPER_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "WEBHCAT",
+    "version" : "0.5.0",
+    "user" : "root",
+    "comment" : "This is comment for WEBHCAT service",
+    "components" : [ {
+      "name" : "WEBHCAT_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "WEBHCAT_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  } ]
+}, {
+  "name" : "HDPLocal",
+  "version" : "1.2.2",
+  "repositories" : [ {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/centos6",
+    "osType" : "centos6",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "centos6",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch"
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/centos5",
+    "osType" : "centos5",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "centos5",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/centos6",
+    "osType" : "redhat6",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat6",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch"
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/centos5",
+    "osType" : "redhat5",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat5",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/suse11",
+    "osType" : "suse11",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.15/repos/suse11",
+    "osType" : "suse11",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.2.2/repos/suse11",
+    "osType" : "sles11",
+    "repoId" : "HDP-1.2.2",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.15/repos/suse11",
+    "osType" : "sles11",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
+  } ],
+  "services" : [ {
+    "name" : "GANGLIA",
+    "version" : "3.2.0",
+    "user" : "root",
+    "comment" : "Ganglia Metrics Collection system",
+    "components" : [ {
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "GANGLIA_MONITOR",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MONITOR_WEBSERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  }, {
+    "name" : "OOZIE",
+    "version" : "3.2.0",
+    "user" : "root",
+    "comment" : "System for workflow coordination and execution of Apache Hadoop jobs",
+    "components" : [ {
+      "name" : "OOZIE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "OOZIE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "OOZIE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "MAPREDUCE",
+    "version" : "1.1.2",
+    "user" : "mapred",
+    "comment" : "Apache Hadoop Distributed Processing Framework",
+    "components" : [ {
+      "name" : "JOBTRACKER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "TASKTRACKER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HIVE",
+    "version" : "0.10.0",
+    "user" : "root",
+    "comment" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service",
+    "components" : [ {
+      "name" : "HIVE_METASTORE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HIVE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "MYSQL_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HDFS",
+    "version" : "1.1.2",
+    "user" : "root",
+    "comment" : "Apache Hadoop Distributed File System",
+    "components" : [ {
+      "name" : "NAMENODE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "DATANODE",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "SECONDARY_NAMENODE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HDFS_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HDFS_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "NAGIOS",
+    "version" : "3.2.3",
+    "user" : "root",
+    "comment" : "Nagios Monitoring and Alerting system",
+    "components" : [ {
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  }, {
+    "name" : "SQOOP",
+    "version" : "1.4.2",
+    "user" : "root",
+    "comment" : "Tool for transferring bulk data between Apache Hadoop and structured data stores such as relational databases",
+    "components" : [ {
+      "name" : "SQOOP",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "SQOOP",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "PIG",
+    "version" : "0.10.1",
+    "user" : "root",
+    "comment" : "Scripting platform for analyzing large datasets",
+    "components" : [ {
+      "name" : "PIG",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "PIG",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HBASE",
+    "version" : "0.94.2",
+    "user" : "mapred",
+    "comment" : "Non-relational distributed database and centralized service for configuration management & synchronization",
+    "components" : [ {
+      "name" : "HBASE_MASTER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HBASE_REGIONSERVER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HCATALOG",
+    "version" : "0.5.0",
+    "user" : "root",
+    "comment" : "This is comment for HCATALOG service",
+    "components" : [ {
+      "name" : "HCAT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : true,
+    "clientComponent" : {
+      "name" : "HCAT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "ZOOKEEPER",
+    "version" : "3.4.5",
+    "user" : "root",
+    "comment" : "This is comment for ZOOKEEPER service",
+    "components" : [ {
+      "name" : "ZOOKEEPER_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "ZOOKEEPER_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "ZOOKEEPER_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "WEBHCAT",
+    "version" : "0.5.0",
+    "user" : "root",
+    "comment" : "This is comment for WEBHCAT service",
+    "components" : [ {
+      "name" : "WEBHCAT_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "WEBHCAT_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }
+  } ]
+}, {
+  "name" : "HDPLocal",
+  "version" : "1.2.0",
+  "repositories" : [ {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/centos6",
     "osType" : "centos6",
-    "repoId" : "HDP-1.1.1.16",
+    "repoId" : "HDP-1.2.0",
     "repoName" : "HDP",
     "mirrorsList" : null
   }, {
-    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/centos6",
-    "osType" : "centos6",
-    "repoId" : "HDP-UTILS-1.1.0.15",
-    "repoName" : "HDP-UTILS",
-    "mirrorsList" : null
-  }, {
     "baseUrl" : null,
     "osType" : "centos6",
-    "repoId" : "epel",
-    "repoName" : "epel",
-    "mirrorsList" : "https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch"
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch"
   }, {
-    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.1.1.16/repos/centos5",
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/centos5",
     "osType" : "centos5",
-    "repoId" : "HDP-1.1.1.16",
+    "repoId" : "HDP-1.2.0",
     "repoName" : "HDP",
     "mirrorsList" : null
   }, {
-    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/centos5",
+    "baseUrl" : null,
     "osType" : "centos5",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/centos6",
+    "osType" : "redhat6",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat6",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-6&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/centos5",
+    "osType" : "redhat5",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : null,
+    "osType" : "redhat5",
+    "repoId" : "HDP-epel",
+    "repoName" : "HDP-epel",
+    "mirrorsList" : "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch"
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/suse11",
+    "osType" : "suse11",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/suse11",
+    "osType" : "suse11",
     "repoId" : "HDP-UTILS-1.1.0.15",
     "repoName" : "HDP-UTILS",
     "mirrorsList" : null
   }, {
-    "baseUrl" : null,
-    "osType" : "centos5",
-    "repoId" : "epel",
-    "repoName" : "epel",
-    "mirrorsList" : "https://mirrors.fedoraproject.org/metalink?repo=epel-5&arch=$basearch"
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-1.2.0/repos/suse11",
+    "osType" : "sles11",
+    "repoId" : "HDP-1.2.0",
+    "repoName" : "HDP",
+    "mirrorsList" : null
+  }, {
+    "baseUrl" : "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.15/repos/suse11",
+    "osType" : "sles11",
+    "repoId" : "HDP-UTILS-1.1.0.15",
+    "repoName" : "HDP-UTILS",
+    "mirrorsList" : null
   } ],
   "services" : [ {
-    "name" : "WEBHCAT",
-    "version" : "1.0",
+    "name" : "GANGLIA",
+    "version" : "3.2.0",
     "user" : "root",
-    "comment" : "This is comment for WEBHCAT service",
+    "comment" : "Ganglia Metrics Collection system",
     "components" : [ {
-      "name" : "WEBHCAT_SERVER",
+      "name" : "GANGLIA_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "GANGLIA_MONITOR",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MONITOR_WEBSERVER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
     } ],
+    "clientOnlyService" : false,
     "clientComponent" : {
-      "name" : "WEBHCAT_SERVER",
+      "name" : "GANGLIA_SERVER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
     }
   }, {
-    "name" : "SQOOP",
-    "version" : "1.0",
+    "name" : "OOZIE",
+    "version" : "3.2.0",
     "user" : "root",
-    "comment" : "This is comment for SQOOP service",
+    "comment" : "System for workflow coordination and execution of Apache Hadoop jobs",
     "components" : [ {
-      "name" : "SQOOP",
+      "name" : "OOZIE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "OOZIE_CLIENT",
       "category" : "CLIENT",
       "client" : true,
       "master" : false
     } ],
+    "clientOnlyService" : false,
     "clientComponent" : {
-      "name" : "SQOOP",
+      "name" : "OOZIE_CLIENT",
       "category" : "CLIENT",
       "client" : true,
       "master" : false
     }
   }, {
-    "name" : "NAGIOS",
-    "version" : "1.0",
-    "user" : "root",
-    "comment" : "This is comment for NAGIOS service",
+    "name" : "MAPREDUCE",
+    "version" : "1.1.2",
+    "user" : "mapred",
+    "comment" : "Apache Hadoop Distributed Processing Framework",
     "components" : [ {
-      "name" : "NAGIOS_SERVER",
+      "name" : "JOBTRACKER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
+    }, {
+      "name" : "TASKTRACKER",
+      "category" : "SLAVE",
+      "client" : false,
+      "master" : false
+    }, {
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
     } ],
+    "clientOnlyService" : false,
     "clientComponent" : {
-      "name" : "NAGIOS_SERVER",
+      "name" : "MAPREDUCE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    }
+  }, {
+    "name" : "HIVE",
+    "version" : "0.10.0",
+    "user" : "root",
+    "comment" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service",
+    "components" : [ {
+      "name" : "HIVE_METASTORE",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "HIVE_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
+    }, {
+      "name" : "MYSQL_SERVER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
+    }, {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
+    } ],
+    "clientOnlyService" : false,
+    "clientComponent" : {
+      "name" : "HIVE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
     }
   }, {
     "name" : "HDFS",
-    "version" : "1.0",
+    "version" : "1.1.2",
     "user" : "root",
-    "comment" : "This is comment for HDFS service",
+    "comment" : "Apache Hadoop Distributed File System",
     "components" : [ {
       "name" : "NAMENODE",
       "category" : "MASTER",
@@ -115,6 +1659,7 @@
       "client" : true,
       "master" : false
     } ],
+    "clientOnlyService" : false,
     "clientComponent" : {
       "name" : "HDFS_CLIENT",
       "category" : "CLIENT",
@@ -122,101 +1667,90 @@
       "master" : false
     }
   }, {
-    "name" : "PIG",
-    "version" : "1.0",
+    "name" : "NAGIOS",
+    "version" : "3.2.3",
     "user" : "root",
-    "comment" : "This is comment for PIG service",
+    "comment" : "Nagios Monitoring and Alerting system",
     "components" : [ {
-      "name" : "PIG",
-      "category" : "CLIENT",
-      "client" : true,
-      "master" : false
+      "name" : "NAGIOS_SERVER",
+      "category" : "MASTER",
+      "client" : false,
+      "master" : true
     } ],
+    "clientOnlyService" : false,
     "clientComponent" : {
-      "name" : "PIG",
-      "category" : "CLIENT",
-      "client" : true,
-      "master" : false
-    }
-  }, {
-    "name" : "HBASE",
-    "version" : "1.0",
-    "user" : "mapred",
-    "comment" : "This is comment for HBASE service",
-    "components" : [ {
-      "name" : "HBASE_MASTER",
+      "name" : "NAGIOS_SERVER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
-    }, {
-      "name" : "HBASE_REGIONSERVER",
-      "category" : "SLAVE",
-      "client" : false,
-      "master" : false
-    }, {
-      "name" : "HBASE_CLIENT",
+    }
+  }, {
+    "name" : "SQOOP",
+    "version" : "1.4.2",
+    "user" : "root",
+    "comment" : "Tool for transferring bulk data between Apache Hadoop and structured data stores such as relational databases",
+    "components" : [ {
+      "name" : "SQOOP",
       "category" : "CLIENT",
       "client" : true,
       "master" : false
     } ],
+    "clientOnlyService" : true,
     "clientComponent" : {
-      "name" : "HBASE_CLIENT",
+      "name" : "SQOOP",
       "category" : "CLIENT",
       "client" : true,
       "master" : false
     }
   }, {
-    "name" : "ZOOKEEPER",
-    "version" : "1.0",
+    "name" : "PIG",
+    "version" : "0.10.1",
     "user" : "root",
-    "comment" : "This is comment for ZOOKEEPER service",
+    "comment" : "Scripting platform for analyzing large datasets",
     "components" : [ {
-      "name" : "ZOOKEEPER_SERVER",
-      "category" : "MASTER",
-      "client" : false,
-      "master" : true
-    }, {
-      "name" : "ZOOKEEPER_CLIENT",
+      "name" : "PIG",
       "category" : "CLIENT",
       "client" : true,
       "master" : false
     } ],
+    "clientOnlyService" : true,
     "clientComponent" : {
-      "name" : "ZOOKEEPER_CLIENT",
+      "name" : "PIG",
       "category" : "CLIENT",
       "client" : true,
       "master" : false
     }
   }, {
-    "name" : "GANGLIA",
-    "version" : "1.0",
-    "user" : "root",
-    "comment" : "This is comment for GANGLIA service",
+    "name" : "HBASE",
+    "version" : "0.94.2",
+    "user" : "mapred",
+    "comment" : "Non-relational distributed database and centralized service for configuration management & synchronization",
     "components" : [ {
-      "name" : "GANGLIA_SERVER",
+      "name" : "HBASE_MASTER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
     }, {
-      "name" : "GANGLIA_MONITOR",
+      "name" : "HBASE_REGIONSERVER",
       "category" : "SLAVE",
       "client" : false,
       "master" : false
     }, {
-      "name" : "MONITOR_WEBSERVER",
-      "category" : "MASTER",
-      "client" : false,
-      "master" : true
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
     } ],
+    "clientOnlyService" : false,
     "clientComponent" : {
-      "name" : "GANGLIA_SERVER",
-      "category" : "MASTER",
-      "client" : false,
-      "master" : true
+      "name" : "HBASE_CLIENT",
+      "category" : "CLIENT",
+      "client" : true,
+      "master" : false
     }
   }, {
     "name" : "HCATALOG",
-    "version" : "1.0",
+    "version" : "0.5.0",
     "user" : "root",
     "comment" : "This is comment for HCATALOG service",
     "components" : [ {
@@ -225,6 +1759,7 @@
       "client" : true,
       "master" : false
     } ],
+    "clientOnlyService" : true,
     "clientComponent" : {
       "name" : "HCAT",
       "category" : "CLIENT",
@@ -232,75 +1767,45 @@
       "master" : false
     }
   }, {
-    "name" : "HIVE",
-    "version" : "1.0",
+    "name" : "ZOOKEEPER",
+    "version" : "3.4.5",
     "user" : "root",
-    "comment" : "This is comment for HIVE service",
+    "comment" : "This is comment for ZOOKEEPER service",
     "components" : [ {
-      "name" : "HIVE_SERVER",
+      "name" : "ZOOKEEPER_SERVER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
     }, {
-      "name" : "HIVE_CLIENT",
+      "name" : "ZOOKEEPER_CLIENT",
       "category" : "CLIENT",
       "client" : true,
       "master" : false
     } ],
+    "clientOnlyService" : false,
     "clientComponent" : {
-      "name" : "HIVE_CLIENT",
+      "name" : "ZOOKEEPER_CLIENT",
       "category" : "CLIENT",
       "client" : true,
       "master" : false
     }
   }, {
-    "name" : "OOZIE",
-    "version" : "1.0",
+    "name" : "WEBHCAT",
+    "version" : "0.5.0",
     "user" : "root",
-    "comment" : "This is comment for OOZIE service",
+    "comment" : "This is comment for WEBHCAT service",
     "components" : [ {
-      "name" : "OOZIE_SERVER",
+      "name" : "WEBHCAT_SERVER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
-    }, {
-      "name" : "OOZIE_CLIENT",
-      "category" : "CLIENT",
-      "client" : true,
-      "master" : false
     } ],
+    "clientOnlyService" : false,
     "clientComponent" : {
-      "name" : "OOZIE_CLIENT",
-      "category" : "CLIENT",
-      "client" : true,
-      "master" : false
-    }
-  }, {
-    "name" : "MAPREDUCE",
-    "version" : "1.0",
-    "user" : "mapred",
-    "comment" : "This is comment for MAPREDUCE service",
-    "components" : [ {
-      "name" : "JOBTRACKER",
+      "name" : "WEBHCAT_SERVER",
       "category" : "MASTER",
       "client" : false,
       "master" : true
-    }, {
-      "name" : "TASKTRACKER",
-      "category" : "SLAVE",
-      "client" : false,
-      "master" : false
-    }, {
-      "name" : "MAPREDUCE_CLIENT",
-      "category" : "CLIENT",
-      "client" : true,
-      "master" : false
-    } ],
-    "clientComponent" : {
-      "name" : "MAPREDUCE_CLIENT",
-      "category" : "CLIENT",
-      "client" : true,
-      "master" : false
     }
   } ]
 } ]
\ No newline at end of file

Modified: incubator/ambari/trunk/ambari-web/app/controllers.js
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/controllers.js?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/controllers.js (original)
+++ incubator/ambari/trunk/ambari-web/app/controllers.js Fri Feb 22 08:04:48 2013
@@ -27,6 +27,7 @@ require('controllers/global/background_o
 require('controllers/main');
 require('controllers/main/admin');
 require('controllers/main/admin/cluster');
+require('controllers/main/admin/stack_upgrade_controller');
 require('controllers/main/admin/user');
 require('controllers/main/admin/user/edit');
 require('controllers/main/admin/user/create');
@@ -70,5 +71,6 @@ require('controllers/wizard/step7_contro
 require('controllers/wizard/step8_controller');
 require('controllers/wizard/step9_controller');
 require('controllers/wizard/step10_controller');
+require('controllers/wizard/stack_upgrade/step1_controller');
 require('controllers/global/cluster_controller');
 require('controllers/global/update_controller');
\ No newline at end of file

Modified: incubator/ambari/trunk/ambari-web/app/controllers/main/admin/cluster.js
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/controllers/main/admin/cluster.js?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/controllers/main/admin/cluster.js (original)
+++ incubator/ambari/trunk/ambari-web/app/controllers/main/admin/cluster.js Fri Feb 22 08:04:48 2013
@@ -21,92 +21,73 @@ var App = require('app');
 App.MainAdminClusterController = Em.Controller.extend({
   name:'mainAdminClusterController',
   services: [],
-  installedServices: function(){
-    return App.Service.find().mapProperty('serviceName');
-  }.property(),
-  currentVersion: function(){
-    return App.get('currentStackVersion');
-  }.property('App.currentStackVersion'),
   upgradeVersion: '',
   /**
    * get the newest version of HDP from server
-   * and update if it newer than current
    */
   updateUpgradeVersion: function(){
-    var url = App.formatUrl(
-      App.apiPrefix + "/stacks",
-      {},
-      '/data/wizard/stack/stacks.json'
-    );
-    var result = this.get('upgradeVersion') || App.defaultStackVersion;
-    $.ajax({
-      type: "GET",
-      url: url,
-      async: false,
-      dataType: 'json',
-      timeout: App.timeout,
-      success: function (data) {
-        result = result.replace(/HDP-/, '');
-        data.filterProperty('name', 'HDP').mapProperty('version').forEach(function(version){
-          result = (result < version) ? version : result;
-        });
-        result = 'HDP-' + result;
-      },
-      error: function (request, ajaxOptions, error) {
-        console.log('Error message is: ' + request.responseText);
-      },
-      statusCode: require('data/statusCodes')
-    });
-    if(result && result !== this.get('upgradeVersion')){
-      this.set('upgradeVersion', result);
+    if(App.router.get('clusterController.isLoaded')){
+      var url = App.formatUrl(
+        App.apiPrefix + "/stacks",
+        {},
+        '/data/wizard/stack/stacks.json'
+      );
+      var upgradeVersion = this.get('upgradeVersion') || App.defaultStackVersion;
+      var installedServices = [];
+      var newServices = [];
+      $.ajax({
+        type: "GET",
+        url: url,
+        async: false,
+        dataType: 'json',
+        timeout: App.timeout,
+        success: function (data) {
+          upgradeVersion = upgradeVersion.replace(/HDP-/, '');
+          data.filterProperty('name', 'HDP').mapProperty('version').forEach(function(version){
+            upgradeVersion = (upgradeVersion < version) ? version : upgradeVersion;
+          });
+          installedServices = data.findProperty('version', App.currentStackVersion.replace(/HDP-/, ''));
+          newServices = data.findProperty('version', upgradeVersion);
+          upgradeVersion = 'HDP-' + upgradeVersion;
+        },
+        error: function (request, ajaxOptions, error) {
+          console.log('Error message is: ' + request.responseText);
+        },
+        statusCode: require('data/statusCodes')
+      });
+      this.set('upgradeVersion', upgradeVersion);
+      this.parseServicesInfo(installedServices, newServices);
     }
-  },
+  }.observes('App.router.clusterController.isLoaded'),
   /**
-   * load services info(versions, description)
+   * parse services info(versions, description) by version
    */
-  loadServicesFromServer: function () {
-    var displayOrderConfig = require('data/services');
+  parseServicesInfo: function (oldServices, newServices) {
     var result = [];
-    var method = 'GET';
-    var url = App.formatUrl(
-      App.apiPrefix + App.get('stackVersionURL'),
-      {},
-      '/data/wizard/stack/hdp/version/1.2.0.json'
-    );
-    var self = this;
-    $.ajax({
-      type: method,
-      url: url,
-      async: false,
-      dataType: 'text',
-      timeout: App.timeout,
-      success: function (data) {
-        var jsonData = jQuery.parseJSON(data);
-
-        // loop through all the service components
-        for (var i = 0; i < displayOrderConfig.length; i++) {
-          var entry = jsonData.services.findProperty("name", displayOrderConfig[i].serviceName);
-          if(self.get('installedServices').contains(entry.name)){
-            var myService = Em.Object.create({
-              serviceName: entry.name,
-              displayName: displayOrderConfig[i].displayName,
-              isDisabled: i === 0,
-              isSelected: true,
-              isInstalled: false,
-              isHidden: displayOrderConfig[i].isHidden,
-              description: entry.comment,
-              version: entry.version,
-              newVersion: '1.3.0'
-            });
-            result.push(myService);
-          }
+    var installedServices = App.Service.find().mapProperty('serviceName');
+    var displayOrderConfig = require('data/services');
+    // loop through all the service components
+    for (var i = 0; i < displayOrderConfig.length; i++) {
+      var entry = oldServices.services.findProperty("name", displayOrderConfig[i].serviceName);
+      if (installedServices.contains(entry.name)) {
+        var myService = Em.Object.create({
+          serviceName: entry.name,
+          displayName: displayOrderConfig[i].displayName,
+          isDisabled: i === 0,
+          isSelected: true,
+          isInstalled: false,
+          isHidden: displayOrderConfig[i].isHidden,
+          description: entry.comment,
+          version: entry.version,
+          newVersion: newServices.services.findProperty("name", displayOrderConfig[i].serviceName).version
+        });
+        //From 1.3.0 for Hive we display only "Hive" (but it installes HCat and WebHCat as well)
+        if (this.get('upgradeVersion').replace(/HDP-/, '') >= '1.3.0' && displayOrderConfig[i].serviceName == 'HIVE') {
+          myService.set('displayName', 'Hive');
         }
-      },
-      error: function (request, ajaxOptions, error) {
-        console.log('Error message is: ' + request.responseText);
-      },
-      statusCode: require('data/statusCodes')
-    });
+        result.push(myService);
+      }
+    }
     this.set('services', result);
-  }.observes('upgradeVersion')
+  }
 });
\ No newline at end of file

Modified: incubator/ambari/trunk/ambari-web/app/messages.js
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/messages.js?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/messages.js (original)
+++ incubator/ambari/trunk/ambari-web/app/messages.js Fri Feb 22 08:04:48 2013
@@ -103,6 +103,8 @@ Em.I18n.translations = {
   'common.error': 'Error',
   'common.loading': 'Loading',
   'common.search': 'Search',
+  'common.confirm': 'Confirm',
+  'common.upgrade': 'Upgrade',
 
   'question.sure':'Are you sure {0}?',
 
@@ -386,6 +388,13 @@ Em.I18n.translations = {
   'installer.step10.installTime.seconds':'Install and start completed in {0} seconds',
   'installer.step10.installTime.minutes':'Install and start completed in {0} minutes and {1} seconds',
 
+  'installer.stackUpgrade.header':'Stack Upgrade Wizard',
+  'installer.stackUpgrade.step1.newVersion':'New Version',
+  'installer.stackUpgrade.step1.installedVersion':'Installed Version',
+  'installer.stackUpgrade.step1.installedStackVersion':'Installed stack version',
+  'installer.stackUpgrade.step1.upgradeStackVersion':'Upgrade stack version',
+  'installer.stackUpgrade.step1.description':'This Stack Upgrade Wizard will walk you through the steps of upgrading the cluster to the latest available stack version.',
+
   'form.create':'Create',
   'form.save':'Save',
   'form.cancel':'Cancel',

Modified: incubator/ambari/trunk/ambari-web/app/router.js
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/router.js?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/router.js (original)
+++ incubator/ambari/trunk/ambari-web/app/router.js Fri Feb 22 08:04:48 2013
@@ -38,6 +38,7 @@ App.Router = Em.Router.extend({
     this.get('installerController').clear();
     this.get('addHostController').clear();
     this.get('addServiceController').clear();
+    this.get('stackUpgradeController').clear();
     for (i = 1; i < 11; i++) {
       this.set('wizardStep' + i + 'Controller.hasSubmitted', false);
       this.set('wizardStep' + i + 'Controller.isDisabled', true);

Modified: incubator/ambari/trunk/ambari-web/app/routes/main.js
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/routes/main.js?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/routes/main.js (original)
+++ incubator/ambari/trunk/ambari-web/app/routes/main.js Fri Feb 22 08:04:48 2013
@@ -261,13 +261,17 @@ module.exports = Em.Route.extend({
         router.get('mainAdminController').connectOutlet('mainAdminAudit');
       }
     }),
+    upgradeStack:function (router, event) {
+      if(!$(event.currentTarget).hasClass('inactive')){
+        router.transitionTo('stackUpgrade');
+      }
+    },
 
     adminNavigate:function (router, object) {
-      Em.run.next(function () {
-        router.transitionTo('admin' + object.context.capitalize());
-      });
+      router.transitionTo('admin' + object.context.capitalize());
     }
   }),
+  stackUpgrade:require('routes/stack_upgrade'),
 
   dashboard:Em.Route.extend({
     route:'/dashboard',

Modified: incubator/ambari/trunk/ambari-web/app/styles/application.less
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/styles/application.less?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/styles/application.less (original)
+++ incubator/ambari/trunk/ambari-web/app/styles/application.less Fri Feb 22 08:04:48 2013
@@ -395,6 +395,19 @@ h1 {
   }
 }
 
+#stack-upgrade {
+  .content {
+    padding: 25px;
+    background-color: #fff;
+  }
+  .box {
+    padding: 5px;
+  }
+  table th {
+    vertical-align: middle;
+  }
+}
+
 #host-log {
   .stderr, .stdout {
     background-color: #f0f0f0;

Modified: incubator/ambari/trunk/ambari-web/app/templates/main/admin/cluster.hbs
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/templates/main/admin/cluster.hbs?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/templates/main/admin/cluster.hbs (original)
+++ incubator/ambari/trunk/ambari-web/app/templates/main/admin/cluster.hbs Fri Feb 22 08:04:48 2013
@@ -18,7 +18,7 @@
 
 <div class="admin-cluster">
     <div class="header">
-        <strong>{{t admin.cluster.stackVersion}}: {{currentVersion}}
+        <strong>{{t admin.cluster.stackVersion}}: {{App.currentStackVersion}}
             (<a href="true" {{bindAttr class="view.isUpgradeAvailable::inactive"}}{{action "upgradeStack"}}>
             {{#if view.isUpgradeAvailable}}{{t admin.cluster.upgradeAvailable}}: {{upgradeVersion}}
             {{else}} {{t admin.cluster.upgradeUnavailable}}

Modified: incubator/ambari/trunk/ambari-web/app/utils/db.js
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/utils/db.js?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/utils/db.js (original)
+++ incubator/ambari/trunk/ambari-web/app/utils/db.js Fri Feb 22 08:04:48 2013
@@ -53,7 +53,8 @@ App.db.cleanUp = function () {
     },
     'Installer' : {},
     'AddHost' : {},
-    'AddService' : {}
+    'AddService' : {},
+    'StackUpgrade' : {}
   };
   console.log("In cleanup./..");
   localStorage.setObject('ambari', App.db.data);

Modified: incubator/ambari/trunk/ambari-web/app/views.js
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/views.js?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/views.js (original)
+++ incubator/ambari/trunk/ambari-web/app/views.js Fri Feb 22 08:04:48 2013
@@ -49,6 +49,7 @@ require('views/main/host/metrics/network
 require('views/main/host/metrics/processes');
 require('views/main/admin');
 require('views/main/admin/cluster');
+require('views/main/admin/stack_upgrade');
 require('views/main/admin/advanced');
 require('views/main/admin/advanced/password');
 require('views/main/admin/audit');
@@ -120,4 +121,5 @@ require('views/wizard/step7_view');
 require('views/wizard/step8_view');
 require('views/wizard/step9_view');
 require('views/wizard/step10_view');
+require('views/wizard/stack_upgrade/step1_view');
 require('views/loading');

Modified: incubator/ambari/trunk/ambari-web/app/views/main/admin/cluster.js
URL: http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-web/app/views/main/admin/cluster.js?rev=1448922&r1=1448921&r2=1448922&view=diff
==============================================================================
--- incubator/ambari/trunk/ambari-web/app/views/main/admin/cluster.js (original)
+++ incubator/ambari/trunk/ambari-web/app/views/main/admin/cluster.js Fri Feb 22 08:04:48 2013
@@ -22,9 +22,6 @@ App.MainAdminClusterView = Em.View.exten
   templateName: require('templates/main/admin/cluster'),
 
   isUpgradeAvailable: function(){
-    return this.get('controller.upgradeVersion').replace(/HDP-/, '') > this.get('controller.currentVersion').replace(/HDP-/, '');
-  }.property('controller.upgradeVersion', 'controller.currentVersion'),
-  didInsertElement: function(){
-    this.get('controller').updateUpgradeVersion();
-  }
+    return this.get('controller.upgradeVersion').replace(/HDP-/, '') > App.currentStackVersion.replace(/HDP-/, '');
+  }.property('controller.upgradeVersion', 'App.currentStackVersion')
 });
\ No newline at end of file