This is an automated email from the ASF dual-hosted git repository. ishanbha pushed a commit to branch branch-feature-AMBARI-14714 in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/branch-feature-AMBARI-14714 by this push: new 858fd45 Load stack mapper data from mpacks API after registering mpacks. (#887) 858fd45 is described below commit 858fd45f24bd7c05687df851b8842c4832340b69 Author: Jason Golieb <j...@golieb.net> AuthorDate: Thu Apr 5 14:34:11 2018 -0400 Load stack mapper data from mpacks API after registering mpacks. (#887) --- ambari-web/app/controllers/installer.js | 198 +---- ambari-web/app/controllers/wizard.js | 8 + .../wizard/downloadMpacks_controller.js | 18 +- ambari-web/app/mappers/stack_mapper.js | 37 +- ambari-web/app/routes/installer.js | 1 + ambari-web/app/utils/ajax/ajax.js | 4 + ambari-web/test/controllers/installer_test.js | 14 +- ambari-web/test/mappers/stack_mapper_test.js | 939 +++++++++------------ 8 files changed, 454 insertions(+), 765 deletions(-) diff --git a/ambari-web/app/controllers/installer.js b/ambari-web/app/controllers/installer.js index 15a1f82..c809733 100644 --- a/ambari-web/app/controllers/installer.js +++ b/ambari-web/app/controllers/installer.js @@ -110,6 +110,7 @@ App.InstallerController = App.WizardController.extend(App.Persist, { recommendationsHostGroups: null, controllerName: 'installerController', mpacks: [], + registeredMpacks: [], mpackVersions: [], mpackServiceVersions: [], mpackServices: [], @@ -316,104 +317,6 @@ App.InstallerController = App.WizardController.extend(App.Persist, { stacks: [], - /** - * stack names used as auxiliary data to query stacks by name - */ - stackNames: [], - - /** - * Load stacks data from server or take exist data from in memory variable {{content.stacks}} - * The series of API calls will be called When landing first time on Select Stacks page - * or on hitting refresh post select stacks page in installer wizard - */ - loadStacks: function () { - var stacks = this.get('content.stacks'); - var dfd = $.Deferred(); - if (stacks && stacks.get('length')) { - App.set('currentStackVersion', App.Stack.find().findProperty('isSelected').get('stackNameVersion')); - dfd.resolve(true); - } else { - App.ajax.send({ - name: 'wizard.stacks', - sender: this, - success: 'loadStacksSuccessCallback', - error: 'loadStacksErrorCallback' - }).complete(function () { - dfd.resolve(false); - }); - } - return dfd.promise(); - }, - - /** - * Send queries to load versions for each stack - */ - loadStacksSuccessCallback: function (data) { - this.get('stacks').clear(); - this.set('stackNames', data.items.mapProperty('Stacks.stack_name')); - }, - - /** - * onError callback for loading stacks data - */ - loadStacksErrorCallback: function () { - }, - - /** - * query every stack names from server - * @return {Array} - */ - loadStacksVersions: function () { - var requests = []; - this.get('stackNames').forEach(function (stackName) { - requests.push(App.ajax.send({ - name: 'wizard.stacks_versions_definitions', - sender: this, - data: { - stackName: stackName - }, - success: 'loadStacksVersionsDefinitionsSuccessCallback', - error: 'loadStacksVersionsErrorCallback' - })); - }, this); - this.set('loadStacksRequestsCounter', requests.length); - return requests; - }, - - /** - * Counter for counting number of successful requests to load stack versions - */ - loadStacksRequestsCounter: 0, - - /** - * Parse loaded data and create array of stacks objects - */ - loadStacksVersionsDefinitionsSuccessCallback: function (data) { - var stacks = App.db.getStacks(); - var oses = App.db.getOses(); - var repos = App.db.getRepos(); - this.decrementProperty('loadStacksRequestsCounter'); - var isStacksExistInDb = stacks && stacks.length; - if (isStacksExistInDb) { - stacks.forEach(function (_stack) { - var stack = data.items.findProperty('VersionDefinition.id', _stack.id); - if (stack) { - stack.VersionDefinition.is_selected = _stack.is_selected; - } - }, this); - } - - data.items.sortProperty('VersionDefinition.stack_version').reverse().forEach(function (versionDefinition) { - // to display repos panel, should map all available operating systems including empty ones - var stackInfo = {}; - stackInfo.isStacksExistInDb = isStacksExistInDb; - stackInfo.stacks = stacks; - stackInfo.oses = oses; - stackInfo.repos = repos; - this.getSupportedOSList(versionDefinition, stackInfo); - }, this); - }, - mergeChanges: function (repos, oses, stacks) { var _repos = repos || []; var _oses = oses || []; @@ -785,104 +688,6 @@ App.InstallerController = App.WizardController.extend(App.Persist, { App.showAlertPopup(header, body); }, - getSupportedOSList: function (versionDefinition, stackInfo) { - this.incrementProperty('loadStacksRequestsCounter'); - return App.ajax.send({ - name: 'wizard.step1.get_supported_os_types', - sender: this, - data: { - stackName: versionDefinition.VersionDefinition.stack_name, - stackVersion: versionDefinition.VersionDefinition.stack_version, - versionDefinition: versionDefinition, - stackInfo: stackInfo - }, - success: 'getSupportedOSListSuccessCallback', - error: 'getSupportedOSListErrorCallback' - }); - }, - - /** - * onSuccess callback for getSupportedOSList. - */ - getSupportedOSListSuccessCallback: function (response, request, data) { - var self = this; - var stack_default = data.versionDefinition.VersionDefinition.stack_default; - var existedOS = data.versionDefinition.operating_systems; - var existedMap = {}; - existedOS.map(function (existedOS) { - existedOS.isSelected = true; - existedMap[existedOS.OperatingSystems.os_type] = existedOS; - }); - response.operating_systems.forEach(function(supportedOS) { - if(!existedMap[supportedOS.OperatingSystems.os_type]) { - supportedOS.isSelected = false; - existedOS.push(supportedOS); - } else { - if (stack_default) { // only overwrite if it is stack default, otherwise use url from /version_definition - existedMap[supportedOS.OperatingSystems.os_type].repositories.forEach(function (repo) { - supportedOS.repositories.forEach(function (supportedRepo) { - if (supportedRepo.Repositories.repo_id == repo.Repositories.repo_id) { - repo.Repositories.base_url = supportedRepo.Repositories.base_url; - repo.Repositories.default_base_url = supportedRepo.Repositories.default_base_url; - repo.Repositories.latest_base_url = supportedRepo.Repositories.latest_base_url; - repo.Repositories.components = supportedRepo.Repositories.components; - repo.Repositories.distribution = supportedRepo.Repositories.distribution; - } - }); - }); - } - else{ - existedMap[supportedOS.OperatingSystems.os_type].repositories.forEach(function (repo) { - supportedOS.repositories.forEach(function (supportedRepo) { - if (supportedRepo.Repositories.repo_id == repo.Repositories.repo_id) { - repo.Repositories.components = supportedRepo.Repositories.components; - repo.Repositories.distribution = supportedRepo.Repositories.distribution; - } - }); - }); - } - } - }); - - App.stackMapper.map(data.versionDefinition); - - if (!this.decrementProperty('loadStacksRequestsCounter')) { - if (data.stackInfo.dfd) { - data.stackInfo.dfd.resolve(data.stackInfo.response); - } else { - var versionData = this.getSelectedRepoVersionData(); - if (versionData) { - this.postVersionDefinitionFile(versionData.isXMLdata, versionData.data).done(function (versionInfo) { - self.mergeChanges(data.stackInfo.repos, data.stackInfo.oses, data.stackInfo.stacks); - App.Stack.find().setEach('isSelected', false); - var stackId = Em.get(versionData, 'data.VersionDefinition.available') || versionInfo.stackNameVersion + "-" + versionInfo.actualVersion; - App.Stack.find().findProperty('id', stackId).set('isSelected', true); - self.setSelected(data.stackInfo.isStacksExistInDb); - }).fail(function () { - self.setSelected(data.stackInfo.isStacksExistInDb); - }); - } else { - this.setSelected(data.stackInfo.isStacksExistInDb); - } - } - } - }, - - /** - * onError callback for getSupportedOSList - */ - getSupportedOSListErrorCallback: function (request, ajaxOptions, error, data, params) { - var header = Em.I18n.t('installer.step1.useLocalRepo.getSurpottedOs.error.title'); - var body = ""; - if(request && request.responseText){ - try { - var json = $.parseJSON(request.responseText); - body = json.message; - } catch (err) {} - } - App.showAlertPopup(header, body); - }, - /** * Check validation of the customized local urls */ @@ -1029,6 +834,7 @@ App.InstallerController = App.WizardController.extend(App.Persist, { type: 'sync', callback: function () { this.loadConfirmedHosts(); + this.loadRegisteredMpacks(); } } ], diff --git a/ambari-web/app/controllers/wizard.js b/ambari-web/app/controllers/wizard.js index 06c2034..b1ce5d0 100644 --- a/ambari-web/app/controllers/wizard.js +++ b/ambari-web/app/controllers/wizard.js @@ -1411,6 +1411,14 @@ App.WizardController = Em.Controller.extend(App.LocalStorage, App.ThemesMappingM App.ajax.defaultErrorHandler(jqXHR, opt.url, opt.type, jqXHR.status); }, + loadRegisteredMpacks: function () { + this.set('content.registeredMpacks', this.getDBProperty('registeredMpacks') || []); + const registeredMpacks = this.get('content.registeredMpacks'); + registeredMpacks.forEach(rmp => { + App.stackMapper.map(rmp); + }); + }, + /** * Determine if <code>Assign Slaves and Clients</code> step ("step7") should be skipped * @method setSkipSlavesStep diff --git a/ambari-web/app/controllers/wizard/downloadMpacks_controller.js b/ambari-web/app/controllers/wizard/downloadMpacks_controller.js index 915bb73..471080e 100644 --- a/ambari-web/app/controllers/wizard/downloadMpacks_controller.js +++ b/ambari-web/app/controllers/wizard/downloadMpacks_controller.js @@ -44,16 +44,16 @@ App.WizardDownloadMpacksController = App.WizardStepController.extend({ }, registerMpacks: function () { - var mpacks = this.get('mpacks'); - var self = this; + const mpacks = this.get('mpacks'); + const self = this; mpacks.forEach(function (mpack) { - self.downloadMpack(mpack); + self.downloadMpack(mpack).then(self.loadMpackInfo.bind(self)); }); }, downloadMpack: function (mpack) { console.log("downloading mpacks"); - App.ajax.send({ + return App.ajax.send({ name: 'mpack.download_by_url', sender: this, data: { @@ -93,6 +93,16 @@ App.WizardDownloadMpacksController = App.WizardStepController.extend({ } }, + loadMpackInfo(data) { + App.ajax.send({ + name: 'mpack.get_registered_mpack', + sender: this, + data: { + id: data.resources[0].MpackInfo.id + } + }).then(mpackInfo => this.get('content.registeredMpacks').push(mpackInfo)); + }, + retryDownload: function (event) { const mpack = event.context; diff --git a/ambari-web/app/mappers/stack_mapper.js b/ambari-web/app/mappers/stack_mapper.js index 18eaf1dc..162d24e 100644 --- a/ambari-web/app/mappers/stack_mapper.js +++ b/ambari-web/app/mappers/stack_mapper.js @@ -25,13 +25,13 @@ App.stackMapper = App.QuickDataMapper.create({ configStack: { id: 'id', - stack_name: 'stack_name', - stack_version: 'stack_version', + stack_name: 'mpack_name', + stack_version: 'mpack_version', stack_default: 'stack_default', stack_repo_update_link_exists: 'stack_repo_update_link_exists', show_available: 'show_available', type: 'type', - repository_version: 'repository_version', + repository_version: 'mpack_version', active: 'active', parent_stack_version: 'parent_stack_version', min_upgrade_version: 'min_upgrade_version', @@ -102,11 +102,9 @@ App.stackMapper = App.QuickDataMapper.create({ var resultServices = []; var item = json; - var stack = item.VersionDefinition; - if (!stack.id) { - stack.id = stack.stack_name + '-' + stack.stack_version + '-' + stack.repository_version; //HDP-2.5-2.5.0.0 - } - + var stack = item.MpackInfo; + stack.id = stack.mpack_name + '-' + stack.mpack_version; //HDPCORE-1.0.0-b100 + var operatingSystemsArray = []; var servicesArray = []; @@ -114,16 +112,16 @@ App.stackMapper = App.QuickDataMapper.create({ var operatingSystems = ops.OperatingSystems; var repositoriesArray = []; - ops.repositories.forEach(function(repo) { - repo.Repositories.id = [stack.id, repo.Repositories.os_type, repo.Repositories.repo_id].join('-'); - repo.Repositories.os_id = [stack.id, repo.Repositories.os_type].join('-'); - if (!repo.Repositories.latest_base_url) repo.Repositories.latest_base_url = repo.Repositories.base_url; - resultRepo.push(this.parseIt(repo.Repositories, this.get('configRepository'))); - repositoriesArray.pushObject(repo.Repositories); + operatingSystems.repositories.forEach(function(repo) { + repo.id = [stack.id, repo.os_type, repo.repo_id].join('-'); + repo.os_id = [stack.id, repo.os_type].join('-'); + if (!repo.latest_base_url) repo.latest_base_url = repo.base_url; + resultRepo.push(this.parseIt(repo, this.get('configRepository'))); + repositoriesArray.pushObject(repo); }, this); operatingSystems.id = stack.id + "-" + operatingSystems.os_type; - operatingSystems.stack_id = operatingSystems.stack_name + "-" + operatingSystems.stack_version; + operatingSystems.stack_id = stack.id; operatingSystems.repositories = repositoriesArray; operatingSystems.is_selected = ops.isSelected == true || ops.isSelected == undefined; resultOS.push(this.parseIt(operatingSystems, this.get('configOS'))); @@ -131,19 +129,20 @@ App.stackMapper = App.QuickDataMapper.create({ }, this); - stack.stack_services.forEach(function(service) { + stack.modules.forEach(function(service) { var serviceObj = { id: service.name + '-' + stack.id, name: service.name, - display_name: service.display_name, - latest_version: service.versions? service.versions[0] : '' + display_name: service.displayName, + latest_version: service.versions ? service.versions[0] : '' }; resultServices.push(this.parseIt(serviceObj, this.get('configService'))); servicesArray.pushObject(serviceObj); }, this); //In case ambari_managed_repositories is undefined, set use_redhat_satellite to be false - stack.use_redhat_satellite = item.operating_systems[0].OperatingSystems.ambari_managed_repositories === false; + stack.show_available = true; + stack.use_redhat_satellite = false; stack.stack_services = servicesArray; stack.operating_systems = operatingSystemsArray; App.store.safeLoadMany(modelRepo, resultRepo); diff --git a/ambari-web/app/routes/installer.js b/ambari-web/app/routes/installer.js index e58ebcb..89b136d 100644 --- a/ambari-web/app/routes/installer.js +++ b/ambari-web/app/routes/installer.js @@ -412,6 +412,7 @@ module.exports = Em.Route.extend(App.RouterRedirections, { } App.set('router.nextBtnClickInProgress', true); const controller = router.get('installerController'); + controller.save('registeredMpacks'); controller.save('selectedStack'); const downloadConfig = controller.get('content.downloadConfig'); if (downloadConfig && downloadConfig.useCustomRepo) { diff --git a/ambari-web/app/utils/ajax/ajax.js b/ambari-web/app/utils/ajax/ajax.js index 4d70854..3f8bd8b 100644 --- a/ambari-web/app/utils/ajax/ajax.js +++ b/ambari-web/app/utils/ajax/ajax.js @@ -3162,6 +3162,10 @@ var urls = { } }, + 'mpack.get_registered_mpack': { + real: '/mpacks/{id}', + }, + 'mpack.get_registered_mpacks': { real: '/mpacks?fields=*', }, diff --git a/ambari-web/test/controllers/installer_test.js b/ambari-web/test/controllers/installer_test.js index 9cf017e..948579a 100644 --- a/ambari-web/test/controllers/installer_test.js +++ b/ambari-web/test/controllers/installer_test.js @@ -521,7 +521,8 @@ describe('App.InstallerController', function () { var checker = { loadConfirmedHosts: function() { loadConfirmedHosts = true; - } + }, + loadRegisteredMpacks: sinon.stub() }; beforeEach(function () { @@ -533,6 +534,17 @@ describe('App.InstallerController', function () { }); }); + describe('Should load registered mpacks', function () { + it('maps registered mpacks', function () { + sinon.stub(installerController, 'getDBProperty').returns([{}, {}, {}]); + sinon.stub(App.stackMapper, 'map'); + installerController.loadRegisteredMpacks(); + expect(App.stackMapper.map.calledThrice).to.be.true; + installerController.getDBProperty.restore(); + App.stackMapper.map.restore(); + }); + }); + describe('Should load loadServices (2)', function() { var setSkipSlavesStep = false; var loadMasterComponentHosts = false; diff --git a/ambari-web/test/mappers/stack_mapper_test.js b/ambari-web/test/mappers/stack_mapper_test.js index 709c749..8fe9712 100644 --- a/ambari-web/test/mappers/stack_mapper_test.js +++ b/ambari-web/test/mappers/stack_mapper_test.js @@ -27,572 +27,421 @@ require('models/stack_version/service_simple'); describe('App.stackMapper', function () { describe("#map", function() { var testData = { - "items" : [ - { - "VersionDefinition" : { - "id" : "HDP-2.3", - "show_available": true, - "stack_name" : "HDP", - "stack_version" : "2.3", - "repository_version" : "2.3", - "version_url" : "file:/Users/ncole/src/hwx/ambari/contrib/version-builder/version_234-3396.xml", - "release" : { - "build" : "3396", - "compatible_with" : "2.3.[0-3].0", - "notes" : "http://example.com", - "version" : "2.3.4.0" - }, - "stack_services" : [ - { - "name" : "HDFS", - "display_name" : "HDFS", - "comment" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service", - "versions" : [ - "2.7.1.2.3396" - ] - }, - { - "name" : "YARN", - "display_name" : "YARN", - "comment" : "", - "versions" : [ - "1.7.3.3396" - ] - }, - { - "name" : "ZOOKEEPER", - "display_name" : "ZooKeeper", - "comment" : "", - "versions" : [ - "1.7.3.3396" - ] - } - ] - }, - "operating_systems" : [ - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7", - "OperatingSystems" : { - "os_type" : "debian7", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - }, - "repositories" : [ + "href": "http://172.22.91.73:8080/api/v1/mpacks/1", + "MpackInfo": { + "id": 1, + "modules": [ { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7/repositories/HDP-2.3", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.4.0-3396", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.4.0-3396", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.4.0-3396", - "mirrors_list" : "", - "os_type" : "debian7", - "repo_id" : "HDP-2.3", - "repo_name" : "HDP", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } + "id": "zookeeper_clients", + "displayName": "ZooKeeper Clients", + "description": "Clients for ZooKeeper", + "category": "CLIENT", + "name": "ZOOKEEPER_CLIENTS", + "version": "3.4.0.0-b34", + "definition": "zookeeper_clients-3.4.0.0-b34-definition.tar.gz", + "dependencies": [ + { + "id": "zookeeper", + "name": "ZOOKEEPER", + "dependencyType": "RUNTIME" + } + ], + "components": [ + { + "id": "zookeeper_client", + "name": "ZOOKEEPER_CLIENT", + "category": "CLIENT", + "isExternal": false, + "version": "3.4.0.0-b34" + } + ] }, { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7/repositories/HDP-UTILS-1.1.0.20", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "mirrors_list" : "", - "os_type" : "debian7", - "repo_id" : "HDP-UTILS-1.1.0.20", - "repo_name" : "HDP-UTILS", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } - } - ] - }, - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6", - "OperatingSystems" : { - "os_type" : "redhat6", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - }, - "repositories" : [ - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6/repositories/HDP-2.3", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.4.0-3396", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.4.0-3396", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.4.0-3396", - "mirrors_list" : "", - "os_type" : "redhat6", - "repo_id" : "HDP-2.3", - "repo_name" : "HDP", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } + "id": "mapreduce2", + "displayName": "MAPREDUCE2", + "description": "Apache Hadoop Mapreduce2", + "category": "SERVER", + "name": "MAPREDUCE2", + "version": "3.0.0.0-b95", + "definition": "mapreduce2-3.0.0.0-b95-definition.tar.gz", + "dependencies": [ + { + "id": "hadoop_clients", + "name": "HADOOP_CLIENTS", + "dependencyType": "INSTALL" + }, + { + "id": "yarn", + "name": "YARN", + "dependencyType": "RUNTIME" + } + ], + "components": [ + { + "id": "historyserver", + "name": "HISTORYSERVER", + "category": "MASTER", + "isExternal": false, + "version": "3.0.0.0-b95" + } + ] }, { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6/repositories/HDP-UTILS-1.1.0.20", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "mirrors_list" : "", - "os_type" : "redhat6", - "repo_id" : "HDP-UTILS-1.1.0.20", - "repo_name" : "HDP-UTILS", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } - } - ] - } - ] - }, - - { - "VersionDefinition" : { - "id" : "HDP-2.3-2.3.4.0", - "stack_name" : "HDP", - "stack_version" : "2.3", - "show_available": true, - "repository_version" : "2.3.4.0", - "version_url" : "file:/Users/ncole/src/hwx/ambari/contrib/version-builder/version_234-3397.xml", - "release" : { - "build" : "3397", - "compatible_with" : "2.3.[0-3].0", - "notes" : "http://example.com", - "version" : "2.3.4.0" - }, - "stack_services" : [ - { - "name" : "HDFS", - "display_name" : "HDFS", - "comment" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service", - "versions" : [ - "2.7.1.2-3397" - ] - }, - { - "name" : "YARN", - "display_name" : "YARN", - "comment" : "", - "versions" : [ - "1.7.3-3397" - ] - }, - { - "name" : "HBase", - "display_name" : "HBase", - "comment" : "", - "versions" : [ - "1.7.3-3397" - ] - }, - { - "name" : "ZOOKEEPER", - "display_name" : "ZooKeeper", - "comment" : "", - "versions" : [ - "1.7.3-3397" - ] - }, - { - "name" : "Hive", - "display_name" : "Hive", - "comment" : "", - "versions" : [ - "1.1.0-3397" - ] - } - ] - }, - "operating_systems" : [ - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7", - "OperatingSystems" : { - "os_type" : "debian7", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - }, - "repositories" : [ - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7/repositories/HDP-2.3", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.4.0-3397", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.4.0-3397", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.4.0-3397", - "mirrors_list" : "", - "os_type" : "debian7", - "repo_id" : "HDP-2.3", - "repo_name" : "HDP", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } + "id": "hdfs", + "displayName": "HDFS", + "description": "Apache Hadoop Distributed File System", + "category": "SERVER", + "name": "HDFS", + "version": "3.0.0.0-b95", + "definition": "hdfs-3.0.0.0-b95-definition.tar.gz", + "dependencies": [ + { + "id": "hadoop_clients", + "name": "HADOOP_CLIENTS", + "dependencyType": "INSTALL" + } + ], + "components": [ + { + "id": "namenode", + "name": "NAMENODE", + "category": "MASTER", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "datanode", + "name": "DATANODE", + "category": "SLAVE", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "journalnode", + "name": "JOURNALNODE", + "category": "SLAVE", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "secondary_namenode", + "name": "SECONDARY_NAMENODE", + "category": "MASTER", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "zkfc", + "name": "ZKFC", + "category": "SLAVE", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "nfs_gateway", + "name": "NFS_GATEWAY", + "category": "SLAVE", + "isExternal": false, + "version": "3.0.0.0-b95" + } + ] }, { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7/repositories/HDP-UTILS-1.1.0.20", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "mirrors_list" : "", - "os_type" : "debian7", - "repo_id" : "HDP-UTILS-1.1.0.20", - "repo_name" : "HDP-UTILS", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } - } - ] - }, - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6", - "OperatingSystems" : { - "os_type" : "redhat6", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - }, - "repositories" : [ + "id": "hadoop_clients", + "displayName": "Hadoop client", + "description": "Clients for HDFS, YARN and MAPREDUCE services", + "category": "CLIENT", + "name": "HADOOP_CLIENTS", + "version": "3.0.0.0-b95", + "definition": "hadoop_clients-3.0.0.0-b95-definition.tar.gz", + "dependencies": [ + { + "id": "hdfs", + "name": "HDFS", + "dependencyType": "RUNTIME" + }, + { + "id": "yarn", + "name": "YARN", + "dependencyType": "RUNTIME" + }, + { + "id": "mapreduce2", + "name": "MAPREDUCE2", + "dependencyType": "RUNTIME" + } + ], + "components": [ + { + "id": "hadoop_client", + "name": "HADOOP_CLIENT", + "category": "CLIENT", + "isExternal": false, + "version": "3.0.0.0-b95" + } + ] + }, { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6/repositories/HDP-2.3", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.4.0-3397", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.4.0-3397", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.4.0-3397", - "mirrors_list" : "", - "os_type" : "redhat6", - "repo_id" : "HDP-2.3", - "repo_name" : "HDP", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } + "id": "zookeeper", + "displayName": "ZooKeeper", + "description": "Centralized service which provides highly reliable distributed coordination", + "category": "SERVER", + "name": "ZOOKEEPER", + "version": "3.4.0.0-b34", + "definition": "zookeeper-3.4.0.0-b34-definition.tar.gz", + "dependencies": [ + { + "id": "zookeeper_clients", + "name": "ZOOKEEPER_CLIENTS", + "dependencyType": "INSTALL" + } + ], + "components": [ + { + "id": "zookeeper_server", + "name": "ZOOKEEPER_SERVER", + "category": "MASTER", + "isExternal": false, + "version": "3.4.0.0-b34" + } + ] }, { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6/repositories/HDP-UTILS-1.1.0.20", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "mirrors_list" : "", - "os_type" : "redhat6", - "repo_id" : "HDP-UTILS-1.1.0.20", - "repo_name" : "HDP-UTILS", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } + "id": "yarn", + "displayName": "YARN", + "description": "Apache Hadoop Yarn", + "category": "SERVER", + "name": "YARN", + "version": "3.0.0.0-b95", + "definition": "yarn-3.0.0.0-b95-definition.tar.gz", + "dependencies": [ + { + "id": "hadoop_clients", + "name": "HADOOP_CLIENTS", + "dependencyType": "INSTALL" + }, + { + "id": "hdfs", + "name": "HDFS", + "dependencyType": "RUNTIME" + }, + { + "id": "mapreduce2", + "name": "MAPREDUCE2", + "dependencyType": "RUNTIME" + }, + { + "id": "zookeeper", + "name": "ZOOKEEPER", + "dependencyType": "RUNTIME" + } + ], + "components": [ + { + "id": "resourcemanager", + "name": "RESOURCEMANAGER", + "category": "MASTER", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "nodemanager", + "name": "NODEMANAGER", + "category": "SLAVE", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "app_timeline_server", + "name": "APP_TIMELINE_SERVER", + "category": "MASTER", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "timeline_reader", + "name": "TIMELINE_READER", + "category": "MASTER", + "isExternal": false, + "version": "3.0.0.0-b95" + }, + { + "id": "yarn_registry_dns", + "name": "YARN_REGISTRY_DNS", + "category": "MASTER", + "isExternal": false, + "version": "3.0.0.0-b95" + } + ] } - ] - } - ] + ], + "mpack_description": "Hortonworks Data Platform Core", + "mpack_display_name": null, + "mpack_id": "hdpcore", + "mpack_name": "HDPCORE", + "mpack_uri": "http://dev.hortonworks.com.s3.amazonaws.com/HDPCORE/centos7/1.x/BUILDS/1.0.0-b201/mpack.json", + "mpack_version": "1.0.0-b201", + "registry_id": null }, - - { - "VersionDefinition" : { - "id" : "HDP-2.3-2.3.6.0", - "stack_name" : "HDP", - "stack_version" : "2.3", - "show_available": true, - "repository_version" : "2.3.6.0", - "version_url" : "file:/Users/ncole/src/hwx/ambari/contrib/version-builder/version_234-3646.xml", - "release" : { - "build" : "3646", - "compatible_with" : "2.3.[0-6].0", - "notes" : "http://example.com", - "version" : "2.3.6.0" - }, - "stack_services" : [ - { - "name" : "HDFS", - "display_name" : "HDFS", - "comment" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service", - "versions" : [ - "2.7.1.2-3646" - ] - }, - { - "name" : "YARN", - "display_name" : "YARN", - "comment" : "", - "versions" : [ - "1.7.3-3646" - ] - }, - { - "name" : "HBase", - "display_name" : "HBase", - "comment" : "", - "versions" : [ - "1.7.3-3646" - ] - }, - { - "name" : "ZOOKEEPER", - "display_name" : "ZooKeeper", - "comment" : "", - "versions" : [ - "1.7.3-3646" - ] - }, - { - "name" : "Hive", - "display_name" : "Hive", - "comment" : "", - "versions" : [ - "1.1.0-3646" - ] - } - ] - }, - "operating_systems" : [ + "operating_systems": [ { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7", - "OperatingSystems" : { - "os_type" : "debian7", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - }, - "repositories" : [ - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7/repositories/HDP-2.3", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.6.0-3646", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.6.0-3646", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.3.6.0-3646", - "mirrors_list" : "", - "os_type" : "debian7", - "repo_id" : "HDP-2.3", - "repo_name" : "HDP", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } - }, - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7/repositories/HDP-UTILS-1.1.0.20", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "mirrors_list" : "", - "os_type" : "debian7", - "repo_id" : "HDP-UTILS-1.1.0.20", - "repo_name" : "HDP-UTILS", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } + "href": "http://172.22.91.73:8080/api/v1/mpacks/1/operating_systems/redhat7", + "OperatingSystems": { + "is_ambari_managed": true, + "mpack_id": 1, + "os_type": "redhat7", + "repositories": [ + { + "distribution": null, + "components": null, + "unique": true, + "tags": [], + "base_url": "http://dev.hortonworks.com.s3.amazonaws.com/HDPCORE/centos7/1.x/BUILDS/1.0.0-b201", + "os_type": "redhat7", + "repo_id": "HDPCORE-1.0.0-b201", + "repo_name": "HDPCORE", + "mirrors_list": null, + "default_base_url": null, + "ambari_managed": true + }, + { + "distribution": null, + "components": null, + "unique": false, + "tags": [], + "base_url": "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7", + "os_type": "redhat7", + "repo_id": "HDP-UTILS-1.1.0.21", + "repo_name": "HDP-UTILS", + "mirrors_list": null, + "default_base_url": null, + "ambari_managed": true + } + ] } - ] }, { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6", - "OperatingSystems" : { - "os_type" : "redhat6", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - }, - "repositories" : [ - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6/repositories/HDP-2.3", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.6.0-3646", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.6.0-3646", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/centos6/2.x/BUILDS/2.3.6.0-3646", - "mirrors_list" : "", - "os_type" : "redhat6", - "repo_id" : "HDP-2.3", - "repo_name" : "HDP", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } - }, - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/redhat6/repositories/HDP-UTILS-1.1.0.20", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6", - "mirrors_list" : "", - "os_type" : "redhat6", - "repo_id" : "HDP-UTILS-1.1.0.20", - "repo_name" : "HDP-UTILS", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.3" - } + "href": "http://172.22.91.73:8080/api/v1/mpacks/1/operating_systems/ubuntu12", + "OperatingSystems": { + "is_ambari_managed": true, + "mpack_id": 1, + "os_type": "ubuntu12", + "repositories": [ + { + "distribution": null, + "components": null, + "unique": true, + "tags": [], + "base_url": "http://dev.hortonworks.com.s3.amazonaws.com/HDPCORE/ubuntu12/1.x/BUILDS/1.0.0-b201", + "os_type": "ubuntu12", + "repo_id": "HDPCORE-1.0.0-b201", + "repo_name": "HDPCORE", + "mirrors_list": null, + "default_base_url": null, + "ambari_managed": true + }, + { + "distribution": null, + "components": null, + "unique": false, + "tags": [], + "base_url": "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/ubuntu12", + "os_type": "ubuntu12", + "repo_id": "HDP-UTILS-1.1.0.21", + "repo_name": "HDP-UTILS", + "mirrors_list": null, + "default_base_url": null, + "ambari_managed": true + } + ] } - ] } - ] - }, - - - { - "VersionDefinition" : { - "id" : "HDP-2.4-2.4.0.0", - "stack_name" : "HDP", - "stack_version" : "2.4", - "show_available": true, - "repository_version" : "2.4.0.0", - "version_url" : "file:/Users/ncole/src/hwx/ambari/contrib/version-builder/version_169.xml", - "release" : { - "build" : "169", - "compatible_with" : "2.4.[0-3].0", - "notes" : "http://example.com", - "version" : "2.4.0.0" + ], + "version": [ + { + "href": "http://172.22.91.73:8080/api/v1/stacks/HDPCORE/versions/1.0.0-b201", + "Versions": { + "id": 1, + "stack_name": "HDPCORE", + "stack_version": "1.0.0-b201" + } + } + ], + "default_operating_systems": [ + { + "href": "http://172.22.91.73:8080/api/v1/mpacks/1/default_operating_systems/redhat7", + "OperatingSystems": { + "mpack_id": 1, + "os_type": "redhat7", + "repositories": [ + { + "distribution": null, + "components": null, + "unique": true, + "tags": [], + "base_url": "http://dev.hortonworks.com.s3.amazonaws.com/HDPCORE/centos7/1.x/BUILDS/1.0.0-b201", + "mirrors_list": null, + "repo_id": "HDPCORE-1.0.0-b201", + "repo_name": "HDPCORE" + }, + { + "distribution": null, + "components": null, + "unique": false, + "tags": [], + "base_url": "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7", + "mirrors_list": null, + "repo_id": "HDP-UTILS-1.1.0.21", + "repo_name": "HDP-UTILS" + } + ] + } }, - "stack_services" : [ - { - "name" : "HDFS", - "display_name" : "HDFS", - "comment" : "Data warehouse system for ad-hoc queries & analysis of large datasets and table & storage management service", - "versions" : [ - "2.7.1.2-169" - ] - }, - { - "name" : "YARN", - "display_name" : "YARN", - "comment" : "", - "versions" : [ - "1.7.3-169" - ] - }, - { - "name" : "HBase", - "display_name" : "HBase", - "comment" : "", - "versions" : [ - "1.7.3-169" - ] - }, - { - "name" : "ZOOKEEPER", - "display_name" : "ZooKeeper", - "comment" : "", - "versions" : [ - "1.7.3-169" - ] - }, - { - "name" : "Hive", - "display_name" : "Hive", - "comment" : "", - "versions" : [ - "1.1.0-169" - ] - }, - { - "name" : "MAPREDUCE2", - "display_name" : "MapReduce2", - "comment" : "service", - "versions" : [ - "2.7.1.2-169" - ] - }, - { - "name" : "Slider", - "display_name" : "Slider", - "comment" : "service", - "versions" : [ - "2.7.1.2-169" - ] - }, - { - "name" : "Pig", - "display_name" : "Pig", - "comment" : "service", - "versions" : [ - "2.7.1.2-169" - ] - }, - { - "name" : "Sqoop", - "display_name" : "Sqoop", - "comment" : "service", - "versions" : [ - "2.7.1.2-169" - ] - } - ] - }, - "operating_systems" : [ { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7", - "OperatingSystems" : { - "os_type" : "debian7", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.4" - }, - "repositories" : [ - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7/repositories/HDP-2.3", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.4.0.0-169", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.4.0.0-169", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP/debian7/2.x/BUILDS/2.4.0.0-169", - "mirrors_list" : "", - "os_type" : "debian7", - "repo_id" : "HDP-2.4", - "repo_name" : "HDP", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.4" - } - }, - { - "href" : "http://c6401.ambari.apache.org:8080/api/v1/stacks/HDP/versions/2.3/repository_versions/1/operating_systems/debian7/repositories/HDP-UTILS-1.1.0.20", - "Repositories" : { - "base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "default_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "latest_base_url" : "http://s3.amazonaws.com/dev.hortonworks.com/HDP-UTILS-1.1.0.20/repos/debian7", - "mirrors_list" : "", - "os_type" : "debian7", - "repo_id" : "HDP-UTILS-1.1.0.20", - "repo_name" : "HDP-UTILS", - "repository_version_id" : 1, - "stack_name" : "HDP", - "stack_version" : "2.4" - } + "href": "http://172.22.91.73:8080/api/v1/mpacks/1/default_operating_systems/ubuntu12", + "OperatingSystems": { + "mpack_id": 1, + "os_type": "ubuntu12", + "repositories": [ + { + "distribution": null, + "components": null, + "unique": true, + "tags": [], + "base_url": "http://dev.hortonworks.com.s3.amazonaws.com/HDPCORE/ubuntu12/1.x/BUILDS/1.0.0-b201", + "mirrors_list": null, + "repo_id": "HDPCORE-1.0.0-b201", + "repo_name": "HDPCORE" + }, + { + "distribution": null, + "components": null, + "unique": false, + "tags": [], + "base_url": "http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/ubuntu12", + "mirrors_list": null, + "repo_id": "HDP-UTILS-1.1.0.21", + "repo_name": "HDP-UTILS" + } + ] } - ] } - ] - } - ] - }; + ] + }; beforeEach(function () { App.resetDsStoreTypeMap(App.Repository); App.resetDsStoreTypeMap(App.OperatingSystem); App.resetDsStoreTypeMap(App.Stack); App.resetDsStoreTypeMap(App.ServiceSimple); sinon.stub(App.store, 'commit', Em.K); - testData.items.sortProperty('VersionDefinition.stack_version').reverse().forEach(function (versionDefinition) { - App.stackMapper.map(versionDefinition); - }); + App.stackMapper.map(testData); }); afterEach(function(){ App.store.commit.restore(); }); it ('should map all Stack data', function() { - expect(App.Stack.find().get('length')).to.equal(4); + expect(App.Stack.find().get('length')).to.equal(1); }); it ('all stacks are showAvailable', function() { @@ -603,29 +452,29 @@ describe('App.stackMapper', function () { expect(App.Stack.find().everyProperty('isSelected')).to.equal(false); }); - it ('7 OSes are mapped', function() { - expect(App.OperatingSystem.find().get('length')).to.equal(7); + it ('2 OSes are mapped', function() { + expect(App.OperatingSystem.find().get('length')).to.equal(2); }); it ('OSes have valid ids', function() { expect(App.OperatingSystem.find().mapProperty('id')).to.eql( - ['HDP-2.4-2.4.0.0-debian7', 'HDP-2.3-2.3.6.0-debian7', 'HDP-2.3-2.3.6.0-redhat6', 'HDP-2.3-2.3.4.0-debian7', - 'HDP-2.3-2.3.4.0-redhat6', 'HDP-2.3-debian7', 'HDP-2.3-redhat6']); + [ + 'HDPCORE-1.0.0-b201-redhat7', + 'HDPCORE-1.0.0-b201-ubuntu12' + ]); }); - it ('14 repositories are mapped', function() { - expect(App.Repository.find().get('length')).to.equal(14); + it ('4 repositories are mapped', function() { + expect(App.Repository.find().get('length')).to.equal(4); }); it ('Repositories ids are valid', function() { expect(App.Repository.find().mapProperty('id')).to.eql( - ['HDP-2.4-2.4.0.0-debian7-HDP-2.4', 'HDP-2.4-2.4.0.0-debian7-HDP-UTILS-1.1.0.20', - 'HDP-2.3-2.3.6.0-debian7-HDP-2.3', 'HDP-2.3-2.3.6.0-debian7-HDP-UTILS-1.1.0.20', - 'HDP-2.3-2.3.6.0-redhat6-HDP-2.3','HDP-2.3-2.3.6.0-redhat6-HDP-UTILS-1.1.0.20', - 'HDP-2.3-2.3.4.0-debian7-HDP-2.3','HDP-2.3-2.3.4.0-debian7-HDP-UTILS-1.1.0.20', - 'HDP-2.3-2.3.4.0-redhat6-HDP-2.3', 'HDP-2.3-2.3.4.0-redhat6-HDP-UTILS-1.1.0.20', - 'HDP-2.3-debian7-HDP-2.3', 'HDP-2.3-debian7-HDP-UTILS-1.1.0.20', - 'HDP-2.3-redhat6-HDP-2.3', 'HDP-2.3-redhat6-HDP-UTILS-1.1.0.20' + [ + 'HDPCORE-1.0.0-b201-redhat7-HDPCORE-1.0.0-b201', + 'HDPCORE-1.0.0-b201-redhat7-HDP-UTILS-1.1.0.21', + 'HDPCORE-1.0.0-b201-ubuntu12-HDPCORE-1.0.0-b201', + 'HDPCORE-1.0.0-b201-ubuntu12-HDP-UTILS-1.1.0.21' ]); }); }); -- To stop receiving notification emails like this one, please contact ishan...@apache.org.