You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by jg...@apache.org on 2018/06/20 19:04:38 UTC
[ambari] branch branch-feature-AMBARI-14714-mpack-advisor updated:
[AMBARI-24095] Fixed usages of App.StackService.find(serviceName) since
serviceName is no longer used as the value of the StackService model id.
(#1581)
This is an automated email from the ASF dual-hosted git repository.
jgolieb pushed a commit to branch branch-feature-AMBARI-14714-mpack-advisor
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/branch-feature-AMBARI-14714-mpack-advisor by this push:
new da5c87e [AMBARI-24095] Fixed usages of App.StackService.find(serviceName) since serviceName is no longer used as the value of the StackService model id. (#1581)
da5c87e is described below
commit da5c87e374e43ea0d82cb43422024f0267b25837
Author: Jason Golieb <j...@golieb.net>
AuthorDate: Wed Jun 20 15:04:36 2018 -0400
[AMBARI-24095] Fixed usages of App.StackService.find(serviceName) since serviceName is no longer used as the value of the StackService model id. (#1581)
* [AMBARI-24095] Fixed usages of App.StackService.find(serviceName) since serviceName is no longer used as the value of the StackService model id.
* Fixed installation issue.
* Fixed a couple instances that were hard-coded.
---
.../app/controllers/main/service/info/configs.js | 6 +++---
ambari-web/app/controllers/main/service/item.js | 12 ++++++------
.../service/widgets/create/wizard_controller.js | 2 +-
.../wizard/step7/assign_master_controller.js | 2 +-
.../app/controllers/wizard/step7_controller.js | 8 +++++++-
.../app/mixins/common/configs/configs_saver.js | 6 +++---
ambari-web/app/utils/config.js | 4 ++--
.../views/main/dashboard/widgets/hbase_links.js | 2 +-
ambari-web/app/views/main/service/item.js | 2 +-
.../app/views/main/service/reassign/step5_view.js | 2 +-
.../main/service/widgets/create/expression_view.js | 2 +-
.../controllers/main/host/configs_service_test.js | 8 ++++++++
.../controllers/main/service/info/config_test.js | 6 ++++--
.../test/controllers/main/service/item_test.js | 22 +++++++++++++++-------
.../wizard/step7/assign_master_controller_test.js | 6 ++++--
.../mixins/common/configs/configs_saver_test.js | 21 +++++++++++++++------
16 files changed, 73 insertions(+), 38 deletions(-)
diff --git a/ambari-web/app/controllers/main/service/info/configs.js b/ambari-web/app/controllers/main/service/info/configs.js
index c0b6b5b..e251f6d 100644
--- a/ambari-web/app/controllers/main/service/info/configs.js
+++ b/ambari-web/app/controllers/main/service/info/configs.js
@@ -324,10 +324,10 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.AddSecurityConfi
* @returns {String[]}
*/
getServicesDependencies: function(serviceName) {
- var dependencies = Em.getWithDefault(App.StackService.find(serviceName), 'dependentServiceNames', []);
+ var dependencies = Em.getWithDefault(App.StackService.find().findProperty('serviceName', serviceName), 'dependentServiceNames', []);
var loop = function(dependentServices, allDependencies) {
return dependentServices.reduce(function(all, name) {
- var service = App.StackService.find(name);
+ var service = App.StackService.find().findProperty('serviceName', name);
if (!service) {
return all;
}
@@ -589,7 +589,7 @@ App.MainServiceInfoConfigsController = Em.Controller.extend(App.AddSecurityConfi
onLoadOverrides: function (allConfigs) {
this.get('servicesToLoad').forEach(function(serviceName) {
var configGroups = serviceName === this.get('content.serviceName') ? this.get('configGroups') : this.get('dependentConfigGroups').filterProperty('serviceName', serviceName);
- var configTypes = App.StackService.find(serviceName).get('configTypeList');
+ var configTypes = App.StackService.find().findProperty('serviceName', serviceName).get('configTypeList');
var configsByService = this.get('allConfigs').filter(function (c) {
return configTypes.contains(App.config.getConfigTagFromFileName(c.get('filename')));
});
diff --git a/ambari-web/app/controllers/main/service/item.js b/ambari-web/app/controllers/main/service/item.js
index 4e67204..3e2ab88 100644
--- a/ambari-web/app/controllers/main/service/item.js
+++ b/ambari-web/app/controllers/main/service/item.js
@@ -127,8 +127,8 @@ App.MainServiceItemController = Em.Controller.extend(App.SupportClientConfigsDow
*/
interDependentServices: function() {
var serviceName = this.get('content.serviceName'), interDependentServices = [];
- App.StackService.find(serviceName).get('requiredServices').forEach(function(requiredService) {
- if (App.StackService.find(requiredService).get('requiredServices').contains(serviceName)) {
+ App.StackService.find().findProperty('serviceName', serviceName).get('requiredServices').forEach(function(requiredService) {
+ if (App.StackService.find().findProperty('serviceName', requiredService).get('requiredServices').contains(serviceName)) {
interDependentServices.push(requiredService);
}
});
@@ -149,11 +149,11 @@ App.MainServiceItemController = Em.Controller.extend(App.SupportClientConfigsDow
*/
dependentServiceNames: function() {
return App.get('router.clusterController.isConfigsPropertiesLoaded') ?
- App.StackService.find(this.get('content.serviceName')).get('dependentServiceNames') : [];
+ App.StackService.find().findProperty('serviceName', this.get('content.serviceName')).get('dependentServiceNames') : [];
}.property('content.serviceName', 'App.router.clusterController.isConfigsPropertiesLoaded'),
configDependentServiceNames: function() {
- return this.get('dependentServiceNames').concat(App.StackService.find(this.get('content.serviceName')).get('requiredServices'))
+ return this.get('dependentServiceNames').concat(App.StackService.find().findProperty('serviceName', this.get('content.serviceName')).get('requiredServices'))
}.property('dependentServiceNames'),
/**
@@ -244,7 +244,7 @@ App.MainServiceItemController = Em.Controller.extend(App.SupportClientConfigsDow
});
self.get('configDependentServiceNames').forEach(function(serviceName) {
- var configTypes = App.StackService.find(serviceName.name).get('configTypeList');
+ var configTypes = App.StackService.find().findProperty('serviceName', serviceName.name).get('configTypeList');
if (configTypes) {
var configsByService = allConfigs.filter(function (c) {
return configTypes.contains(App.config.getConfigTagFromFileName(c.get('filename')));
@@ -1393,7 +1393,7 @@ App.MainServiceItemController = Em.Controller.extend(App.SupportClientConfigsDow
App.Service.find().forEach(function (service) {
if (!serviceNamesToDelete.contains(service.get('serviceName'))) {
- var requiredServices = App.StackService.find(service.get('serviceName')).get('requiredServices');
+ var requiredServices = App.StackService.find().findProperty('serviceName', service.get('serviceName')).get('requiredServices');
serviceNamesToDelete.forEach(function (dependsOnService) {
if (requiredServices.contains(dependsOnService)) {
dependentServices.push(service.get('serviceName'));
diff --git a/ambari-web/app/controllers/main/service/widgets/create/wizard_controller.js b/ambari-web/app/controllers/main/service/widgets/create/wizard_controller.js
index a46c5e4..79f6be5 100644
--- a/ambari-web/app/controllers/main/service/widgets/create/wizard_controller.js
+++ b/ambari-web/app/controllers/main/service/widgets/create/wizard_controller.js
@@ -210,7 +210,7 @@ App.WidgetWizardController = App.WizardController.extend({
data: {
stackVersionURL: App.get('stackVersionURL'),
serviceNames: App.Service.find().filter(function (item) {
- return App.StackService.find(item.get('id')).get('isServiceWithWidgets');
+ return App.StackService.find().findProperty('serviceName', item.get('id')).get('isServiceWithWidgets');
}).mapProperty('serviceName').join(',')
},
callback: callback,
diff --git a/ambari-web/app/controllers/wizard/step7/assign_master_controller.js b/ambari-web/app/controllers/wizard/step7/assign_master_controller.js
index ac9c33c..2d18586 100644
--- a/ambari-web/app/controllers/wizard/step7/assign_master_controller.js
+++ b/ambari-web/app/controllers/wizard/step7/assign_master_controller.js
@@ -357,7 +357,7 @@ App.AssignMasterOnStep7Controller = Em.Controller.extend(App.BlueprintMixin, App
return dependentServices.filter(function (item) {
return !App.Service.find().findProperty('serviceName', item);
}).map(function (item) {
- return App.StackService.find(item).get('displayName');
+ return App.StackService.find().findProperty('serviceName', item).get('displayName');
});
},
diff --git a/ambari-web/app/controllers/wizard/step7_controller.js b/ambari-web/app/controllers/wizard/step7_controller.js
index c1f376a..860df8a 100644
--- a/ambari-web/app/controllers/wizard/step7_controller.js
+++ b/ambari-web/app/controllers/wizard/step7_controller.js
@@ -754,7 +754,13 @@ App.WizardStep7Controller = App.WizardStepController.extend(App.ServerValidatorM
var serviceName = service.get('serviceName');
if (['MISC'].concat(this.get('allSelectedServiceNames')).contains(serviceName)) {
var serviceConfig = App.config.createServiceConfig(serviceName);
- serviceConfig.set('showConfig', App.StackService.find(serviceName).get('isInstallable'));
+ let stackService;
+ if (serviceName === 'MISC') {
+ stackService = App.StackService.find('MISC');
+ } else {
+ stackService = App.StackService.find().findProperty('serviceName', serviceName);
+ }
+ serviceConfig.set('showConfig', stackService.get('isInstallable'));
if (this.get('wizardController.name') === 'addServiceController') {
serviceConfig.set('selected', !this.get('installedServiceNames').concat('MISC').contains(serviceName));
if (serviceName === 'MISC') {
diff --git a/ambari-web/app/mixins/common/configs/configs_saver.js b/ambari-web/app/mixins/common/configs/configs_saver.js
index c700c16..0deac16 100644
--- a/ambari-web/app/mixins/common/configs/configs_saver.js
+++ b/ambari-web/app/mixins/common/configs/configs_saver.js
@@ -75,7 +75,7 @@ App.ConfigsSaverMixin = Em.Mixin.create({
* @type {App.StackService[]}
*/
currentServices: function() {
- return [App.StackService.find(this.get('content.serviceName'))];
+ return [App.StackService.find().findProperty('serviceName', this.get('content.serviceName'))];
}.property('content.serviceName'),
/**
@@ -327,7 +327,7 @@ App.ConfigsSaverMixin = Em.Mixin.create({
//generates list of properties that was changed
var modifiedConfigs = this.getModifiedConfigs(configs);
- var serviceFileNames = Object.keys(App.StackService.find(serviceName).get('configTypes')).map(function (type) {
+ var serviceFileNames = Object.keys(App.StackService.find().findProperty('serviceName', serviceName).get('configTypes')).map(function (type) {
return App.config.getOriginalFileName(type);
});
@@ -439,7 +439,7 @@ App.ConfigsSaverMixin = Em.Mixin.create({
*
* @returns {boolean}
*/
- allowSaveCoreSite: function() {
+ allowSaveCoreSite: function () {
return this.get('currentServices').some(function(service) {
return (this.get('coreSiteServiceNames').contains(service.get('serviceName'))
|| this.get('coreSiteServiceType') === service.get('serviceType'));
diff --git a/ambari-web/app/utils/config.js b/ambari-web/app/utils/config.js
index ee3b6d3..c95b0e6 100644
--- a/ambari-web/app/utils/config.js
+++ b/ambari-web/app/utils/config.js
@@ -1085,7 +1085,7 @@ App.config = Em.Object.create({
if (!serviceName || unsupportedServiceNames.contains(serviceName) || !filename) {
return false;
} else {
- var stackService = App.StackService.find(serviceName);
+ var stackService = App.StackService.find().findProperty('serviceName', serviceName);
if (!stackService) {
return false;
}
@@ -1104,7 +1104,7 @@ App.config = Em.Object.create({
if (!stackServiceName) {
return false;
}
- var stackService = App.StackService.find(serviceName);
+ var stackService = App.StackService.find().findProperty('serviceName', serviceName);
return !!this.getConfigTypesInfoFromService(stackService).supportsAddingForbidden.find(function (configType) {
return filename.startsWith(configType);
});
diff --git a/ambari-web/app/views/main/dashboard/widgets/hbase_links.js b/ambari-web/app/views/main/dashboard/widgets/hbase_links.js
index 9600094..f5d4cb0 100644
--- a/ambari-web/app/views/main/dashboard/widgets/hbase_links.js
+++ b/ambari-web/app/views/main/dashboard/widgets/hbase_links.js
@@ -23,7 +23,7 @@ App.HBaseLinksView = App.LinkDashboardWidgetView.extend({
templateName: require('templates/main/dashboard/widgets/hbase_links'),
port: function() {
- return App.StackService.find('HBASE').compareCurrentVersion('1.1') > -1 ? '16010' : '60010';
+ return App.StackService.find().findProperty('serviceName', 'HBASE').compareCurrentVersion('1.1') > -1 ? '16010' : '60010';
}.property(),
componentName: 'HBASE_REGIONSERVER',
diff --git a/ambari-web/app/views/main/service/item.js b/ambari-web/app/views/main/service/item.js
index 1d4e5a6..a3694f0 100644
--- a/ambari-web/app/views/main/service/item.js
+++ b/ambari-web/app/views/main/service/item.js
@@ -353,7 +353,7 @@ App.MainServiceItemView = Em.View.extend({
hasMetricTab: function() {
let serviceName = this.get('controller.content.serviceName');
let graphs = require('data/service_graph_config')[serviceName.toLowerCase()];
- return graphs || App.StackService.find(serviceName).get('isServiceWithWidgets');
+ return graphs || App.StackService.find().findProperty('serviceName', serviceName).get('isServiceWithWidgets');
}.property('controller.content.serviceName'),
didInsertElement: function () {
diff --git a/ambari-web/app/views/main/service/reassign/step5_view.js b/ambari-web/app/views/main/service/reassign/step5_view.js
index 9c4f39d..3024a47 100644
--- a/ambari-web/app/views/main/service/reassign/step5_view.js
+++ b/ambari-web/app/views/main/service/reassign/step5_view.js
@@ -29,7 +29,7 @@ App.ReassignMasterWizardStep5View = Em.View.extend({
return '';
}
var
- atsDir = App.StackService.find('YARN').compareCurrentVersion('2.7') > -1 ? "timeline-state-store.ldb" : "leveldb-timeline-store.ldb",
+ atsDir = App.StackService.find().findProperty('serviceName', 'YARN').compareCurrentVersion('2.7') > -1 ? "timeline-state-store.ldb" : "leveldb-timeline-store.ldb",
componentDir = this.get('controller.content.componentDir') || '',
componentDirCmd = componentDir.replace(/,/g, ' '),
sourceHost = this.get('controller.content.reassignHosts.source'),
diff --git a/ambari-web/app/views/main/service/widgets/create/expression_view.js b/ambari-web/app/views/main/service/widgets/create/expression_view.js
index 7d4854f..4e5195c 100644
--- a/ambari-web/app/views/main/service/widgets/create/expression_view.js
+++ b/ambari-web/app/views/main/service/widgets/create/expression_view.js
@@ -390,7 +390,7 @@ App.AddMetricExpressionView = Em.View.extend({
serviceName: serviceName,
//in order to support panel lists
href: '#' + serviceName,
- displayName: App.StackService.find(serviceName).get('displayName'),
+ displayName: App.StackService.find().findProperty('serviceName', serviceName).get('displayName'),
count: servicesMap[serviceName].count,
components: components
}));
diff --git a/ambari-web/test/controllers/main/host/configs_service_test.js b/ambari-web/test/controllers/main/host/configs_service_test.js
index 85f98b3..ac6aef3 100644
--- a/ambari-web/test/controllers/main/host/configs_service_test.js
+++ b/ambari-web/test/controllers/main/host/configs_service_test.js
@@ -108,12 +108,20 @@ describe('App.MainHostServiceConfigsController', function () {
return { always: Em.K };
});
sinon.stub(controller, 'trackRequest');
+ sinon.stub(App.StackService, 'find').returns({
+ findProperty: function () {
+ return Em.Object.create({
+ dependentServiceNames: []
+ });
+ }
+ });
});
afterEach(function() {
controller.loadCurrentVersions.restore();
controller.loadConfigTheme.restore();
App.themesMapper.generateAdvancedTabs.restore();
controller.trackRequest.restore();
+ App.StackService.find.restore();
});
it("should set host", function () {
controller.set('content', {
diff --git a/ambari-web/test/controllers/main/service/info/config_test.js b/ambari-web/test/controllers/main/service/info/config_test.js
index 857ab6e..96bef9e 100644
--- a/ambari-web/test/controllers/main/service/info/config_test.js
+++ b/ambari-web/test/controllers/main/service/info/config_test.js
@@ -1069,8 +1069,10 @@ describe("App.MainServiceInfoConfigsController", function () {
createService('YARN', ['HIVE'])
];
beforeEach(function() {
- sinon.stub(App.StackService, 'find', function(serviceName) {
- return stackServices.findProperty('serviceName', serviceName);
+ sinon.stub(App.StackService, 'find').returns({
+ findProperty: function (prop, serviceName) {
+ return stackServices.findProperty('serviceName', serviceName);
+ }
});
});
afterEach(function() {
diff --git a/ambari-web/test/controllers/main/service/item_test.js b/ambari-web/test/controllers/main/service/item_test.js
index bac09b7..81d553f 100644
--- a/ambari-web/test/controllers/main/service/item_test.js
+++ b/ambari-web/test/controllers/main/service/item_test.js
@@ -1387,8 +1387,10 @@ describe('App.MainServiceItemController', function () {
beforeEach(function() {
mainServiceItemController = App.MainServiceItemController.create({});
- sinon.stub(App.StackService, 'find', function (serviceName) {
- return stackServiceModel[serviceName];
+ sinon.stub(App.StackService, 'find').returns({
+ findProperty: function (prop, serviceName) {
+ return stackServiceModel[serviceName];
+ }
});
this.mockService = sinon.stub(App.Service, 'find');
});
@@ -1679,8 +1681,10 @@ describe('App.MainServiceItemController', function () {
var mainServiceItemController;
beforeEach(function() {
- sinon.stub(App.StackService, 'find', function (serviceName) {
- return stackServiceModel[serviceName];
+ sinon.stub(App.StackService, 'find').returns({
+ findProperty: function (prop, serviceName) {
+ return stackServiceModel[serviceName];
+ }
});
mainServiceItemController = App.MainServiceItemController.create({
content: {}
@@ -1939,9 +1943,13 @@ describe('App.MainServiceItemController', function () {
serviceName: serviceName
}
});
- sinon.stub(App.StackService, 'find').returns(Em.Object.create({
- dependentServiceNames: dependentServiceNames
- }));
+ sinon.stub(App.StackService, 'find').returns({
+ findProperty: function () {
+ return Em.Object.create({
+ dependentServiceNames: dependentServiceNames
+ });
+ }
+ });
});
afterEach(function () {
diff --git a/ambari-web/test/controllers/wizard/step7/assign_master_controller_test.js b/ambari-web/test/controllers/wizard/step7/assign_master_controller_test.js
index 2e1839a..fb0ebe1 100644
--- a/ambari-web/test/controllers/wizard/step7/assign_master_controller_test.js
+++ b/ambari-web/test/controllers/wizard/step7/assign_master_controller_test.js
@@ -307,8 +307,10 @@ describe('App.AssignMasterOnStep7Controller', function () {
sinon.stub(App.Service, 'find').returns([
{serviceName: 'S1'}
]);
- sinon.stub(App.StackService, 'find', function(input) {
- return Em.Object.create({displayName: input});
+ sinon.stub(App.StackService, 'find').returns({
+ findProperty: function (prop, input) {
+ return Em.Object.create({ displayName: input });
+ }
});
});
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 22768af..edbaf45 100644
--- a/ambari-web/test/mixins/common/configs/configs_saver_test.js
+++ b/ambari-web/test/mixins/common/configs/configs_saver_test.js
@@ -33,9 +33,12 @@ describe('App.ConfigsSaverMixin', function() {
});
describe("#currentServices", function () {
+ var findProperty = sinon.stub().returns({});
beforeEach(function() {
- sinon.stub(App.StackService, 'find').returns({});
+ sinon.stub(App.StackService, 'find').returns({
+ findProperty: findProperty
+ });
});
afterEach(function() {
@@ -45,7 +48,7 @@ describe('App.ConfigsSaverMixin', function() {
it("should return currentServices", function() {
mixin.set('content.serviceName', 'S1');
expect(mixin.get('currentServices')).to.be.eql([{}]);
- expect(App.StackService.find.calledWith('S1')).to.be.true;
+ expect(findProperty.calledWith('serviceName', 'S1')).to.be.true;
});
});
@@ -614,7 +617,9 @@ describe('App.ConfigsSaverMixin', function() {
describe("#allowSaveCoreSite()", function () {
it("empty currentServices", function() {
- mixin.set('currentServices', []);
+ mixin.reopen({
+ currentServices: []
+ });
expect(mixin.allowSaveCoreSite()).to.be.false;
});
@@ -1129,9 +1134,13 @@ describe('App.ConfigsSaverMixin', function() {
beforeEach(function() {
sinon.stub(App.config, 'textareaIntoFileConfigs');
- sinon.stub(App.StackService, 'find').returns(Em.Object.create({
- configTypes: {'k1': 't1'}
- }));
+ sinon.stub(App.StackService, 'find').returns({
+ findProperty: function () {
+ return Em.Object.create({
+ configTypes: { 'k1': 't1' }
+ });
+ }
+ });
sinon.stub(App.config, 'getOriginalFileName').returns('file1');
this.mockSave = sinon.stub(mixin, 'saveSiteConfigs');
this.mockJSON = sinon.stub(mixin, 'generateDesiredConfigsJSON');