Merge remote-tracking branch 'origin/trunk' into branch-feature-AMBARI-14714
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/c34c8693 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/c34c8693 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/c34c8693 Branch: refs/heads/branch-feature-AMBARI-14714 Commit: c34c86935f9704185c542b3b3f1ee95effe7df0d Parents: 5465aaa 95e7719 Author: Jayush Luniya <jlun...@hortonworks.com> Authored: Sun Jul 23 16:33:17 2017 -0700 Committer: Jayush Luniya <jlun...@hortonworks.com> Committed: Sun Jul 23 16:33:17 2017 -0700 ---------------------------------------------------------------------- .../authentication/AuthenticationMainCtrl.js | 4 +- .../controllers/groups/GroupsEditCtrl.js | 3 + .../stackVersions/StackVersionsCreateCtrl.js | 3 +- .../ui/admin-web/app/scripts/i18n.config.js | 7 - .../resource_management/TestUserResource.py | 2 +- .../python/ambari_commons/get_ambari_version.py | 44 ++ .../python/resource_management/core/base.py | 11 + .../core/providers/accounts.py | 6 +- .../core/resources/accounts.py | 4 +- .../libraries/functions/conf_select.py | 56 +- .../libraries/functions/get_stack_version.py | 4 +- .../libraries/functions/stack_features.py | 28 +- .../libraries/providers/hdfs_resource.py | 48 +- ambari-infra/ambari-infra-solr-client/build.xml | 1 + ambari-infra/ambari-infra-solr-client/pom.xml | 10 + .../src/main/resources/solrIndexHelper.sh | 156 ++++ .../ambari/logfeeder/mapper/MapperDate.java | 42 +- ambari-logsearch/docker/logsearch-docker.sh | 22 +- .../kafka/KafkaTimelineMetricsReporter.java | 6 +- ambari-server/pom.xml | 2 +- ambari-server/sbin/ambari-server | 6 +- .../actionmanager/ExecutionCommandWrapper.java | 34 +- .../server/checks/AbstractCheckDescriptor.java | 8 +- .../server/checks/ConfigurationMergeCheck.java | 2 +- .../checks/HostsMasterMaintenanceCheck.java | 4 +- .../checks/HostsRepositoryVersionCheck.java | 8 +- .../server/checks/InstallPackagesCheck.java | 6 +- .../server/configuration/Configuration.java | 6 +- .../controller/ActionExecutionContext.java | 30 +- .../controller/AmbariActionExecutionHelper.java | 15 +- .../AmbariCustomCommandExecutionHelper.java | 28 +- .../AmbariManagementControllerImpl.java | 145 +++- .../controller/DeleteIdentityHandler.java | 77 +- .../server/controller/KerberosHelper.java | 2 +- .../server/controller/KerberosHelperImpl.java | 5 +- .../server/controller/PrereqCheckRequest.java | 39 +- .../internal/AbstractProviderModule.java | 1 + .../BlueprintConfigurationProcessor.java | 64 +- .../internal/ClientConfigResourceProvider.java | 3 +- .../ClusterStackVersionResourceProvider.java | 2 +- .../internal/HostResourceProvider.java | 1 + .../internal/HttpPropertyProvider.java | 27 +- .../PreUpgradeCheckResourceProvider.java | 80 +- .../internal/ReadOnlyResourceProvider.java | 2 +- .../server/controller/internal/Stack.java | 2 +- .../server/controller/internal/UnitUpdater.java | 150 ++++ .../internal/UpgradeResourceProvider.java | 91 ++- .../utilities/KerberosIdentityCleaner.java | 88 +-- .../utilities/RemovableIdentities.java | 145 ++++ .../controller/utilities/UsedIdentities.java | 101 +++ .../ServiceComponentUninstalledEvent.java | 6 + .../server/events/ServiceRemovedEvent.java | 29 +- .../listeners/upgrade/StackVersionListener.java | 33 +- .../ambari/server/orm/dao/ClusterDAO.java | 15 + .../orm/entities/ClusterConfigEntity.java | 3 + .../LdapToPamMigrationHelper.java | 73 ++ .../server/security/authorization/Users.java | 4 + .../upgrades/UpgradeUserKerberosDescriptor.java | 142 ++-- .../org/apache/ambari/server/state/Cluster.java | 7 + .../ambari/server/state/ConfigHelper.java | 46 +- .../ambari/server/state/PropertyInfo.java | 2 + .../apache/ambari/server/state/ServiceImpl.java | 14 +- .../ambari/server/state/UpgradeContext.java | 31 +- .../ambari/server/state/UpgradeHelper.java | 59 +- .../server/state/cluster/ClusterImpl.java | 9 + .../AbstractKerberosDescriptorContainer.java | 12 + .../kerberos/KerberosComponentDescriptor.java | 15 - .../KerberosDescriptorUpdateHelper.java | 9 +- .../kerberos/KerberosIdentityDescriptor.java | 14 +- .../validators/TopologyValidatorFactory.java | 2 +- .../validators/UnitValidatedProperty.java | 95 +++ .../topology/validators/UnitValidator.java | 79 ++ .../server/upgrade/UpgradeCatalog252.java | 1 + ambari-server/src/main/python/ambari-server.py | 14 +- .../main/python/ambari_server/setupActions.py | 1 + .../main/python/ambari_server/setupSecurity.py | 119 ++- .../0.1.0.2.3/package/scripts/atlas_client.py | 2 +- .../ATLAS/0.1.0.2.3/package/scripts/params.py | 2 + .../HDFS/2.1.0.2.0/configuration/hdfs-site.xml | 6 + .../HDFS/2.1.0.2.0/package/scripts/hdfs.py | 8 + .../2.1.0.2.0/package/scripts/hdfs_namenode.py | 25 +- .../HDFS/2.1.0.2.0/package/scripts/namenode.py | 4 + .../2.1.0.2.0/package/scripts/params_linux.py | 9 +- .../2.1.0.2.0/package/scripts/params_windows.py | 7 + .../2.1.0.2.0/package/scripts/zkfc_slave.py | 8 +- .../package/templates/include_hosts_list.j2 | 21 + .../HDFS/3.0.0.3.0/package/scripts/hdfs.py | 8 + .../3.0.0.3.0/package/scripts/hdfs_namenode.py | 17 +- .../3.0.0.3.0/package/scripts/params_linux.py | 8 +- .../3.0.0.3.0/package/scripts/params_windows.py | 7 + .../package/templates/include_hosts_list.j2 | 21 + .../HIVE/0.12.0.2.0/package/scripts/hive.py | 3 +- .../0.12.0.2.0/package/scripts/params_linux.py | 6 + .../0.12.0.2.0/package/scripts/service_check.py | 3 +- .../KAFKA/0.10.0.3.0/metainfo.xml | 1 + .../KAFKA/0.10.0.3.0/package/scripts/kafka.py | 10 + .../KAFKA/0.10.0.3.0/package/scripts/params.py | 3 + .../common-services/KAFKA/0.10.0/metainfo.xml | 1 + .../KAFKA/0.8.1/package/scripts/kafka.py | 12 + .../KAFKA/0.8.1/package/scripts/params.py | 3 + .../KAFKA/0.9.0/configuration/kafka-broker.xml | 2 +- .../OOZIE/4.0.0.2.0/package/scripts/oozie.py | 44 +- .../package/scripts/oozie_server_upgrade.py | 34 +- .../SPARK/1.2.1/package/scripts/params.py | 11 +- .../SPARK/1.2.1/package/scripts/setup_spark.py | 6 +- .../1.2.1/package/scripts/spark_service.py | 6 +- .../YARN/2.1.0.2.0/configuration/yarn-site.xml | 6 + .../2.1.0.2.0/package/scripts/historyserver.py | 2 +- .../2.1.0.2.0/package/scripts/params_linux.py | 23 +- .../2.1.0.2.0/package/scripts/params_windows.py | 10 +- .../package/scripts/resourcemanager.py | 18 +- .../YARN/2.1.0.2.0/package/scripts/service.py | 4 + .../2.1.0.2.0/package/scripts/service_check.py | 6 +- .../package/templates/include_hosts_list.j2 | 21 + .../YARN/3.0.0.3.0/configuration/yarn-site.xml | 6 + .../3.0.0.3.0/package/scripts/params_linux.py | 11 +- .../3.0.0.3.0/package/scripts/params_windows.py | 10 +- .../package/scripts/resourcemanager.py | 18 +- .../package/templates/include_hosts_list.j2 | 21 + .../YARN/3.0.0.3.0/service_advisor.py | 7 +- .../0.6.0.2.5/configuration/zeppelin-env.xml | 2 +- .../0.6.0.2.5/package/scripts/master.py | 1 + .../3.4.5/package/scripts/params_linux.py | 5 +- .../services/HDFS/configuration/hdfs-site.xml | 6 + .../HDFS/package/scripts/hdfs_namenode.py | 12 +- .../0.8/services/HDFS/package/scripts/params.py | 11 +- .../package/templates/include_hosts_list.j2 | 21 + .../services/YARN/configuration/yarn-site.xml | 6 + .../0.8/services/YARN/package/scripts/params.py | 10 +- .../YARN/package/scripts/resourcemanager.py | 9 +- .../package/templates/include_hosts_list.j2 | 21 + .../services/YARN/configuration/yarn-site.xml | 6 + .../services/YARN/package/scripts/params.py | 9 +- .../YARN/package/scripts/resourcemanager.py | 9 +- .../package/templates/exclude_hosts_list.j2 | 21 + .../package/templates/include_hosts_list.j2 | 21 + .../hooks/before-ANY/files/changeToSecureUid.sh | 15 +- .../before-ANY/scripts/shared_initialization.py | 40 +- .../services/YARN/configuration/yarn-site.xml | 6 + .../services/YARN/package/scripts/params.py | 10 +- .../YARN/package/scripts/resourcemanager.py | 9 +- .../package/templates/include_hosts_list.j2 | 21 + .../stacks/HDP/2.5/services/stack_advisor.py | 18 +- .../stacks/HDP/2.5/upgrades/config-upgrade.xml | 6 +- .../HDP/2.5/upgrades/nonrolling-upgrade-2.6.xml | 6 +- .../stacks/HDP/2.5/upgrades/upgrade-2.6.xml | 1 + .../resources/stacks/HDP/2.6/repos/repoinfo.xml | 6 +- .../configuration/application-properties.xml | 17 + .../services/HIVE/configuration/hive-env.xml | 78 +- .../HIVE/configuration/hive-interactive-env.xml | 62 +- .../services/HIVE/configuration/hive-site.xml | 35 + .../stacks/HDP/2.6/services/stack_advisor.py | 33 +- .../stacks/HDP/2.6/upgrades/config-upgrade.xml | 4 + .../HDP/2.6/upgrades/nonrolling-upgrade-2.6.xml | 4 + .../stacks/HDP/2.6/upgrades/upgrade-2.6.xml | 1 + .../HDP/3.0/configuration/cluster-env.xml | 4 +- .../HDP/3.0/properties/stack_features.json | 752 ++++++++++--------- .../stacks/HDP/3.0/properties/stack_tools.json | 14 +- .../src/main/resources/stacks/stack_advisor.py | 20 +- .../checks/AbstractCheckDescriptorTest.java | 11 +- .../server/checks/AtlasPresenceCheckTest.java | 4 +- .../checks/ClientRetryPropertyCheckTest.java | 22 +- .../checks/ComponentsInstallationCheckTest.java | 16 +- .../checks/ConfigurationMergeCheckTest.java | 13 +- .../HiveDynamicServiceDiscoveryCheckTest.java | 23 +- .../checks/HiveMultipleMetastoreCheckTest.java | 26 +- .../server/checks/HostsHeartbeatCheckTest.java | 16 +- .../checks/HostsMasterMaintenanceCheckTest.java | 27 +- .../checks/HostsRepositoryVersionCheckTest.java | 40 +- .../server/checks/InstallPackagesCheckTest.java | 18 +- ...duce2JobHistoryStatePreservingCheckTest.java | 7 +- .../checks/PreviousUpgradeCompletedTest.java | 11 +- .../server/checks/ServicePresenceCheckTest.java | 13 +- .../ServicesMaintenanceModeCheckTest.java | 16 +- .../ServicesNamenodeTruncateCheckTest.java | 19 +- .../server/checks/ServicesUpCheckTest.java | 17 +- ...nTimelineServerStatePreservingCheckTest.java | 7 +- .../AmbariManagementControllerImplTest.java | 13 +- .../AmbariManagementControllerTest.java | 8 +- .../internal/HttpPropertyProviderTest.java | 11 + .../PreUpgradeCheckResourceProviderTest.java | 6 +- .../controller/internal/UnitUpdaterTest.java | 114 +++ .../utilities/KerberosIdentityCleanerTest.java | 102 ++- .../upgrade/StackVersionListenerTest.java | 58 +- .../server/orm/dao/ServiceConfigDAOTest.java | 12 + .../UpgradeUserKerberosDescriptorTest.java | 59 +- .../ambari/server/state/ConfigHelperTest.java | 22 + .../ambari/server/state/UpgradeHelperTest.java | 14 +- .../KerberosDescriptorUpdateHelperTest.java | 70 ++ .../topology/validators/UnitValidatorTest.java | 114 +++ .../src/test/python/TestStackFeature.py | 105 ++- .../2.0.6/HBASE/test_phoenix_queryserver.py | 23 - .../python/stacks/2.0.6/HDFS/test_namenode.py | 2 +- .../stacks/2.0.6/HIVE/test_hive_server.py | 2 + .../stacks/2.0.6/OOZIE/test_oozie_server.py | 32 +- .../stacks/2.0.6/YARN/test_historyserver.py | 21 +- .../stacks/2.0.6/configs/altfs_plus_hdfs.json | 2 +- .../python/stacks/2.0.6/configs/default.json | 2 +- .../2.0.6/configs/default_ams_embedded.json | 2 +- .../2.0.6/configs/default_hive_nn_ha.json | 2 +- .../2.0.6/configs/default_hive_nn_ha_2.json | 2 +- .../2.0.6/configs/default_hive_non_hdfs.json | 2 +- .../2.0.6/configs/default_no_install.json | 2 +- .../2.0.6/configs/default_oozie_mysql.json | 2 +- .../default_update_exclude_file_only.json | 2 +- .../2.0.6/configs/default_with_bucket.json | 2 +- .../python/stacks/2.0.6/configs/flume_22.json | 2 +- .../python/stacks/2.0.6/configs/flume_only.json | 2 +- .../stacks/2.0.6/configs/hbase_no_phx.json | 2 +- .../stacks/2.0.6/configs/hbase_with_phx.json | 2 +- .../test/python/stacks/2.0.6/configs/nn_eu.json | 2 +- .../stacks/2.0.6/configs/nn_eu_standby.json | 2 +- .../2.0.6/configs/oozie_existing_sqla.json | 2 +- .../stacks/2.0.6/configs/repository_file.json | 2 +- .../python/stacks/2.0.6/configs/secured.json | 2 +- .../2.0.6/hooks/before-ANY/test_before_any.py | 309 +++++--- .../2.1/configs/hive-metastore-upgrade.json | 2 +- .../python/stacks/2.2/configs/knox_upgrade.json | 2 +- .../test/python/stacks/2.3/configs/ats_1_5.json | 2 +- .../stacks/2.5/common/test_stack_advisor.py | 154 ++-- .../python/stacks/2.5/configs/hsi_default.json | 2 +- .../2.5/configs/hsi_default_for_restart.json | 2 +- .../test/python/stacks/2.5/configs/hsi_ha.json | 2 +- ambari-web/app/controllers/main/service.js | 13 +- .../app/controllers/wizard/step7_controller.js | 67 ++ .../configs/stack_config_properties_mapper.js | 14 +- ambari-web/app/styles/application.less | 15 + ...ontrols_service_config_usergroup_with_id.hbs | 27 + ambari-web/app/utils/ajax/ajax.js | 24 +- ambari-web/app/utils/config.js | 3 + .../configs/service_configs_by_category_view.js | 6 + ambari-web/app/views/common/controls_view.js | 39 + .../test/controllers/main/service_test.js | 4 +- .../services/YARN/configuration/yarn-site.xml | 6 + .../YARN/package/scripts/params_linux.py | 9 +- .../YARN/package/scripts/params_windows.py | 10 +- .../YARN/package/scripts/resourcemanager.py | 18 +- .../package/templates/include_hosts_list.j2 | 21 + .../hive20/src/main/resources/ui/package.json | 1 + .../src/main/resources/ui/package.json | 1 + 240 files changed, 4555 insertions(+), 1588 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/c34c8693/ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/c34c8693/ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/c34c8693/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java ---------------------------------------------------------------------- diff --cc ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java index 5d46fb3,4024f05..6e66e3d --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerImplTest.java @@@ -2404,50 -2405,4 +2414,49 @@@ public class AmbariManagementController verify(injector, clusters, ambariMetaInfo, stackInfo, cluster, repoVersionDAO, repoVersion); } + @Test + public void testRegisterMpacks() throws Exception{ + MpackRequest mpackRequest = createNiceMock(MpackRequest.class); + RequestStatusResponse response = new RequestStatusResponse(new Long(201)); + Mpack mpack = new Mpack(); + mpack.setMpackId((long)100); + mpack.setPacklets(new ArrayList<Packlet>()); + mpack.setPrerequisites(new HashMap<String, String>()); + mpack.setRegistryId(new Long(100)); + mpack.setVersion("3.0"); + mpack.setMpackUri("abc.tar.gz"); + mpack.setDescription("Test mpack"); + mpack.setName("testMpack"); + MpackResponse mpackResponse = new MpackResponse(mpack); + Injector injector = createNiceMock(Injector.class); + expect(injector.getInstance(MaintenanceStateHelper.class)).andReturn(null).atLeastOnce(); + expect(ambariMetaInfo.registerMpack(mpackRequest)).andReturn(mpackResponse); + ambariMetaInfo.init(); + expectLastCall(); + replay(ambariMetaInfo,injector); + AmbariManagementController controller = new AmbariManagementControllerImpl(null, clusters, injector); + setAmbariMetaInfo(ambariMetaInfo, controller); + Assert.assertEquals(mpackResponse,controller.registerMpack(mpackRequest)); + } + + @Test + public void testGetPacklets() throws Exception { + Long mpackId = new Long(100); + ArrayList<Packlet> packletArrayList = new ArrayList<>(); + Packlet samplePacklet = new Packlet(); + Injector injector = createNiceMock(Injector.class); + samplePacklet.setType("service"); + samplePacklet.setVersion("3.0.0"); + samplePacklet.setName("NIFI"); + samplePacklet.setSourceDir("/abc/nifi.tar.gz"); + packletArrayList.add(samplePacklet); + expect(injector.getInstance(MaintenanceStateHelper.class)).andReturn(null).atLeastOnce(); + expect(ambariMetaInfo.getPacklets(mpackId)).andReturn(packletArrayList).atLeastOnce(); + replay(ambariMetaInfo,injector); + AmbariManagementController controller = new AmbariManagementControllerImpl(null, clusters, injector); + setAmbariMetaInfo(ambariMetaInfo, controller); + + Assert.assertEquals(packletArrayList,controller.getPacklets(mpackId)); + + } - } http://git-wip-us.apache.org/repos/asf/ambari/blob/c34c8693/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigHelperTest.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/c34c8693/ambari-server/src/test/java/org/apache/ambari/server/state/kerberos/KerberosDescriptorUpdateHelperTest.java ----------------------------------------------------------------------