Repository: ambari Updated Branches: refs/heads/branch-2.2 e15d1e0fb -> cd85ccd0a refs/heads/trunk 2915a9a34 -> e67521e27
AMBARI-14233. Ranger LDAP configs messed up after Ambari upgrade from 2.1.2 to 2.1.3. Additional fix (dlysnichenko) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/cd85ccd0 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/cd85ccd0 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/cd85ccd0 Branch: refs/heads/branch-2.2 Commit: cd85ccd0a374c0cce0609ec2bd82763739236e1e Parents: e15d1e0 Author: Lisnichenko Dmitro <dlysniche...@hortonworks.com> Authored: Mon Dec 7 14:18:58 2015 +0200 Committer: Lisnichenko Dmitro <dlysniche...@hortonworks.com> Committed: Mon Dec 7 14:18:58 2015 +0200 ---------------------------------------------------------------------- .../server/upgrade/UpgradeCatalog213.java | 27 +++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/cd85ccd0/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog213.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog213.java b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog213.java index 4126228..f80f7b9 100644 --- a/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog213.java +++ b/ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog213.java @@ -1241,18 +1241,21 @@ public class UpgradeCatalog213 extends AbstractUpgradeCatalog { for (final Cluster cluster : getCheckedClusterMap(ambariManagementController.getClusters()).values()) { Config rangerUgsyncSiteProperties = cluster.getDesiredConfigByType(RANGER_UGSYNC_SITE_CONFIG); if (rangerUgsyncSiteProperties != null && rangerUgsyncSiteProperties.getProperties().containsKey(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY)) { - if (rangerUgsyncSiteProperties.getProperties().get(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY).equals("ldap")) { - Map<String, String> updates = Collections.singletonMap(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY, - "org.apache.ranger.ldapusersync.process.LdapUserGroupBuilder"); - updateConfigurationPropertiesForCluster(cluster, RANGER_UGSYNC_SITE_CONFIG, updates, true, false); - } else if (rangerUgsyncSiteProperties.getProperties().get(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY).equals("unix")) { - Map<String, String> updates = Collections.singletonMap(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY, - "org.apache.ranger.unixusersync.process.UnixUserGroupBuilder"); - updateConfigurationPropertiesForCluster(cluster, RANGER_UGSYNC_SITE_CONFIG, updates, true, false); - } else if (rangerUgsyncSiteProperties.getProperties().get(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY).equals("file")) { - Map<String, String> updates = Collections.singletonMap(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY, - "org.apache.ranger.unixusersync.process.FileSourceUserGroupBuilder"); - updateConfigurationPropertiesForCluster(cluster, RANGER_UGSYNC_SITE_CONFIG, updates, true, false); + String sourceClassValue = rangerUgsyncSiteProperties.getProperties().get(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY); + if (sourceClassValue != null) { + if ("ldap".equals(sourceClassValue)) { + Map<String, String> updates = Collections.singletonMap(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY, + "org.apache.ranger.ldapusersync.process.LdapUserGroupBuilder"); + updateConfigurationPropertiesForCluster(cluster, RANGER_UGSYNC_SITE_CONFIG, updates, true, false); + } else if ("unix".equals(sourceClassValue)) { + Map<String, String> updates = Collections.singletonMap(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY, + "org.apache.ranger.unixusersync.process.UnixUserGroupBuilder"); + updateConfigurationPropertiesForCluster(cluster, RANGER_UGSYNC_SITE_CONFIG, updates, true, false); + } else if ("file".equals(sourceClassValue)) { + Map<String, String> updates = Collections.singletonMap(RANGER_USERSYNC_SOURCE_IMPL_CLASS_PROPERTY, + "org.apache.ranger.unixusersync.process.FileSourceUserGroupBuilder"); + updateConfigurationPropertiesForCluster(cluster, RANGER_UGSYNC_SITE_CONFIG, updates, true, false); + } } } }