Kaynağa Gözat

AMBARI-8965 Upgrade Progress: Show "Ignore and Continue" and "Retry" buttons based on the API response. (atkach)

Andrii Tkach 10 yıl önce
ebeveyn
işleme
b6f3dd6b40

+ 5 - 5
ambari-web/app/templates/main/admin/stack_upgrade/upgrade_group.hbs

@@ -83,12 +83,12 @@
         {{t admin.stackUpgrade.dialog.failed}} 
         <a href="#" {{action toggleExpanded view.content controller.upgradeData.upgradeGroups target="view"}}>{{view.failedItem.context}}</a>
       </div>
-      <div class="button-row">
-        {{#if view.ignoreAvailable}}
+      {{#if view.isHoldingState}}
+        <div class="button-row">
           <button class="btn btn-warning" {{action continue view.failedItem target="view"}}>{{t admin.stackUpgrade.dialog.continue}}</button>
-        {{/if}}
-        <button class="btn" {{action retry view.failedItem target="view"}}>{{t common.retry}}</button>
-      </div>
+          <button class="btn" {{action retry view.failedItem target="view"}}>{{t common.retry}}</button>
+        </div>
+      {{/if}}
     </div>
   {{/if}}
   {{#if view.isManualOpened}}

+ 1 - 0
ambari-web/app/utils/helper.js

@@ -746,6 +746,7 @@ App.registerBoundHelper('statusIcon', Em.View.extend({
     'COMPLETED': 'icon-ok completed',
     'WARNING': 'icon-warning-sign',
     'FAILED': 'icon-exclamation-sign failed',
+    'HOLDING_FAILED': 'icon-exclamation-sign failed',
     'PENDING': 'icon-cog pending',
     'QUEUED': 'icon-cog queued',
     'IN_PROGRESS': 'icon-cogs in_progress',

+ 4 - 4
ambari-web/app/views/main/admin/stack_upgrade/upgrade_group_view.js

@@ -88,12 +88,12 @@ App.upgradeGroupView = Em.View.extend({
   }.property('manualItem'),
 
   /**
-   * indicate whether failed item can be skipped in order to continue Upgrade
+   * indicate whether failed item can be skipped or retried in order to continue Upgrade
    * @type {boolean}
    */
-  ignoreAvailable: function () {
-    return Boolean(this.get('failedItem') && ['HOLDING_FAILED', 'HOLDING_TIMED_OUT'].contains(this.get('failedItem.status')));
-  }.property('failedItem'),
+  isHoldingState: function () {
+    return Boolean(this.get('failedItem.status') && this.get('failedItem.status').contains('HOLDING'));
+  }.property('failedItem.status'),
 
   /**
    * set status to Upgrade item

+ 3 - 3
ambari-web/test/views/main/admin/stack_upgrade/upgrade_group_view_test.js

@@ -174,7 +174,7 @@ describe('App.upgradeGroupView', function () {
     });
   });
 
-  describe("#ignoreAvailable", function () {
+  describe("#isHoldingState", function () {
     var testCases = [
       {
         data: {
@@ -206,8 +206,8 @@ describe('App.upgradeGroupView', function () {
         view.reopen({
           failedItem: test.data.failedItem
         });
-        view.propertyDidChange('ignoreAvailable');
-        expect(view.get('ignoreAvailable')).to.equal(test.result);
+        view.propertyDidChange('isHoldingState');
+        expect(view.get('isHoldingState')).to.equal(test.result);
       });
     });
   });