Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 8A52020049C for ; Fri, 11 Aug 2017 11:23:23 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 88BCE16D068; Fri, 11 Aug 2017 09:23:23 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 585D716D065 for ; Fri, 11 Aug 2017 11:23:22 +0200 (CEST) Received: (qmail 14765 invoked by uid 500); 11 Aug 2017 09:23:21 -0000 Mailing-List: contact commits-help@ambari.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: ambari-dev@ambari.apache.org Delivered-To: mailing list commits@ambari.apache.org Received: (qmail 14755 invoked by uid 99); 11 Aug 2017 09:23:21 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Aug 2017 09:23:21 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 27A41E96DA; Fri, 11 Aug 2017 09:23:19 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: atkach@apache.org To: commits@ambari.apache.org Message-Id: <006a22e856f04f708f583da182fbec9a@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: ambari git commit: AMBARI-21704 Upgrade Wizard Has Incorrect Title. (atkach) Date: Fri, 11 Aug 2017 09:23:19 +0000 (UTC) archived-at: Fri, 11 Aug 2017 09:23:23 -0000 Repository: ambari Updated Branches: refs/heads/branch-feature-AMBARI-21450 83e9d89f2 -> 9232f35cb AMBARI-21704 Upgrade Wizard Has Incorrect Title. (atkach) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/9232f35c Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/9232f35c Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/9232f35c Branch: refs/heads/branch-feature-AMBARI-21450 Commit: 9232f35cb8d8223854abb988299c517af387fc92 Parents: 83e9d89 Author: Andrii Tkach Authored: Thu Aug 10 19:31:06 2017 +0300 Committer: Andrii Tkach Committed: Thu Aug 10 20:40:32 2017 +0300 ---------------------------------------------------------------------- .../main/admin/stack_and_upgrade_controller.js | 59 ++++++++++++++------ ambari-web/app/messages.js | 9 +-- ambari-web/app/routes/stack_upgrade_routes.js | 9 +-- ambari-web/app/utils/ajax/ajax.js | 2 +- .../stack_upgrade/upgrade_version_box_view.js | 11 ++-- .../admin/stack_and_upgrade_controller_test.js | 39 +++++++++---- .../upgrade_version_box_view_test.js | 6 +- 7 files changed, 87 insertions(+), 48 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/9232f35c/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 d3bcb45..740562c 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 @@ -133,12 +133,33 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, * @type {string} */ wizardModalTitle: function () { - if (this.get('isDowngrade')) { - return Em.I18n.t('admin.stackUpgrade.dialog.downgrade.header').format(this.get('upgradeVersion')); - } - return Em.I18n.t('admin.stackUpgrade.dialog.header').format(this.get('upgradeVersion')); + var repoVersion = App.RepositoryVersion.find().findProperty('repositoryVersion', this.get('toVersion')); + return this.getUpgradeDowngradeHeader( + this.get('upgradeTypeDisplayName'), + this.get('upgradeVersion'), + this.get('isDowngrade'), + repoVersion && repoVersion.get('isPatch') + ); }.property('upgradeTypeDisplayName', 'upgradeVersion', 'isDowngrade'), + + /** + * @param {string} upgradeType + * @param {string} upgradeVersion + * @param {boolean} isDowngrade + * @param {boolean} isPatch + * @returns {string} + */ + getUpgradeDowngradeHeader: function(upgradeType, upgradeVersion, isDowngrade, isPatch) { + if (isDowngrade) { + return Em.I18n.t('admin.stackUpgrade.dialog.downgrade.header').format(upgradeVersion); + } + if (isPatch) { + return Em.I18n.t('admin.stackUpgrade.dialog.upgrade.patch.header').format(upgradeType, upgradeVersion); + } + return Em.I18n.t('admin.stackUpgrade.dialog.upgrade.header').format(upgradeType, upgradeVersion); + }, + /** * methods through which cluster could be upgraded, "allowed" indicated if the method is allowed * by stack upgrade path @@ -239,6 +260,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, wizardStorageProperties: [ 'upgradeId', 'upgradeVersion', + 'toVersion', 'currentVersion', 'upgradeTypeDisplayName', 'upgradeType', @@ -665,7 +687,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, }, Em.I18n.t('admin.stackUpgrade.downgrade.body').format(currentVersion.repository_name), null, - Em.I18n.t('admin.stackUpgrade.dialog.downgrade.header').format(currentVersion.repository_name), + Em.I18n.t('admin.stackUpgrade.dialog.downgrade.header').format(this.get('upgradeVersion')), Em.I18n.t('admin.stackUpgrade.downgrade.proceed') ); }, @@ -714,7 +736,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, sender: this, data: { value: currentVersion.repository_version, - label: currentVersion.repository_name, + label: this.get('upgradeVersion'), id: currentVersion.id, isDowngrade: true, upgradeType: this.get('upgradeType') @@ -875,7 +897,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, upgradeSuccessCallback: function (data, opt, params) { this.set('upgradeData', null); this.set('upgradeId', data.resources[0].Upgrade.request_id); - this.set('fromVersion', params.isDowngrade ? data.resources[0].Upgrade.associated_version : null); + this.set('toVersion', params.value); this.set('upgradeVersion', params.label); this.set('isDowngrade', !!params.isDowngrade); var upgradeMethod = this.get('upgradeMethods').findProperty('type', params.type), @@ -899,7 +921,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, this.setDBProperties({ upgradeVersion: params.label, upgradeId: data.resources[0].Upgrade.request_id, - fromVersion: params.isDowngrade ? data.resources[0].Upgrade.associated_version : null, + toVersion: params.value, upgradeState: 'PENDING', isDowngrade: !!params.isDowngrade, upgradeType: upgradeType, @@ -938,7 +960,8 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, this.get('upgradeMethods').forEach(function (method) { if (method.get('allowed')) { this.runPreUpgradeCheckOnly({ - value: version.get('id'), + id: version.get('id'), + value: version.get('repositoryVersion'), label: version.get('displayName'), type: method.get('type') }); @@ -1327,7 +1350,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, runPreUpgradeCheck: function(version) { var params = { id: version.get('id'), - value: version.get('id'), + value: version.get('repositoryVersion'), label: version.get('displayName'), type: version.get('upgradeType'), skipComponentFailures: version.get('skipComponentFailures') ? 'true' : 'false', @@ -1400,7 +1423,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, }, Em.I18n.t('admin.stackUpgrade.upgrade.retry.confirm.body').format(version.get('displayName')), null, - Em.I18n.t('admin.stackUpgrade.dialog.header').format(version.get('upgradeTypeDislayName'), version.get('displayName')) + this.getUpgradeDowngradeHeader(version.get('upgradeTypeDislayName'), version.get('displayName'), false) ); }, @@ -2016,11 +2039,9 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, data: { upgradeId: upgrade && upgrade.get('upgradeId'), id: version.get('id'), - value: version.get('id'), + value: version.get('repositoryVersion'), label: version.get('displayName'), - type: version.get('upgradeType'), - skipComponentFailures: version.get('skipComponentFailures') ? 'true' : 'false', - skipSCFailures: version.get('skipSCFailures') ? 'true' : 'false' + isDowngrade: true } }); }, @@ -2034,7 +2055,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, var upgradeType = this.get('upgradeMethods').findProperty('type', lastUpgradeData.Upgrade.upgrade_type); var isDowngrade = lastUpgradeData.Upgrade.direction === 'DOWNGRADE'; this.setDBProperties({ - fromVersion: isDowngrade ? lastUpgradeData.Upgrade.associated_version : null, + toVersion: lastUpgradeData.Upgrade.associated_version, upgradeId: lastUpgradeData.Upgrade.request_id, isDowngrade: isDowngrade, upgradeState: lastUpgradeData.Upgrade.request_status, @@ -2048,8 +2069,10 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage, }) }); this.loadRepoVersionsToModel().done(function () { - var toVersion = isDowngrade ? null : App.RepositoryVersion.find().findProperty('repositoryVersion', lastUpgradeData.Upgrade.associated_version); - self.setDBProperty('upgradeVersion', toVersion && toVersion.get('displayName')); + var toVersion = App.RepositoryVersion.find().findProperty('repositoryVersion', lastUpgradeData.Upgrade.associated_version); + if (!isDowngrade) { + self.setDBProperty('upgradeVersion', toVersion && toVersion.get('displayName')); + } self.initDBProperties(); self.loadUpgradeData(true); }); http://git-wip-us.apache.org/repos/asf/ambari/blob/9232f35c/ambari-web/app/messages.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js index 178d5d0..1e30536 100644 --- a/ambari-web/app/messages.js +++ b/ambari-web/app/messages.js @@ -1742,10 +1742,10 @@ Em.I18n.translations = { 'admin.stackVersions.version.upgrade.upgradeOptions.tolerance.option1': "Skip all Slave Component failures", 'admin.stackVersions.version.upgrade.upgradeOptions.tolerance.option2': "Skip all Service Check failures", 'admin.stackVersions.version.upgrade.upgradeOptions.tolerance.tooltip': "These upgrade failure tolerance options are useful when performing an upgrade on a large cluster and you want to minimize user intervention.", - 'admin.stackVersions.version.upgrade.upgradeOptions.RU.title': "Rolling Upgrade", + 'admin.stackVersions.version.upgrade.upgradeOptions.RU.title': "Rolling", 'admin.stackVersions.version.upgrade.upgradeOptions.RU.description': "Services remain running while the upgrade is performed. Minimized disruption but slower upgrade.", - 'admin.stackVersions.version.upgrade.upgradeOptions.EU.title': "Express Upgrade", - 'admin.stackVersions.version.upgrade.upgradeOptions.HOU.title': "Host Ordered Upgrade", + 'admin.stackVersions.version.upgrade.upgradeOptions.EU.title': "Express", + 'admin.stackVersions.version.upgrade.upgradeOptions.HOU.title': "Host Ordered", 'admin.stackVersions.version.upgrade.upgradeOptions.EU.description': "Services are stopped while the upgrade is performed. Incurs downtime, but faster upgrade.", 'admin.stackVersions.version.upgrade.upgradeOptions.errors_bypassed': "Upgrade Checks Bypassed.", 'admin.stackVersions.version.upgrade.upgradeOptions.preCheck.rerun':'Rerun Checks', @@ -1846,7 +1846,8 @@ Em.I18n.translations = { 'admin.stackUpgrade.state.paused.downgrade': "Downgrade Paused", 'admin.stackUpgrade.state.aborted.downgrade': "Downgrade Aborted", 'admin.stackUpgrade.state.completed.downgrade': "Downgrade Finished", - 'admin.stackUpgrade.dialog.header': "Upgrade to {0}", + 'admin.stackUpgrade.dialog.upgrade.header': "{0} Upgrade to {1}", + 'admin.stackUpgrade.dialog.upgrade.patch.header': "{0} Patch Upgrade to {1}", 'admin.stackUpgrade.dialog.downgrade.header': "Downgrade from {0}", 'admin.stackUpgrade.dialog.operationFailed': "This operation failed.", 'admin.stackUpgrade.dialog.stop': "Stop Upgrade", http://git-wip-us.apache.org/repos/asf/ambari/blob/9232f35c/ambari-web/app/routes/stack_upgrade_routes.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/routes/stack_upgrade_routes.js b/ambari-web/app/routes/stack_upgrade_routes.js index 339c770..1d4dc61 100644 --- a/ambari-web/app/routes/stack_upgrade_routes.js +++ b/ambari-web/app/routes/stack_upgrade_routes.js @@ -35,14 +35,7 @@ module.exports = App.WizardRoute.extend({ return App.ModalPopup.show({ classNames: ['full-width-modal'], - header: function () { - var controller = App.router.get('mainAdminStackAndUpgradeController'); - if (controller.get('isDowngrade')) { - return Em.I18n.t('admin.stackUpgrade.dialog.downgrade.header').format(controller.get('upgradeVersion')); - } else { - return Em.I18n.t('admin.stackUpgrade.dialog.header').format(controller.get('upgradeTypeDisplayName'), controller.get('upgradeVersion')); - } - }.property('App.router.mainAdminStackAndUpgradeController.upgradeVersion', 'App.router.mainAdminStackAndUpgradeController.isDowngrade'), + header: Em.computed.alias('App.router.mainAdminStackAndUpgradeController.wizardModalTitle'), bodyClass: App.upgradeWizardView, primary: Em.I18n.t('common.dismiss'), secondary: null, http://git-wip-us.apache.org/repos/asf/ambari/blob/9232f35c/ambari-web/app/utils/ajax/ajax.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/utils/ajax/ajax.js b/ambari-web/app/utils/ajax/ajax.js index 85745e8..89a3a84 100644 --- a/ambari-web/app/utils/ajax/ajax.js +++ b/ambari-web/app/utils/ajax/ajax.js @@ -1874,7 +1874,7 @@ var urls = { }, 'admin.upgrade.pre_upgrade_check': { - 'real': '/clusters/{clusterName}/rolling_upgrades_check?fields=*&UpgradeChecks/repository_version_id={value}&UpgradeChecks/upgrade_type={type}', + 'real': '/clusters/{clusterName}/rolling_upgrades_check?fields=*&UpgradeChecks/repository_version_id={id}&UpgradeChecks/upgrade_type={type}', 'mock': '/data/stack_versions/pre_upgrade_check.json' }, http://git-wip-us.apache.org/repos/asf/ambari/blob/9232f35c/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js b/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js index 39516a3..5f74bc6 100644 --- a/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js +++ b/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_box_view.js @@ -177,12 +177,11 @@ App.UpgradeVersionBoxView = Em.View.extend({ }); var isSuspended = App.get('upgradeSuspended'); - if (['INSTALLING', 'CURRENT'].contains(status)) { - if (this.get('content.isPatch') && status === 'CURRENT') { - element.setProperties(statePropertiesMap['CURRENT_PATCH']); - } else { - element.setProperties(statePropertiesMap[status]); - } + if (status === 'CURRENT' && this.get('content.isPatch') && !this.get('isUpgrading')) { + element.setProperties(statePropertiesMap['CURRENT_PATCH']); + } + else if (['INSTALLING', 'CURRENT'].contains(status) && !this.get('content.isPatch')) { + element.setProperties(statePropertiesMap[status]); } else if (status === 'NOT_REQUIRED') { requestInProgressRepoId && requestInProgressRepoId == this.get('content.id') ? element.setProperties(statePropertiesMap['LOADING']) : element.setProperties(statePropertiesMap[status]); http://git-wip-us.apache.org/repos/asf/ambari/blob/9232f35c/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 a737abe..4d76d5d 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 @@ -405,7 +405,7 @@ describe('App.MainAdminStackAndUpgradeController', function() { expect(args[0].sender).to.be.eql(controller); expect(args[0].data).to.be.eql({ id: '1', - value: '1', + value: '2.2', label: 'HDP-2.2', type: 'ROLLING', skipComponentFailures: 'false', @@ -1173,7 +1173,7 @@ describe('App.MainAdminStackAndUpgradeController', function() { expect(this.callArgs.data).to.eql({ id: '1', value: '2.2', - label: 'HDP-2.2', + label: 'HDP-2.3', isDowngrade: true, upgradeType: "NON_ROLLING" }); @@ -1753,11 +1753,13 @@ describe('App.MainAdminStackAndUpgradeController', function() { it("Rolling method allowed", function () { controller.get('upgradeMethods').setEach('allowed', true); controller.runUpgradeMethodChecks(Em.Object.create({ - id: '1', + id: 1, + repositoryVersion: '1.2', displayName: 'V1' })); expect(controller.runPreUpgradeCheckOnly.calledWith({ - value: '1', + id: 1, + value: '1.2', label: 'V1', type: 'ROLLING' })).to.be.true; @@ -1808,7 +1810,7 @@ describe('App.MainAdminStackAndUpgradeController', function() { }); it('proper data is saved to the localDB', function () { expect(controller.setDBProperties.getCall(0).args[0]).to.eql({ - fromVersion: null, + toVersion: '1.1', upgradeId: 1, isDowngrade: false, upgradeState: 'PENDING', @@ -3506,16 +3508,33 @@ describe('App.MainAdminStackAndUpgradeController', function() { expect(args[0]).to.exists; expect(args[0].data).to.be.eql({ upgradeId: 1, + isDowngrade: true, id: 2, - value: 2, - label: '1.2', - type: 'EXPRESS', - skipComponentFailures: 'false', - skipSCFailures: 'false' + value: '1.1', + label: '1.2' }); args[0].callback(); expect(controller.get('requestInProgress')).to.be.false; }); }); + describe('#getUpgradeDowngradeHeader', function() { + + it('should return downgrade header', function() { + expect(controller.getUpgradeDowngradeHeader('t1', 'v1', true)).to.be.equal( + Em.I18n.t('admin.stackUpgrade.dialog.downgrade.header').format('v1') + ); + }); + it('should return patch upgrade header', function() { + expect(controller.getUpgradeDowngradeHeader('t1', 'v1', false, true)).to.be.equal( + Em.I18n.t('admin.stackUpgrade.dialog.upgrade.patch.header').format('t1', 'v1') + ); + }); + it('should return upgrade header', function() { + expect(controller.getUpgradeDowngradeHeader('t1', 'v1', false, false)).to.be.equal( + Em.I18n.t('admin.stackUpgrade.dialog.upgrade.header').format('t1', 'v1') + ); + }); + }); + }); http://git-wip-us.apache.org/repos/asf/ambari/blob/9232f35c/ambari-web/test/views/main/admin/stack_upgrade/upgrade_version_box_view_test.js ---------------------------------------------------------------------- diff --git a/ambari-web/test/views/main/admin/stack_upgrade/upgrade_version_box_view_test.js b/ambari-web/test/views/main/admin/stack_upgrade/upgrade_version_box_view_test.js index 2c08dd3..09ac9df 100644 --- a/ambari-web/test/views/main/admin/stack_upgrade/upgrade_version_box_view_test.js +++ b/ambari-web/test/views/main/admin/stack_upgrade/upgrade_version_box_view_test.js @@ -368,7 +368,8 @@ describe('App.UpgradeVersionBoxView', function () { { inputData: { 'content.status': 'CURRENT', - 'content.isPatch': true + 'content.isPatch': true, + 'isUpgrading': false }, expected: { status: 'CURRENT', @@ -937,6 +938,9 @@ describe('App.UpgradeVersionBoxView', function () { if (item.setup) { item.setup.call(this); } + view.reopen({ + isUpgrading: item.inputData.isUpgrading + }); view.setProperties(item.inputData); var result = view.get('stateElement').getProperties(Em.keys(item.expected)); if (result.buttons) {