Przeglądaj źródła

AMBARI-6410. Usability UX: Launch NameNode HA Wizard from Services Actions menu

Srimanth Gunturi 11 lat temu
rodzic
commit
fcc87a60af

+ 2 - 2
ambari-web/app/controllers/main/admin/highAvailability_controller.js

@@ -55,7 +55,7 @@ App.MainAdminHighAvailabilityController = Em.Controller.extend({
         return false;
       }
     }
-    App.router.transitionTo('enableHighAvailability');
+    App.router.transitionTo('main.admin.enableHighAvailability');
     return true;
   },
 
@@ -78,7 +78,7 @@ App.MainAdminHighAvailabilityController = Em.Controller.extend({
   },
 
   disableHighAvailability: function () {
-    App.router.transitionTo('rollbackHighAvailability');
+    App.router.transitionTo('main.admin.rollbackHighAvailability');
   },
 
   setSecurityStatus: function () {

+ 12 - 0
ambari-web/app/controllers/main/service/item.js

@@ -358,6 +358,18 @@ App.MainServiceItemController = Em.Controller.extend({
     return (this.get('content.healthStatus') != 'green');
   }.property('content.healthStatus','isPending'),
 
+  enableHighAvailability: function() {
+    var ability_controller = App.router.get('mainAdminHighAvailabilityController');
+    ability_controller.setSecurityStatus();
+    ability_controller.enableHighAvailability();
+  },
+
+  disableHighAvailability: function() {
+    var ability_controller = App.router.get('mainAdminHighAvailabilityController');
+    ability_controller.setSecurityStatus();
+    ability_controller.disableHighAvailability();
+  },
+
   isPending:true
 
 });

+ 9 - 0
ambari-web/app/views/main/service/item.js

@@ -47,6 +47,15 @@ App.MainServiceItemView = Em.View.extend({
       if (serviceName == 'FLUME') {
         options.push({action: 'refreshConfigs', cssClass: 'icon-refresh', 'label': Em.I18n.t('hosts.host.details.refreshConfigs'), disabled: disableRefreshConfgis});
       }
+      if (serviceName == 'HDFS') {
+        if (App.isHaEnabled) {
+          if (App.supports.autoRollbackHA) {
+            options.push({action: 'disableHighAvailability', cssClass: 'icon-arrow-down', 'label': Em.I18n.t('admin.highAvailability.button.disable')});
+          }
+        } else {
+          options.push({action: 'enableHighAvailability', cssClass: 'icon-arrow-up', 'label': Em.I18n.t('admin.highAvailability.button.enable')});
+        }
+      }
       // Service Check and Reassign Master actions
       switch (serviceName) {
         case 'GANGLIA':