Updated Branches: refs/heads/trunk 8682a95e4 -> 8ba695725
AMBARI-3131. Ganglia / Nagios web links shown in Ambari Web are broken when HTTPS is enabled. (Andrii Babiichuk via yusaku) Project: http://git-wip-us.apache.org/repos/asf/incubator-ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ambari/commit/8ba69572 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ambari/tree/8ba69572 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ambari/diff/8ba69572 Branch: refs/heads/trunk Commit: 8ba6957253de840a08fb31c2d1ef7708bbaeae20 Parents: 8682a95 Author: Yusaku Sako <[email protected]> Authored: Fri Sep 6 11:25:11 2013 -0700 Committer: Yusaku Sako <[email protected]> Committed: Fri Sep 6 11:25:29 2013 -0700 ---------------------------------------------------------------------- ambari-web/app/models/quick_links.js | 60 ++++++++++---------- .../app/views/common/quick_view_link_view.js | 21 ++++++- 2 files changed, 50 insertions(+), 31 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/8ba69572/ambari-web/app/models/quick_links.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/models/quick_links.js b/ambari-web/app/models/quick_links.js index 4e2fdf4..38809e1 100644 --- a/ambari-web/app/models/quick_links.js +++ b/ambari-web/app/models/quick_links.js @@ -28,181 +28,181 @@ App.QuickLinks.FIXTURES = [ { id:1, label:'NameNode UI', - url:'http://%@:50070/dfshealth.jsp', + url:'%@://%@:50070/dfshealth.jsp', service_id: 'HDFS' }, { id:2, label:'NameNode logs', - url:'http://%@:50070/logs', + url:'%@://%@:50070/logs', service_id: 'HDFS' }, { id:3, label:'NameNode JMX', - url:'http://%@:50070/jmx', + url:'%@://%@:50070/jmx', service_id: 'HDFS' }, { id:4, label:'Thread Stacks', - url:'http://%@:50070/stacks', + url:'%@://%@:50070/stacks', service_id: 'HDFS' }, { id:5, label:'JobTracker UI', - url:'http://%@:50030/jobtracker.jsp', + url:'%@://%@:50030/jobtracker.jsp', service_id: 'MAPREDUCE' }, { id:6, label:'Scheduling Info', - url:'http://%@:50030/scheduler', + url:'%@://%@:50030/scheduler', service_id: 'MAPREDUCE' }, { id:7, label:'Running Jobs', - url:'http://%@:50030/jobtracker.jsp#running_jobs', + url:'%@://%@:50030/jobtracker.jsp#running_jobs', service_id: 'MAPREDUCE' }, { id:8, label:'Retired Jobs', - url:'http://%@:50030/jobtracker.jsp#retired_jobs', + url:'%@://%@:50030/jobtracker.jsp#retired_jobs', service_id: 'MAPREDUCE' }, { id:9, label:'JobHistory Server', - url:'http://%@:51111/jobhistoryhome.jsp', + url:'%@://%@:51111/jobhistoryhome.jsp', service_id: 'MAPREDUCE' }, { id:10, label:'JobTracker Logs', - url:'http://%@:50030/logs', + url:'%@://%@:50030/logs', service_id: 'MAPREDUCE' }, { id:11, label:'JobTracker JMX', - url:'http://%@:50030/jmx', + url:'%@://%@:50030/jmx', service_id: 'MAPREDUCE' }, { id:12, label:'Thread Stacks', - url:'http://%@:50030/stacks', + url:'%@://%@:50030/stacks', service_id: 'MAPREDUCE' }, { id:13, label:'HBase Master UI', - url:'http://%@:60010/master-status', + url:'%@://%@:60010/master-status', service_id: 'HBASE' }, { id:14, label:'HBase Logs', - url:'http://%@:60010/logs', + url:'%@://%@:60010/logs', service_id: 'HBASE' }, { id:15, label:'Zookeeper Info', - url:'http://%@:60010/zk.jsp', + url:'%@://%@:60010/zk.jsp', service_id: 'HBASE' }, { id:16, label:'HBase Master JMX', - url:'http://%@:60010/jmx', + url:'%@://%@:60010/jmx', service_id: 'HBASE' }, { id:17, label:'Debug Dump', - url:'http://%@:60010/dump', + url:'%@://%@:60010/dump', service_id: 'HBASE' }, { id:18, label:'Thread Stacks', - url:'http://%@:60010/stacks', + url:'%@://%@:60010/stacks', service_id: 'HBASE' }, { id:19, label:'Oozie Web UI', - url:'http://%@:11000/oozie', + url:'%@://%@:11000/oozie', service_id: 'OOZIE' }, { id:20, label:'Ganglia Web UI', - url:'http://%@/ganglia', + url:'%@://%@/ganglia', service_id: 'GANGLIA' }, { id:21, label:'Nagios Web UI', - url:'http://%@/nagios', + url:'%@://%@/nagios', service_id: 'NAGIOS' }, { id:22, label:'Hue Web UI', - url:'http://%@/hue', + url:'%@://%@/hue', service_id: 'HUE' }, { id:23, label:'ResourceManager UI', - url:'http://%@:8088', + url:'%@://%@:8088', service_id: 'YARN' }, { id:24, label:'ResourceManager logs', - url:'http://%@:8088/logs', + url:'%@://%@:8088/logs', service_id: 'YARN' }, { id:25, label:'ResourceManager JMX', - url:'http://%@:8088/jmx', + url:'%@://%@:8088/jmx', service_id: 'YARN' }, { id:26, label:'Thread Stacks', - url:'http://%@:8088/stacks', + url:'%@://%@:8088/stacks', service_id: 'YARN' }, { id:27, label:'JobHistory UI', - url:'http://%@:19888', + url:'%@://%@:19888', service_id: 'MAPREDUCE2' }, { id:28, label:'JobHistory logs', - url:'http://%@:19888/logs', + url:'%@://%@:19888/logs', service_id: 'MAPREDUCE2' }, { id:29, label:'JobHistory JMX', - url:'http://%@:19888/jmx', + url:'%@://%@:19888/jmx', service_id: 'MAPREDUCE2' }, { id:30, label:'Thread Stacks', - url:'http://%@:19888/stacks', + url:'%@://%@:19888/stacks', service_id: 'MAPREDUCE2' } ]; http://git-wip-us.apache.org/repos/asf/incubator-ambari/blob/8ba69572/ambari-web/app/views/common/quick_view_link_view.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/views/common/quick_view_link_view.js b/ambari-web/app/views/common/quick_view_link_view.js index 624d40a..5e2fa50 100644 --- a/ambari-web/app/views/common/quick_view_link_view.js +++ b/ambari-web/app/views/common/quick_view_link_view.js @@ -20,6 +20,9 @@ var App = require('app'); App.QuickViewLinks = Em.View.extend({ + ambariProperties: function() { + return App.router.get('clusterController.ambariProperties'); + }, /** * Updated quick links. Here we put correct hostname to url */ @@ -27,6 +30,7 @@ App.QuickViewLinks = Em.View.extend({ var serviceName = this.get('content.serviceName'); var components = this.get('content.hostComponents'); var host; + var self = this; switch (serviceName) { case "HDFS": @@ -71,13 +75,28 @@ App.QuickViewLinks = Em.View.extend({ ]; } return this.get('content.quickLinks').map(function (item) { + var protocol = self.setProtocol(item.get('service_id')); if (item.get('url')) { - item.set('url', item.get('url').fmt(host)); + item.set('url', item.get('url').fmt(protocol,host)); } return item; }); }.property('[email protected]'), + setProtocol: function(service_id){ + var properties = this.ambariProperties(); + switch(service_id){ + case "GANGLIA": + return (properties && properties.hasOwnProperty('ganglia.https') && properties['ganglia.https']) ? "https" : "http"; + break; + case "NAGIOS": + return (properties && properties.hasOwnProperty('nagios.https') && properties['nagios.https']) ? "https" : "http"; + break; + default: + return "http"; + } + }, + linkTarget: function () { switch (this.get('content.serviceName').toLowerCase()) { case "hdfs":
