You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by al...@apache.org on 2017/09/11 10:49:40 UTC
ambari git commit: AMBARI-21923. Web Client Should Only Show Revert
Action On Revertable Repositories (alexantonenko)
Repository: ambari
Updated Branches:
refs/heads/trunk 285cbafe3 -> 4bbbe1f66
AMBARI-21923. Web Client Should Only Show Revert Action On Revertable Repositories (alexantonenko)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/4bbbe1f6
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/4bbbe1f6
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/4bbbe1f6
Branch: refs/heads/trunk
Commit: 4bbbe1f66075e1898ab814c27676439123ba0288
Parents: 285cbaf
Author: Alex Antonenko <aa...@hortonworks.com>
Authored: Mon Sep 11 13:49:25 2017 +0300
Committer: Alex Antonenko <aa...@hortonworks.com>
Committed: Mon Sep 11 13:49:25 2017 +0300
----------------------------------------------------------------------
.../main/admin/stack_and_upgrade_controller.js | 3 +-
ambari-web/app/mappers/stack_version_mapper.js | 4 ++-
ambari-web/app/models/stack_version/version.js | 2 ++
ambari-web/app/styles/stack_versions.less | 24 +++++++++++--
.../stack_upgrade/upgrade_version_column.hbs | 14 ++++++++
.../stack_upgrade/upgrade_version_box_view.js | 9 +++--
.../upgrade_version_column_view.js | 37 --------------------
.../admin/stack_and_upgrade_controller_test.js | 17 +++------
.../mixins/common/configs/configs_saver_test.js | 4 ++-
.../service/configs/config_overridable_test.js | 2 ++
.../upgrade_version_box_view_test.js | 27 +++++++++++---
11 files changed, 80 insertions(+), 63 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/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 b0df4a4..f968afa 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
@@ -2064,7 +2064,6 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
*/
revertPatchUpgrade: function (version) {
this.set('requestInProgress', true);
- var upgrade = App.StackUpgradeHistory.find().findProperty('associatedVersion', version.get('repositoryVersion'));
return App.ajax.send({
name: 'admin.upgrade.revert',
sender: this,
@@ -2074,7 +2073,7 @@ App.MainAdminStackAndUpgradeController = Em.Controller.extend(App.LocalStorage,
this.sender.set('requestInProgress', false);
},
data: {
- upgradeId: upgrade && upgrade.get('upgradeId'),
+ upgradeId: version.get('stackVersion').get('revertUpgradeId'),
id: version.get('id'),
value: version.get('repositoryVersion'),
label: version.get('displayName'),
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/ambari-web/app/mappers/stack_version_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/stack_version_mapper.js b/ambari-web/app/mappers/stack_version_mapper.js
index 2b091a0..9fa0b78 100644
--- a/ambari-web/app/mappers/stack_version_mapper.js
+++ b/ambari-web/app/mappers/stack_version_mapper.js
@@ -36,7 +36,9 @@ App.stackVersionMapper = App.QuickDataMapper.create({
"upgrading_hosts": "host_states.UPGRADING",
"upgraded_hosts": "host_states.UPGRADED",
"upgrade_failed_hosts": "host_states.UPGRADE_FAILED",
- "current_hosts": "host_states.CURRENT"
+ "current_hosts": "host_states.CURRENT",
+ "supports_revert": "supports_revert",
+ "revert_upgrade_id": "revert_upgrade_id"
},
map: function (json) {
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/ambari-web/app/models/stack_version/version.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/stack_version/version.js b/ambari-web/app/models/stack_version/version.js
index 4e18ca4..45e09e6 100644
--- a/ambari-web/app/models/stack_version/version.js
+++ b/ambari-web/app/models/stack_version/version.js
@@ -34,6 +34,8 @@ App.StackVersion = DS.Model.extend({
upgradedHosts: DS.attr('array'),
upgradeFailedHosts: DS.attr('array'),
currentHosts: DS.attr('array'),
+ supportsRevert: DS.attr('boolean'),
+ revertUpgradeId: DS.attr('number'),
noInstalledHosts: Em.computed.empty('installedHosts'),
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/ambari-web/app/styles/stack_versions.less
----------------------------------------------------------------------
diff --git a/ambari-web/app/styles/stack_versions.less b/ambari-web/app/styles/stack_versions.less
index b854933..61cb177 100644
--- a/ambari-web/app/styles/stack_versions.less
+++ b/ambari-web/app/styles/stack_versions.less
@@ -304,8 +304,28 @@
margin: 5px 0 15px 0;
line-height: 20px;
height: 35px;
- .label-success {
- line-height: 30px;
+ .label-wrapper{
+ display: inline-block;
+ position: relative;
+ .label-success {
+ line-height: 30px;
+ }
+ .dropdown-toggle{
+ background: none;
+ height: auto;
+ padding: 8px 8px;
+ background: none;
+ border:none;
+ outline:none;
+ box-shadow: none;
+ position: absolute;
+ right: 0;
+ top: 0;
+ color: #fff;
+ &:hover, &:active, &:focus{
+ color: #fff;
+ }
+ }
}
.btn.btn-primary:not(.dropdown-toggle) {
padding: 4px 5px;
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_column.hbs
----------------------------------------------------------------------
diff --git a/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_column.hbs b/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_column.hbs
index b6a30fc..41c8cdb 100644
--- a/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_column.hbs
+++ b/ambari-web/app/templates/main/admin/stack_upgrade/upgrade_version_column.hbs
@@ -61,7 +61,21 @@
</div>
{{/if}}
{{#if view.stateElement.isLabel}}
+ <div class="label-wrapper">
<span {{bindAttr class="view.stateElement.class"}}>{{view.stateElement.text}}</span>
+ {{#if view.stateElement.canBeReverted}}
+ <button class="btn dropdown-toggle" data-toggle="dropdown">
+ <span class="caret"></span>
+ </button>
+ <ul class="dropdown-menu">
+ <li>
+ <a {{action runAction view.stateElement.action target="view"}}>
+ {{view.stateElement.actionText}}
+ </a>
+ </li>
+ </ul>
+ {{/if}}
+ </div>
{{/if}}
{{#if view.stateElement.isLink}}
{{#if view.stateElement.iconClass}}
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/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 1a2cc60..7c647fb 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
@@ -145,9 +145,9 @@ App.UpgradeVersionBoxView = Em.View.extend({
action: 'resumeUpgrade'
},
'CURRENT_PATCH': {
- isButton: true,
- text: Em.I18n.t('common.revert'),
- action: 'confirmRevertPatchUpgrade'
+ isLabel: true,
+ text: Em.I18n.t('common.current'),
+ class: 'label label-success'
}
},
@@ -169,6 +169,9 @@ App.UpgradeVersionBoxView = Em.View.extend({
if (status === 'CURRENT' && this.get('content.isPatch') && !this.get('isUpgrading')) {
element.setProperties(statePropertiesMap['CURRENT_PATCH']);
+ element.set('canBeReverted', this.get('content.stackVersion').get('supportsRevert'));
+ element.set('action', 'confirmRevertPatchUpgrade');
+ element.set('actionText', Em.I18n.t('common.revert'));
}
else if (['INSTALLING', 'CURRENT'].contains(status) && !this.get('content.isPatch')) {
element.setProperties(statePropertiesMap[status]);
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_column_view.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_column_view.js b/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_column_view.js
index 4039497..b5933b9 100644
--- a/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_column_view.js
+++ b/ambari-web/app/views/main/admin/stack_upgrade/upgrade_version_column_view.js
@@ -63,43 +63,6 @@ App.UpgradeVersionColumnView = App.UpgradeVersionBoxView.extend({
}, this);
}.property(),
- /**
- * map of properties which correspond to particular state of Upgrade version
- * @type {object}
- */
- statePropertiesMap: {
- 'CURRENT': {
- isLabel: true,
- text: Em.I18n.t('common.current'),
- class: 'label label-success'
- },
- 'NOT_REQUIRED': {
- isButton: true,
- text: Em.I18n.t('common.install'),
- action: 'installRepoVersionConfirmation'
- },
- 'LOADING': {
- isSpinner: true,
- class: 'spinner'
- },
- 'INSTALLING': {
- iconClass: 'glyphicon glyphicon-cog',
- isLink: true,
- text: Em.I18n.t('hosts.host.stackVersions.status.installing'),
- action: 'showProgressPopup'
- },
- 'INSTALLED': {
- iconClass: 'glyphicon glyphicon-ok',
- isLink: true,
- text: Em.I18n.t('common.installed'),
- action: null
- },
- 'SUSPENDED': {
- isButton: true,
- text: Em.I18n.t('admin.stackUpgrade.dialog.resume'),
- action: 'resumeUpgrade'
- }
- },
/**
* @param {Em.Object} stackService
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/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 94b9091..e2f07fc 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
@@ -3476,24 +3476,15 @@ describe('App.MainAdminStackAndUpgradeController', function() {
});
describe('#revertPatchUpgrade', function() {
- beforeEach(function() {
- sinon.stub(App.StackUpgradeHistory, 'find').returns([
- Em.Object.create({
- associatedVersion: '1.1',
- upgradeId: 1
- })
- ]);
- });
- afterEach(function() {
- App.StackUpgradeHistory.find.restore();
- });
-
it('App.ajax.send should be called', function() {
var version = Em.Object.create({
repositoryVersion: '1.1',
id: 2,
displayName: '1.2',
- upgradeType: 'EXPRESS'
+ upgradeType: 'EXPRESS',
+ stackVersion: Em.Object.create({
+ revertUpgradeId: 1
+ })
});
controller.revertPatchUpgrade(version);
expect(controller.get('requestInProgress')).to.be.true;
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/ambari-web/test/mixins/common/configs/configs_saver_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/mixins/common/configs/configs_saver_test.js b/ambari-web/test/mixins/common/configs/configs_saver_test.js
index 9099e54..855823c 100644
--- a/ambari-web/test/mixins/common/configs/configs_saver_test.js
+++ b/ambari-web/test/mixins/common/configs/configs_saver_test.js
@@ -914,7 +914,8 @@ describe('App.ConfigsSaverMixin', function() {
host_name: 'host1'
}],
"service_config_version_note": "note",
- "desired_configs": "{}"
+ "desired_configs": "{}",
+ "service_name": "S1",
}
});
});
@@ -939,6 +940,7 @@ describe('App.ConfigsSaverMixin', function() {
host_name: 'host1'
}],
"service_config_version_note": "",
+ "service_name": "S1",
"desired_configs": "{}",
id: 'g1'
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/ambari-web/test/mixins/main/service/configs/config_overridable_test.js
----------------------------------------------------------------------
diff --git a/ambari-web/test/mixins/main/service/configs/config_overridable_test.js b/ambari-web/test/mixins/main/service/configs/config_overridable_test.js
index b562ffb..198d854 100644
--- a/ambari-web/test/mixins/main/service/configs/config_overridable_test.js
+++ b/ambari-web/test/mixins/main/service/configs/config_overridable_test.js
@@ -179,6 +179,7 @@ describe('App.ConfigOverridable', function () {
"ConfigGroup": {
"group_name": 'cg1',
"tag": 'S1',
+ "service_name": "S1",
"description": '',
"desired_configs": [],
"hosts": [{host_name: 'host1'}]
@@ -264,6 +265,7 @@ describe('App.ConfigOverridable', function () {
group_name: 'cg1',
description: 'dsc',
tag: 'S1',
+ service_name: "S1",
hosts: [{
host_name: 'host1'
}],
http://git-wip-us.apache.org/repos/asf/ambari/blob/4bbbe1f6/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 5b0ce86..46dd62f 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
@@ -452,15 +452,34 @@ describe('App.UpgradeVersionBoxView', function () {
inputData: {
'content.status': 'CURRENT',
'content.isPatch': true,
- 'isUpgrading': false
+ 'isUpgrading': false,
+ 'content.stackVersion': Em.Object.create({
+ 'supportsRevert': false
+ })
+ },
+ expected: {
+ isLabel: true,
+ text: Em.I18n.t('common.current'),
+ class: 'label label-success',
+ canBeReverted: false
+ },
+ title: 'current no-revertable patch version'
+ },
+ {
+ inputData: {
+ 'content.status': 'CURRENT',
+ 'content.isPatch': true,
+ 'isUpgrading': false,
+ 'content.stackVersion': Em.Object.create({
+ 'supportsRevert': true
+ })
},
expected: {
status: 'CURRENT',
- isButton: true,
- text: Em.I18n.t('common.revert'),
+ text: Em.I18n.t('common.current'),
action: 'confirmRevertPatchUpgrade'
},
- title: 'current patch version'
+ title: 'current revertable patch version'
},
{
inputData: {