-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/44835/
-----------------------------------------------------------
(Updated March 18, 2016, 8:57 p.m.)
Review request for Ambari, Alejandro Fernandez, Jonathan Hurley, Juanjo
Marron, Nate Cole, Sumit Mohanty, and Sid Wagle.
Bugs: AMBARI-15420
https://issues.apache.org/jira/browse/AMBARI-15420
Repository: ambari
Description
-------
Refactor resource_management library, to generalize the library and remove
HDP-specific hardcodings
Specifically,
1. Make stack-selector, conf-selector tools stack-driven instead of hardcoding
hdp-select and conf-select
2. Make stack-root stack-driven instead of hardcoding /usr/hdp
3. Make copy_tarball mappings stack-driven
4. Make PACKAGE_DIRS mapping in conf_select use stack-root instead of
hardcoding the "/usr/hdp"
In addition, also added a feature in the stack processing engine to support
properties values to be defined a external property file (See tarball_map.json,
stack_tools.json in patch)
Three config properties are added
1. cluster-env/stack_root
2. cluster-env/stack_tools
3. cluster-env/tarball_map
Corresponding helper functions get_stack_root(), get_stack_tool(),
get_tarball_map() are added in script.py, which will set the defaults if these
config properties are not defined (ambari-server upgrade scenario needs to be
addressed to add these config properties on upgrade). These helper functions
are used to remove hardcodings in resource_management library.
Remaining HDP-specific logic in resource_management library
1. conf_select::_valid()
2. conf_select::get_hadoop_conf_dir()
3. list_ambari_managed_repos::repository_names
4. version_select_util::get_component_version()
5. script::get_stack_version()
6. script::should_expose_component_version()
7. get_lzo_packages::get_lzo_packages()
Refactoring this HDP-specific logic would require "Stack Featurization"
(AMBARI-13364) to be in place.
Diffs
-----
ambari-agent/src/main/python/ambari_agent/HostCheckReportFileHandler.py
ee7db0a
ambari-common/src/main/python/resource_management/core/utils.py 71d0008
ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py
770595f
ambari-common/src/main/python/resource_management/libraries/functions/copy_tarball.py
647b8b6
ambari-common/src/main/python/resource_management/libraries/functions/default.py
23383dc
ambari-common/src/main/python/resource_management/libraries/functions/dynamic_variable_interpretation.py
a20b03c
ambari-common/src/main/python/resource_management/libraries/functions/get_stack_version.py
f2e6567
ambari-common/src/main/python/resource_management/libraries/functions/install_windows_msi.py
f1cd9cb
ambari-common/src/main/python/resource_management/libraries/functions/repo_version_history.py
d585dea
ambari-common/src/main/python/resource_management/libraries/functions/setup_ranger_plugin.py
4d9d8a4
ambari-common/src/main/python/resource_management/libraries/functions/setup_ranger_plugin_xml.py
2ccc0c6
ambari-common/src/main/python/resource_management/libraries/functions/stack_select.py
4a8eeb9
ambari-common/src/main/python/resource_management/libraries/functions/stack_tools.py
PRE-CREATION
ambari-common/src/main/python/resource_management/libraries/functions/version_select_util.py
95c5cba
ambari-common/src/main/python/resource_management/libraries/script/script.py
1b0116e
ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java
4be4049
ambari-server/src/main/java/org/apache/ambari/server/stack/ConfigurationDirectory.java
7f21aaa
ambari-server/src/main/java/org/apache/ambari/server/stack/ServiceModule.java
0c7faea
ambari-server/src/main/java/org/apache/ambari/server/stack/StackDefinitionDirectory.java
c739211
ambari-server/src/main/java/org/apache/ambari/server/stack/StackModule.java
7d934bb
ambari-server/src/main/java/org/apache/ambari/server/state/PropertyInfo.java
e7c9c27
ambari-server/src/main/java/org/apache/ambari/server/state/ValueAttributesInfo.java
3f7f756
ambari-server/src/main/java/org/apache/ambari/server/utils/JsonUtils.java
PRE-CREATION
ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_script.py
12ca388
ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/status_params.py
45dbb24
ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/atlas_client.py
d000846
ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/status_params.py
2c06c40
ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/status_params.py
535c821
ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hcat_client.py
85e7012
ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_upgrade.py
c3d15e5
ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
215e012
ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/status_params.py
7aeac24
ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/knox_gateway.py
30b9a41
ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie.py
81a227e
ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_server.py
030fb2d
ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_server_upgrade.py
27e2766
ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/status_params.py
954bb80
ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/params.py
e5b54cd
ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/package/scripts/params.py
906b198
ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/params_linux.py
e110c0c
ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/status_params.py
984a4ba
ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/params_linux.py
eb80ad6
ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/params_windows.py
dd732f5
ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py
db4f32e
ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn.py
e05ed60
ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/status_params.py
d18e4d7
ambari-server/src/main/resources/custom_actions/scripts/install_packages.py
e0f3752
ambari-server/src/main/resources/custom_actions/scripts/remove_bits.py
e69a2e4
ambari-server/src/main/resources/custom_actions/scripts/ru_set_all.py b8bf176
ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml
6197d87
ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py
96dc104
ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/shared_initialization.py
07faae4
ambari-server/src/main/resources/stacks/HDP/2.0.6/properties/stack_tools.json
PRE-CREATION
ambari-server/src/main/resources/stacks/HDP/2.0.6/properties/tarball_map.json
PRE-CREATION
ambari-server/src/test/java/org/apache/ambari/server/stack/ServiceModuleTest.java
92c1200
ambari-server/src/test/java/org/apache/ambari/server/utils/TestJsonUtils.java
PRE-CREATION
ambari-server/src/test/python/custom_actions/test_ru_set_all.py 3090f6b
ambari-server/src/test/python/host_scripts/TestAlertDiskSpace.py 2608050
ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py b5b43d6
ambari-server/src/test/python/stacks/2.0.6/YARN/test_mapreduce2_client.py
efe6038
ambari-server/src/test/python/stacks/2.0.6/YARN/test_yarn_client.py 4601092
ambari-server/src/test/python/stacks/2.0.6/hooks/after-INSTALL/test_after_install.py
31dac56
ambari-server/src/test/python/stacks/2.1/TEZ/test_tez_client.py ab08776
Diff: https://reviews.apache.org/r/44835/diff/
Testing (updated)
-------
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Ambari Main ....................................... SUCCESS [3.906s]
[INFO] Apache Ambari Project POM ......................... SUCCESS [0.029s]
[INFO] Ambari Web ........................................ SUCCESS [50.786s]
[INFO] Ambari Views ...................................... SUCCESS [3.417s]
[INFO] Ambari Admin View ................................. SUCCESS [6.596s]
[INFO] ambari-metrics .................................... SUCCESS [0.215s]
[INFO] Ambari Metrics Common ............................. SUCCESS [3.073s]
[INFO] Ambari Metrics Hadoop Sink ........................ SUCCESS [5.126s]
[INFO] Ambari Metrics Flume Sink ......................... SUCCESS [3.080s]
[INFO] Ambari Metrics Kafka Sink ......................... SUCCESS [4.413s]
[INFO] Ambari Metrics Storm Sink ......................... SUCCESS [1.547s]
[INFO] Ambari Metrics Collector .......................... SUCCESS [9:53.524s]
[INFO] Ambari Metrics Monitor ............................ SUCCESS [1.886s]
[INFO] Ambari Metrics Grafana ............................ SUCCESS [39.843s]
[INFO] Ambari Metrics Assembly ........................... SUCCESS [3:25.123s]
[INFO] Ambari Server ..................................... SUCCESS
[1:07:30.219s]
[INFO] Ambari Functional Tests ........................... SUCCESS [3.081s]
[INFO] Ambari Agent ...................................... SUCCESS [14.506s]
[INFO] Ambari Client ..................................... SUCCESS [0.063s]
[INFO] Ambari Python Client .............................. SUCCESS [0.381s]
[INFO] Ambari Groovy Client .............................. SUCCESS [13.112s]
[INFO] Ambari Shell ...................................... SUCCESS [0.034s]
[INFO] Ambari Python Shell ............................... SUCCESS [0.044s]
[INFO] Ambari Groovy Shell ............................... SUCCESS [9.936s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1:23:34.755s
[INFO] Finished at: Fri Mar 18 13:49:52 PDT 2016
[INFO] Final Memory: 103M/1003M
[INFO] ------------------------------------------------------------------------
Thanks,
Jayush Luniya