You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by at...@apache.org on 2015/01/20 13:24:16 UTC
ambari git commit: AMBARI-9210 Rolling Upgrade dialog should not have
'Cancel Upgrade' button. (atkach)
Repository: ambari
Updated Branches:
refs/heads/trunk 6a464426a -> d9836e314
AMBARI-9210 Rolling Upgrade dialog should not have 'Cancel Upgrade' button. (atkach)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/d9836e31
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/d9836e31
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/d9836e31
Branch: refs/heads/trunk
Commit: d9836e314b0f76adb0b5387594572b8f489c9d36
Parents: 6a46442
Author: Andrii Tkach <at...@hortonworks.com>
Authored: Tue Jan 20 13:32:06 2015 +0200
Committer: Andrii Tkach <at...@hortonworks.com>
Committed: Tue Jan 20 13:32:06 2015 +0200
----------------------------------------------------------------------
.../main/admin/stack_and_upgrade_controller.js | 31 +++++++--
.../stack_upgrade/stack_upgrade_wizard.hbs | 4 +-
.../admin/stack_upgrade/upgrade_wizard_view.js | 34 +---------
.../admin/stack_and_upgrade_controller_test.js | 39 ++++++++++-
.../stack_upgrade/upgrade_wizard_view_test.js | 68 ++++----------------
5 files changed, 80 insertions(+), 96 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/d9836e31/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js b/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
index 247f023..365a89f 100644
--- a/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
+++ b/ambari-web/app/controllers/main/admin/stack_and_upgrade_controller.js
@@ -254,13 +254,14 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
/**
* downgrade confirmation popup
+ * @param {object} event
*/
- confirmDowngrade: function () {
+ confirmDowngrade: function (event) {
var self = this;
var currentVersion = this.get('currentVersion');
return App.showConfirmationPopup(
function() {
- self.downgrade.call(self, currentVersion);
+ self.downgrade.call(self, currentVersion, event);
},
Em.I18n.t('admin.stackUpgrade.downgrade.body').format(currentVersion.repository_name),
null,
@@ -271,9 +272,11 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
/**
* make call to start downgrade process
- * @params {object} currentVersion
+ * @param {object} currentVersion
+ * @param {object} event
*/
- downgrade: function (currentVersion) {
+ downgrade: function (currentVersion, event) {
+ this.setUpgradeItemStatus(event.context, 'FAILED');
App.ajax.send({
name: 'admin.downgrade.start',
sender: this,
@@ -497,5 +500,25 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
}
});
return dfd.promise();
+ },
+
+ /**
+ * set status to Upgrade item
+ * @param item
+ * @param status
+ */
+ setUpgradeItemStatus: function(item, status) {
+ return App.ajax.send({
+ name: 'admin.upgrade.upgradeItem.setState',
+ sender: this,
+ data: {
+ upgradeId: item.get('request_id'),
+ itemId: item.get('stage_id'),
+ groupId: item.get('group_id'),
+ status: status
+ }
+ }).done(function () {
+ item.set('status', status);
+ });
}
});
http://git-wip-us.apache.org/repos/asf/ambari/blob/d9836e31/ambari-web/app/templates/main/admin/stack_upgrade/stack_upgrade_wizard.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/main/admin/stack_upgrade/stack_upgrade_wizard.hbs b/ambari-web/app/templates/main/admin/stack_upgrade/stack_upgrade_wizard.hbs
index 93b9177..08aba47 100644
--- a/ambari-web/app/templates/main/admin/stack_upgrade/stack_upgrade_wizard.hbs
+++ b/ambari-web/app/templates/main/admin/stack_upgrade/stack_upgrade_wizard.hbs
@@ -65,12 +65,10 @@
{{#if view.isHoldingState}}
<div class="button-row">
{{#if view.isDowngradeAvailable}}
- <button class="btn btn-danger" {{action confirmDowngrade target="controller"}}>{{t common.downgrade}}</button>
+ <button class="btn btn-danger" {{action confirmDowngrade view.failedItem target="controller"}}>{{t common.downgrade}}</button>
{{/if}}
{{#if view.failedItem.skippable}}
<button class="btn btn-warning" {{action continue view.failedItem target="view"}}>{{t admin.stackUpgrade.dialog.continue}}</button>
- {{else}}
- <button class="btn btn-danger" {{action cancel view.failedItem target="view"}}>{{t admin.stackUpgrade.dialog.cancel}}</button>
{{/if}}
<button class="btn" {{action retry view.failedItem target="view"}}>{{t common.retry}}</button>
</div>
http://git-wip-us.apache.org/repos/asf/ambari/blob/d9836e31/ambari-web/app/views/main/admin/stack_upgrade/upgrade_wizard_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/main/admin/stack_upgrade/upgrade_wizard_view.js b/ambari-web/app/views/main/admin/stack_upgrade/upgrade_wizard_view.js
index 102f845..80727cc 100644
--- a/ambari-web/app/views/main/admin/stack_upgrade/upgrade_wizard_view.js
+++ b/ambari-web/app/views/main/admin/stack_upgrade/upgrade_wizard_view.js
@@ -236,32 +236,12 @@ App.upgradeWizardView = Em.View.extend({
},
/**
- * set status to Upgrade item
- * @param item
- * @param status
- */
- setUpgradeItemStatus: function(item, status) {
- return App.ajax.send({
- name: 'admin.upgrade.upgradeItem.setState',
- sender: this,
- data: {
- upgradeId: item.get('request_id'),
- itemId: item.get('stage_id'),
- groupId: item.get('group_id'),
- status: status
- }
- }).done(function () {
- item.set('status', status);
- });
- },
-
- /**
* set current upgrade item state to FAILED (for HOLDING_FAILED) or TIMED_OUT (for HOLDING_TIMED_OUT)
* in order to ignore fail and continue Upgrade
* @param {object} event
*/
continue: function (event) {
- this.setUpgradeItemStatus(event.context, event.context.get('status').slice(8));
+ this.get('controller').setUpgradeItemStatus(event.context, event.context.get('status').slice(8));
},
/**
@@ -269,7 +249,7 @@ App.upgradeWizardView = Em.View.extend({
* @param {object} event
*/
retry: function (event) {
- this.setUpgradeItemStatus(event.context, 'PENDING');
+ this.get('controller').setUpgradeItemStatus(event.context, 'PENDING');
},
/**
@@ -277,14 +257,6 @@ App.upgradeWizardView = Em.View.extend({
* @param {object} event
*/
complete: function (event) {
- this.setUpgradeItemStatus(event.context, 'COMPLETED');
- },
-
- /**
- * set current upgrade item state to FAILED in order to cancel upgrade
- * @param {object} event
- */
- cancel: function (event) {
- this.setUpgradeItemStatus(event.context, 'FAILED');
+ this.get('controller').setUpgradeItemStatus(event.context, 'COMPLETED');
}
});
http://git-wip-us.apache.org/repos/asf/ambari/blob/d9836e31/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js b/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js
index fcec544..cd9703c 100644
--- a/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js
+++ b/ambari-web/test/controllers/main/admin/stack_and_upgrade_controller_test.js
@@ -418,15 +418,18 @@ describe('App.MainAdminStackAndUpgradeController', function() {
describe("#downgrade()", function() {
before(function () {
sinon.stub(App.ajax, 'send', Em.K);
+ sinon.stub(controller, 'setUpgradeItemStatus');
});
after(function () {
App.ajax.send.restore();
+ controller.setUpgradeItemStatus.restore();
});
it("make ajax call", function() {
controller.downgrade(Em.Object.create({
repository_version: '2.2',
repository_name: 'HDP-2.2'
- }));
+ }), {context: 'context'});
+ expect(controller.setUpgradeItemStatus.calledWith('context', 'FAILED')).to.be.true;
expect(App.ajax.send.getCall(0).args[0]).to.eql({
name: 'admin.downgrade.start',
sender: controller,
@@ -472,4 +475,38 @@ describe('App.MainAdminStackAndUpgradeController', function() {
expect(App.ajax.send.calledOnce).to.be.true;
});
});
+
+ describe("#setUpgradeItemStatus()", function () {
+ before(function () {
+ sinon.stub(App.ajax, 'send', function () {
+ return {
+ done: function (callback) {
+ callback();
+ }
+ }
+ });
+ });
+ after(function () {
+ App.ajax.send.restore();
+ });
+ it("", function () {
+ var item = Em.Object.create({
+ request_id: 1,
+ stage_id: 1,
+ group_id: 1
+ });
+ controller.setUpgradeItemStatus(item, 'PENDING');
+ expect(App.ajax.send.getCall(0).args[0]).to.eql({
+ name: 'admin.upgrade.upgradeItem.setState',
+ sender: controller,
+ data: {
+ upgradeId: 1,
+ itemId: 1,
+ groupId: 1,
+ status: 'PENDING'
+ }
+ });
+ expect(item.get('status')).to.equal('PENDING');
+ });
+ });
});
http://git-wip-us.apache.org/repos/asf/ambari/blob/d9836e31/ambari-web/test/views/main/admin/stack_upgrade/upgrade_wizard_view_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/views/main/admin/stack_upgrade/upgrade_wizard_view_test.js b/ambari-web/test/views/main/admin/stack_upgrade/upgrade_wizard_view_test.js
index 2e63f92..0beddb0 100644
--- a/ambari-web/test/views/main/admin/stack_upgrade/upgrade_wizard_view_test.js
+++ b/ambari-web/test/views/main/admin/stack_upgrade/upgrade_wizard_view_test.js
@@ -26,7 +26,8 @@ describe('App.upgradeWizardView', function () {
});
view.reopen({
controller: Em.Object.create({
- loadUpgradeData: Em.K
+ loadUpgradeData: Em.K,
+ setUpgradeItemStatus: Em.K
}),
activeGroup: Em.Object.create()
});
@@ -124,87 +125,40 @@ describe('App.upgradeWizardView', function () {
describe("#continue()", function () {
before(function () {
- sinon.stub(view, 'setUpgradeItemStatus', Em.K);
+ sinon.stub(view.get('controller'), 'setUpgradeItemStatus', Em.K);
});
after(function () {
- view.setUpgradeItemStatus.restore();
+ view.get('controller').setUpgradeItemStatus.restore();
});
it("", function () {
view.continue({context: Em.Object.create({'status': 'HOLDING_FAILED'})});
- expect(view.setUpgradeItemStatus.calledWith(Em.Object.create({'status': 'HOLDING_FAILED'}), 'FAILED')).to.be.true;
+ expect(view.get('controller').setUpgradeItemStatus.calledWith(Em.Object.create({'status': 'HOLDING_FAILED'}), 'FAILED')).to.be.true;
});
});
describe("#complete()", function () {
before(function () {
- sinon.stub(view, 'setUpgradeItemStatus', Em.K);
+ sinon.stub(view.get('controller'), 'setUpgradeItemStatus', Em.K);
});
after(function () {
- view.setUpgradeItemStatus.restore();
+ view.get('controller').setUpgradeItemStatus.restore();
});
it("", function () {
view.complete({context: Em.Object.create({'status': 'FAILED'})});
- expect(view.setUpgradeItemStatus.calledWith(Em.Object.create({'status': 'FAILED'}), 'COMPLETED')).to.be.true;
+ expect(view.get('controller').setUpgradeItemStatus.calledWith(Em.Object.create({'status': 'FAILED'}), 'COMPLETED')).to.be.true;
});
});
describe("#retry()", function () {
before(function () {
- sinon.stub(view, 'setUpgradeItemStatus', Em.K);
+ sinon.stub(view.get('controller'), 'setUpgradeItemStatus', Em.K);
});
after(function () {
- view.setUpgradeItemStatus.restore();
+ view.get('controller').setUpgradeItemStatus.restore();
});
it("", function () {
view.retry({context: Em.Object.create({'status': 'FAILED'})});
- expect(view.setUpgradeItemStatus.calledWith(Em.Object.create({'status': 'FAILED'}), 'PENDING')).to.be.true;
- });
- });
-
- describe("#cancel()", function () {
- before(function () {
- sinon.stub(view, 'setUpgradeItemStatus', Em.K);
- });
- after(function () {
- view.setUpgradeItemStatus.restore();
- });
- it("cabcel request", function () {
- view.cancel({context: Em.Object.create({'status': 'HOLDING_FAILED'})});
- expect(view.setUpgradeItemStatus.calledWith(Em.Object.create({'status': 'HOLDING_FAILED'}), 'FAILED')).to.be.true;
- });
- });
-
- describe("#setUpgradeItemStatus()", function () {
- before(function () {
- sinon.stub(App.ajax, 'send', function () {
- return {
- done: function (callback) {
- callback();
- }
- }
- });
- });
- after(function () {
- App.ajax.send.restore();
- });
- it("", function () {
- var item = Em.Object.create({
- request_id: 1,
- stage_id: 1,
- group_id: 1
- })
- view.setUpgradeItemStatus(item, 'PENDING');
- expect(App.ajax.send.getCall(0).args[0]).to.eql({
- name: 'admin.upgrade.upgradeItem.setState',
- sender: view,
- data: {
- upgradeId: 1,
- itemId: 1,
- groupId: 1,
- status: 'PENDING'
- }
- });
- expect(item.get('status')).to.equal('PENDING');
+ expect(view.get('controller').setUpgradeItemStatus.calledWith(Em.Object.create({'status': 'FAILED'}), 'PENDING')).to.be.true;
});
});