Repository: ambari Updated Branches: refs/heads/trunk 4c247ba19 -> c415528d4
AMBARI-11025. manual kerb is installing kerb packages + overwriting krb5.conf. (rlevas via yusaku) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c415528d Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c415528d Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c415528d Branch: refs/heads/trunk Commit: c415528d495bc89b3e0399289f02fdf13b74475a Parents: 4c247ba Author: Yusaku Sako <[email protected]> Authored: Sun May 10 09:25:45 2015 -0700 Committer: Yusaku Sako <[email protected]> Committed: Sun May 10 09:25:45 2015 -0700 ---------------------------------------------------------------------- .../main/admin/kerberos/step2_controller.js | 33 +++++++++++++++++--- .../main/admin/kerberos/wizard_controller.js | 20 ++---------- ambari-web/app/routes/add_kerberos_routes.js | 1 + 3 files changed, 33 insertions(+), 21 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/c415528d/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js b/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js index 100c797..c5d288c 100644 --- a/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js +++ b/ambari-web/app/controllers/main/admin/kerberos/step2_controller.js @@ -21,8 +21,15 @@ require('controllers/wizard/step7_controller'); App.KerberosWizardStep2Controller = App.WizardStep7Controller.extend({ name: "kerberosWizardStep2Controller", + isKerberosWizard: true, + kdcTypesValues: { + 'mit-kdc' : Em.I18n.t('admin.kerberos.wizard.step1.option.kdc'), + 'active-directory': Em.I18n.t('admin.kerberos.wizard.step1.option.ad'), + 'none' : Em.I18n.t('admin.kerberos.wizard.step1.option.manual') + }, + selectedServiceNames: ['KERBEROS'], allSelectedServiceNames: ['KERBEROS'], @@ -248,14 +255,32 @@ App.KerberosWizardStep2Controller = App.WizardStep7Controller.extend({ } }, this); this.tweakKdcTypeValue(properties); + this.tweakManualKdcProperties(properties); return {"type": site, "tag": tag, "properties": properties}; }, tweakKdcTypeValue: function (properties) { - if (properties['kdc_type'] === Em.I18n.t('admin.kerberos.wizard.step1.option.kdc')) { - properties['kdc_type'] = "mit-kdc"; - } else if (properties['kdc_type'] === Em.I18n.t('admin.kerberos.wizard.step1.option.ad')) { - properties['kdc_type'] = "active-directory"; + for (var prop in this.get('kdcTypesValues')) { + if (this.get('kdcTypesValues').hasOwnProperty(prop)) { + if (this.get('kdcTypesValues')[prop] === properties['kdc_type']) { + properties['kdc_type'] = prop; + } + } + } + }, + + tweakManualKdcProperties: function (properties) { + var kerberosWizardController = this.controllers.get('kerberosWizardController'); + if (properties['kdc_type'] === 'none' || kerberosWizardController.get('skipClientInstall')) { + if (properties.hasOwnProperty('manage_identities')) { + properties['manage_identities'] = 'false'; + } + if (properties.hasOwnProperty('install_packages')) { + properties['install_packages'] = 'false'; + } + if (properties.hasOwnProperty('manage_krb5_conf')) { + properties['manage_krb5_conf'] = 'false'; + } } }, http://git-wip-us.apache.org/repos/asf/ambari/blob/c415528d/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js index d3fb9c9..d8c94d7 100644 --- a/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js +++ b/ambari-web/app/controllers/main/admin/kerberos/wizard_controller.js @@ -21,7 +21,7 @@ var App = require('app'); App.KerberosWizardController = App.WizardController.extend({ - exceptionsOnSkipClient: ['realm', 'kdc_type', 'kdc_host', 'executable_search_paths'], + exceptionsOnSkipClient: ['realm', 'executable_search_paths'], name: 'kerberosWizardController', @@ -140,14 +140,8 @@ App.KerberosWizardController = App.WizardController.extend({ }, saveKerberosOption: function (stepController) { - // the server does not support this kdc_type and will fail on install - //TODO: make sure the server supports all kdc_types - var selectedItem = stepController.get('selectedItem'); - if (selectedItem === Em.I18n.t('admin.kerberos.wizard.step1.option.manual')) { - selectedItem = Em.I18n.t('admin.kerberos.wizard.step1.option.kdc'); - } - this.setDBProperty('kerberosOption', selectedItem); - this.set('content.kerberosOption', selectedItem); + this.setDBProperty('kerberosOption', stepController.get('selectedItem')); + this.set('content.kerberosOption', stepController.get('selectedItem')); }, /** @@ -179,8 +173,6 @@ App.KerberosWizardController = App.WizardController.extend({ this.set('kerberosDescriptorConfigs', kerberosDescriptorConfigs); }, - - /** * Overide the visibility of a list of form items with a new value * @@ -194,12 +186,6 @@ App.KerberosWizardController = App.WizardController.extend({ for (var i=0; i < itemsArray.length; i += 1) { if (self.get('exceptionsOnSkipClient').indexOf(itemsArray[i].get('name')) < 0) { itemsArray[i].set('isVisible', newValue); - - // if it was required, but we're making it not visible, also - // make the input value not required any more - if (itemsArray[i].get('isRequiredByAgent') && !newValue) { - itemsArray[i].set('isRequiredByAgent', newValue) - } } } }, http://git-wip-us.apache.org/repos/asf/ambari/blob/c415528d/ambari-web/app/routes/add_kerberos_routes.js ---------------------------------------------------------------------- diff --git a/ambari-web/app/routes/add_kerberos_routes.js b/ambari-web/app/routes/add_kerberos_routes.js index 0f9f3e3..d3e9c6e 100644 --- a/ambari-web/app/routes/add_kerberos_routes.js +++ b/ambari-web/app/routes/add_kerberos_routes.js @@ -177,6 +177,7 @@ module.exports = App.WizardRoute.extend({ kerberosWizardStep2Controller.get('stepConfigs')[0].get('configs').findProperty('name', 'manage_identities').set('value', 'false'); kerberosWizardStep2Controller.get('stepConfigs')[0].get('configs').findProperty('name', 'install_packages').set('value', 'false'); kerberosWizardStep2Controller.get('stepConfigs')[0].get('configs').findProperty('name', 'manage_krb5_conf').set('value', 'false'); + kerberosWizardStep2Controller.get('stepConfigs')[0].get('configs').findProperty('name', 'kdc_type').set('value', 'none'); } kerberosWizardController.saveServiceConfigProperties(kerberosWizardStep2Controller);
