You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@ambari.apache.org by Jonathan Hurley <jh...@hortonworks.com> on 2017/08/01 14:09:19 UTC

Review Request 61276: Replace Hard Coded conf-select Structures

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61276/
-----------------------------------------------------------

Review request for Ambari, Alejandro Fernandez, Dmytro Grinenko, Dmitro Lisnichenko, and Nate Cole.


Bugs: AMBARI-21581
    https://issues.apache.org/jira/browse/AMBARI-21581


Repository: ambari


Description
-------

Currently, both the stack-select and conf-select python files have hard-coded structures inside of them which contain mappings for things like configuration directories and stack-select component names. 

This code is really HDP-specific in that it reverses the mappings of the RPMs and allows us to remap {{/etc/<component>/conf}} to {{/usr/hdp/current/<stack-component>/conf}}
{code:title=conf_select.py}
_PACKAGE_DIRS = {
  "atlas": [
    {
      "conf_dir": "/etc/atlas/conf",
      "current_dir": "{0}/current/atlas-client/conf".format(STACK_ROOT_PATTERN)
    }
  ],
  "accumulo": [
    {
      "conf_dir": "/etc/accumulo/conf",
      "current_dir": "{0}/current/accumulo-client/conf".format(STACK_ROOT_PATTERN)
    }
  ],
...
{code}

With the coming of management packs replacing stacks, we can no longer hard code this in Python.

Additionally, there is an odd anti-pattern here where we conf-select on installation and also on upgrade. The upgrade should never deal with conf-select as those directories should have already been created during the installation phase.


Diffs
-----

  ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py 4f11633fbe 
  ambari-common/src/main/python/resource_management/libraries/functions/stack_select.py 9e28907f8f 
  ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java ec8b38c9a7 
  ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java 827037056d 
  ambari-server/src/main/java/org/apache/ambari/server/upgrade/FinalUpgradeCatalog.java 55f9665e32 
  ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_client.py 856446ccce 
  ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_script.py a0519b20da 
  ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/atlas_client.py 6e4a168881 
  ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata_server.py ff7bf5fe88 
  ambari-server/src/main/resources/common-services/DRUID/0.9.2/package/scripts/druid_node.py 20623f7f5e 
  ambari-server/src/main/resources/common-services/DRUID/0.9.2/package/scripts/superset.py 36dab51441 
  ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon_client.py 85d80ba6a5 
  ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon_server.py c7ba556304 
  ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/package/scripts/flume_handler.py f57fae7b37 
  ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py 4820d24883 
  ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py f2b44bddeb 
  ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py 8ea3616ecc 
  ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/datanode.py ba926cb56e 
  ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/hdfs_client.py f320eee075 
  ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/journalnode.py 402e7ade26 
  ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/namenode.py aac7977b6b 
  ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/nfsgateway.py dea9d43d16 
  ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/snamenode.py 115a830966 
  ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/zkfc_slave.py fabbabbac6 
  ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py 1694816594 
  ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py c84f47e074 
  ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py a1212e00c9 
  ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_interactive.py 16d7907c57 
  ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py db86d9ec5e 
  ambari-server/src/main/resources/common-services/KAFKA/0.8.1/package/scripts/kafka_broker.py 08c3dd19de 
  ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/knox_gateway.py 6df68ccd3e 
  ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/package/scripts/mahout_client.py b598d1778d 
  ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_client.py ac8b0788f3 
  ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_server.py 82a764dc9b 
  ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/package/scripts/pig_client.py 693af5c728 
  ambari-server/src/main/resources/common-services/R4ML/0.8.0/package/scripts/r4ml_client.py f973e697c2 
  ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_admin.py e27a03e9f1 
  ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_tagsync.py 5ff498f256 
  ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py 8654bc2072 
  ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/upgrade.py ca1b2bf8aa 
  ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms_server.py 0bd11f33a3 
  ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/upgrade.py 73c32ffe87 
  ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider_client.py adc7026144 
  ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/job_history_server.py c36def4658 
  ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/livy_server.py 0ac1679815 
  ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/spark_client.py a2e26b8f3a 
  ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/spark_thrift_server.py 44a156f3fd 
  ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/job_history_server.py 793ffa35fe 
  ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/livy2_server.py c71075766a 
  ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/spark_client.py 1db442959e 
  ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/spark_thrift_server.py e0dc11d23d 
  ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop_client.py 8c7dd3570a 
  ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/drpc_server.py 7da3fa1109 
  ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus.py 53b965effb 
  ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus_prod.py 18d8fea8a3 
  ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/pacemaker.py fc45bc1f66 
  ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor.py 318bd0ba7c 
  ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor_prod.py 46626bc433 
  ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/ui_server.py 90ec64c962 
  ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez_client.py 8a6a6d31a3 
  ambari-server/src/main/resources/common-services/TITAN/1.0.0/package/scripts/titan_client.py 2d0a93e6a7 
  ambari-server/src/main/resources/common-services/TITAN/1.0.0/package/scripts/titan_server.py 427448b7f5 
  ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/application_timeline_server.py c4f3cfef09 
  ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/historyserver.py ff50e4ee6a 
  ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/mapreduce2_client.py efcb2da1de 
  ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/nodemanager.py acd09916e7 
  ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/resourcemanager.py 2d74aa996f 
  ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn_client.py d57060cd3b 
  ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py f8f6e3d64f 
  ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5/package/scripts/zookeeper_client.py 6c60e91238 
  ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5/package/scripts/zookeeper_server.py a42cfb60bd 
  ambari-server/src/main/resources/custom_actions/scripts/install_packages.py c0b0e23e23 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/configuration/cluster-env.xml c73b6e4e2d 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/properties/stack_select_packages.json a91a84129f 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/FLUME/package/scripts/flume_handler.py 159278ad43 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HBASE/package/scripts/hbase_client.py df382cee99 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HBASE/package/scripts/upgrade.py f1024c5cdf 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/datanode.py b1f1d00e1b 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/hdfs_client.py 851afd6adc 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/journalnode.py afc54be37e 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/namenode.py 38ad927e15 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/nfsgateway.py 8edd037490 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/snamenode.py 1fe89a2ffa 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_client.py 5ec624c427 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_metastore.py 8fcd4e4c03 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_server.py 269e89786f 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/webhcat_server.py 627c96ee37 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KAFKA/package/scripts/kafka_broker.py 9fad6a7ddc 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KAFKA/package/scripts/upgrade.py 5628297345 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KNOX/package/scripts/knox_gateway.py 99e0086110 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/OOZIE/package/scripts/oozie_client.py a7a205bb5d 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/OOZIE/package/scripts/oozie_server.py 11c8c8e31c 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/PIG/package/scripts/pig_client.py 96a48c1e2c 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SLIDER/package/scripts/slider_client.py e5c14834e7 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SOLR/package/scripts/solr_server.py 3605264ffc 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SOLR/package/scripts/solr_upgrade.py d72c5a34af 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/job_history_server.py 654b88a3da 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/spark_client.py 7f2e7fc6e5 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/spark_thrift_server.py 75908a75b3 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SQOOP/package/scripts/sqoop_client.py 5e48acaaed 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/application_timeline_server.py 125a65f6aa 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/historyserver.py d887fce3d3 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/mapreduce2_client.py fe64193754 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/nodemanager.py c0481273e8 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/resourcemanager.py 554c23d896 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/yarn_client.py 1f139bff66 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/ZOOKEEPER/package/scripts/zookeeper_client.py 63e1df8dcc 
  ambari-server/src/main/resources/stacks/BigInsights/4.0/services/ZOOKEEPER/package/scripts/zookeeper_server.py 727622a24f 
  ambari-server/src/main/resources/stacks/BigInsights/4.2.5/hooks/after-INSTALL/scripts/hook.py 8a583b3fbc 
  ambari-server/src/main/resources/stacks/BigInsights/4.2.5/hooks/after-INSTALL/scripts/shared_initialization.py 1324c8caa4 
  ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/hbase_client.py 1c3f113240 
  ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/phoenix_queryserver.py 1621916845 
  ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/upgrade.py dbeb55de55 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/FLUME/package/scripts/flume_handler.py d70d06a090 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/hbase_client.py 2b83664492 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/phoenix_queryserver.py 51b8c65971 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/upgrade.py f1024c5cdf 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/datanode.py 7f38a78033 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/hdfs_client.py 62c6dd0a56 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/journalnode.py 3f44de06c0 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/namenode.py 280aeee1a8 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/nfsgateway.py b105d69d58 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/snamenode.py 6a7fd4387c 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_client.py 14a5f8362c 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_metastore.py 0a651f902d 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_server.py 79e4c733a7 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/webhcat_server.py 9f1596b45d 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/KAFKA/package/scripts/kafka_broker.py cf08b9ba31 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/KNOX/package/scripts/knox_gateway.py 2b3a103664 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/OOZIE/package/scripts/oozie_client.py 8f4577effc 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/OOZIE/package/scripts/oozie_server.py c2e1af53a1 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/PIG/package/scripts/pig_client.py 96a48c1e2c 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER/package/scripts/ranger_admin.py c34951b6ea 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER/package/scripts/upgrade.py 75b1fbeead 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER_KMS/package/scripts/upgrade.py b37c2959f3 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SLIDER/package/scripts/slider_client.py 33e258899d 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SOLR/package/scripts/solr_server.py 6b4454e078 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SOLR/package/scripts/solr_upgrade.py 61142e316b 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/job_history_server.py 50fef1abac 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/spark_client.py afd9238625 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/spark_thrift_server.py a680701f44 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SQOOP/package/scripts/sqoop_client.py 7b48dfe720 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan_client.py 814fb38bbb 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/application_timeline_server.py fbac4883c6 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/historyserver.py 5e1cfea6bc 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/mapreduce2_client.py 57d0d7205d 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/nodemanager.py 6b09b13ae6 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/resourcemanager.py 274100d372 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/yarn_client.py e3b9125311 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/ZOOKEEPER/package/scripts/zookeeper_client.py f5408aadf0 
  ambari-server/src/main/resources/stacks/BigInsights/4.2/services/ZOOKEEPER/package/scripts/zookeeper_server.py fb92b2eb86 
  ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml 2d797bb95e 
  ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py ce106d26f3 
  ambari-server/src/main/resources/stacks/HDP/2.0.6/properties/stack_select_packages.json 27471882af 
  ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py 7c5c7f5101 
  ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py a47bda3ffa 
  ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py 6a2d8fb18b 
  ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py 973e274f2d 
  ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py 0f31ad20c3 
  ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py 680c984289 
  ambari-server/src/test/python/stacks/2.0.6/HDFS/test_journalnode.py 06c5fddc9d 
  ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py 0d27d15189 
  ambari-server/src/test/python/stacks/2.0.6/HDFS/test_nfsgateway.py 773d3fea01 
  ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_client.py 3bc597e2a3 
  ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py 512608c729 
  ambari-server/src/test/python/stacks/2.0.6/HIVE/test_webhcat_server.py a6a4fa0d0d 
  ambari-server/src/test/python/stacks/2.0.6/OOZIE/test_oozie_client.py 31d54ae6db 
  ambari-server/src/test/python/stacks/2.0.6/OOZIE/test_oozie_server.py 17b8abfd9b 
  ambari-server/src/test/python/stacks/2.0.6/PIG/test_pig_client.py 63076f9505 
  ambari-server/src/test/python/stacks/2.0.6/SQOOP/test_sqoop.py 4622ae3988 
  ambari-server/src/test/python/stacks/2.0.6/YARN/test_historyserver.py 0cfc6df862 
  ambari-server/src/test/python/stacks/2.0.6/YARN/test_mapreduce2_client.py 5898355353 
  ambari-server/src/test/python/stacks/2.0.6/YARN/test_nodemanager.py d132e73e89 
  ambari-server/src/test/python/stacks/2.0.6/YARN/test_resourcemanager.py 82d3a1cf82 
  ambari-server/src/test/python/stacks/2.0.6/YARN/test_yarn_client.py 09a62784c4 
  ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_client.py f074036503 
  ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_server.py bc58e5687b 
  ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_client.py dcc649db0e 
  ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_server.py a7e6a1e7e4 
  ambari-server/src/test/python/stacks/2.1/HIVE/test_hive_metastore.py 796b1070bd 
  ambari-server/src/test/python/stacks/2.1/STORM/test_storm_drpc_server.py 608b156f7d 
  ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus.py ab5da22cc0 
  ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus_prod.py efa50c8884 
  ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor.py 116597be9e 
  ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor_prod.py 46221a9a04 
  ambari-server/src/test/python/stacks/2.1/STORM/test_storm_ui_server.py 985c754b07 
  ambari-server/src/test/python/stacks/2.1/TEZ/test_tez_client.py bd7567afd3 
  ambari-server/src/test/python/stacks/2.1/YARN/test_apptimelineserver.py 8cd996ea45 
  ambari-server/src/test/python/stacks/2.2/ACCUMULO/test_accumulo_client.py 3ffd0a9dc0 
  ambari-server/src/test/python/stacks/2.2/KAFKA/test_kafka_broker.py 477830e674 
  ambari-server/src/test/python/stacks/2.2/KNOX/test_knox_gateway.py 32b5d70052 
  ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py 961be84571 
  ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py f0aee1049d 
  ambari-server/src/test/python/stacks/2.2/SLIDER/test_slider_client.py d4dcc487e1 
  ambari-server/src/test/python/stacks/2.2/SPARK/test_job_history_server.py b87f8fc09c 
  ambari-server/src/test/python/stacks/2.2/SPARK/test_spark_client.py 3fe59ad3b6 
  ambari-server/src/test/python/stacks/2.2/common/test_conf_select.py d445d741ba 
  ambari-server/src/test/python/stacks/2.3/MAHOUT/test_mahout_client.py 9286b7a364 
  ambari-server/src/test/python/stacks/2.3/SPARK/test_spark_thrift_server.py ddd1ab395b 
  ambari-server/src/test/python/stacks/utils/RMFTestCase.py 36128908e0 


Diff: https://reviews.apache.org/r/61276/diff/1/


Testing
-------

----------------------------------------------------------------------
Total run:1156
Total errors:0
Total failures:0


Thanks,

Jonathan Hurley


Re: Review Request 61276: Replace Hard Coded conf-select Structures

Posted by Jonathan Hurley <jh...@hortonworks.com>.

> On Aug. 1, 2017, 1:12 p.m., Dmitro Lisnichenko wrote:
> > ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py
> > Line 24 (original), 24 (patched)
> > <https://reviews.apache.org/r/61276/diff/1/?file=1786383#file1786383line24>
> >
> >     I think we usually do
> >     
> >     import ambari_simplejson as json # simplejson is much faster comparing to Python 2.6 json module and has the same functions set.

Ah, yes, good catch. I'll make the change.


- Jonathan


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61276/#review181903
-----------------------------------------------------------


On Aug. 1, 2017, 10:09 a.m., Jonathan Hurley wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/61276/
> -----------------------------------------------------------
> 
> (Updated Aug. 1, 2017, 10:09 a.m.)
> 
> 
> Review request for Ambari, Alejandro Fernandez, Dmytro Grinenko, Dmitro Lisnichenko, and Nate Cole.
> 
> 
> Bugs: AMBARI-21581
>     https://issues.apache.org/jira/browse/AMBARI-21581
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Currently, both the stack-select and conf-select python files have hard-coded structures inside of them which contain mappings for things like configuration directories and stack-select component names. 
> 
> This code is really HDP-specific in that it reverses the mappings of the RPMs and allows us to remap {{/etc/<component>/conf}} to {{/usr/hdp/current/<stack-component>/conf}}
> {code:title=conf_select.py}
> _PACKAGE_DIRS = {
>   "atlas": [
>     {
>       "conf_dir": "/etc/atlas/conf",
>       "current_dir": "{0}/current/atlas-client/conf".format(STACK_ROOT_PATTERN)
>     }
>   ],
>   "accumulo": [
>     {
>       "conf_dir": "/etc/accumulo/conf",
>       "current_dir": "{0}/current/accumulo-client/conf".format(STACK_ROOT_PATTERN)
>     }
>   ],
> ...
> {code}
> 
> With the coming of management packs replacing stacks, we can no longer hard code this in Python.
> 
> Additionally, there is an odd anti-pattern here where we conf-select on installation and also on upgrade. The upgrade should never deal with conf-select as those directories should have already been created during the installation phase.
> 
> 
> Diffs
> -----
> 
>   ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py 4f11633fbe 
>   ambari-common/src/main/python/resource_management/libraries/functions/stack_select.py 9e28907f8f 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java ec8b38c9a7 
>   ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java 827037056d 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/FinalUpgradeCatalog.java 55f9665e32 
>   ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_client.py 856446ccce 
>   ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_script.py a0519b20da 
>   ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/atlas_client.py 6e4a168881 
>   ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata_server.py ff7bf5fe88 
>   ambari-server/src/main/resources/common-services/DRUID/0.9.2/package/scripts/druid_node.py 20623f7f5e 
>   ambari-server/src/main/resources/common-services/DRUID/0.9.2/package/scripts/superset.py 36dab51441 
>   ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon_client.py 85d80ba6a5 
>   ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon_server.py c7ba556304 
>   ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/package/scripts/flume_handler.py f57fae7b37 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py 4820d24883 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py f2b44bddeb 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py 8ea3616ecc 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/datanode.py ba926cb56e 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/hdfs_client.py f320eee075 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/journalnode.py 402e7ade26 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/namenode.py aac7977b6b 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/nfsgateway.py dea9d43d16 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/snamenode.py 115a830966 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/zkfc_slave.py fabbabbac6 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py 1694816594 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py c84f47e074 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py a1212e00c9 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_interactive.py 16d7907c57 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py db86d9ec5e 
>   ambari-server/src/main/resources/common-services/KAFKA/0.8.1/package/scripts/kafka_broker.py 08c3dd19de 
>   ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/knox_gateway.py 6df68ccd3e 
>   ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/package/scripts/mahout_client.py b598d1778d 
>   ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_client.py ac8b0788f3 
>   ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_server.py 82a764dc9b 
>   ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/package/scripts/pig_client.py 693af5c728 
>   ambari-server/src/main/resources/common-services/R4ML/0.8.0/package/scripts/r4ml_client.py f973e697c2 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_admin.py e27a03e9f1 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_tagsync.py 5ff498f256 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py 8654bc2072 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/upgrade.py ca1b2bf8aa 
>   ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms_server.py 0bd11f33a3 
>   ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/upgrade.py 73c32ffe87 
>   ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider_client.py adc7026144 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/job_history_server.py c36def4658 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/livy_server.py 0ac1679815 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/spark_client.py a2e26b8f3a 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/spark_thrift_server.py 44a156f3fd 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/job_history_server.py 793ffa35fe 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/livy2_server.py c71075766a 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/spark_client.py 1db442959e 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/spark_thrift_server.py e0dc11d23d 
>   ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop_client.py 8c7dd3570a 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/drpc_server.py 7da3fa1109 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus.py 53b965effb 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus_prod.py 18d8fea8a3 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/pacemaker.py fc45bc1f66 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor.py 318bd0ba7c 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor_prod.py 46626bc433 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/ui_server.py 90ec64c962 
>   ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez_client.py 8a6a6d31a3 
>   ambari-server/src/main/resources/common-services/TITAN/1.0.0/package/scripts/titan_client.py 2d0a93e6a7 
>   ambari-server/src/main/resources/common-services/TITAN/1.0.0/package/scripts/titan_server.py 427448b7f5 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/application_timeline_server.py c4f3cfef09 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/historyserver.py ff50e4ee6a 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/mapreduce2_client.py efcb2da1de 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/nodemanager.py acd09916e7 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/resourcemanager.py 2d74aa996f 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn_client.py d57060cd3b 
>   ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py f8f6e3d64f 
>   ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5/package/scripts/zookeeper_client.py 6c60e91238 
>   ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5/package/scripts/zookeeper_server.py a42cfb60bd 
>   ambari-server/src/main/resources/custom_actions/scripts/install_packages.py c0b0e23e23 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/configuration/cluster-env.xml c73b6e4e2d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/properties/stack_select_packages.json a91a84129f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/FLUME/package/scripts/flume_handler.py 159278ad43 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HBASE/package/scripts/hbase_client.py df382cee99 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HBASE/package/scripts/upgrade.py f1024c5cdf 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/datanode.py b1f1d00e1b 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/hdfs_client.py 851afd6adc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/journalnode.py afc54be37e 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/namenode.py 38ad927e15 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/nfsgateway.py 8edd037490 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/snamenode.py 1fe89a2ffa 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_client.py 5ec624c427 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_metastore.py 8fcd4e4c03 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_server.py 269e89786f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/webhcat_server.py 627c96ee37 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KAFKA/package/scripts/kafka_broker.py 9fad6a7ddc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KAFKA/package/scripts/upgrade.py 5628297345 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KNOX/package/scripts/knox_gateway.py 99e0086110 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/OOZIE/package/scripts/oozie_client.py a7a205bb5d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/OOZIE/package/scripts/oozie_server.py 11c8c8e31c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/PIG/package/scripts/pig_client.py 96a48c1e2c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SLIDER/package/scripts/slider_client.py e5c14834e7 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SOLR/package/scripts/solr_server.py 3605264ffc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SOLR/package/scripts/solr_upgrade.py d72c5a34af 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/job_history_server.py 654b88a3da 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/spark_client.py 7f2e7fc6e5 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/spark_thrift_server.py 75908a75b3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SQOOP/package/scripts/sqoop_client.py 5e48acaaed 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/application_timeline_server.py 125a65f6aa 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/historyserver.py d887fce3d3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/mapreduce2_client.py fe64193754 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/nodemanager.py c0481273e8 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/resourcemanager.py 554c23d896 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/yarn_client.py 1f139bff66 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/ZOOKEEPER/package/scripts/zookeeper_client.py 63e1df8dcc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/ZOOKEEPER/package/scripts/zookeeper_server.py 727622a24f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/hooks/after-INSTALL/scripts/hook.py 8a583b3fbc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/hooks/after-INSTALL/scripts/shared_initialization.py 1324c8caa4 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/hbase_client.py 1c3f113240 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/phoenix_queryserver.py 1621916845 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/upgrade.py dbeb55de55 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/FLUME/package/scripts/flume_handler.py d70d06a090 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/hbase_client.py 2b83664492 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/phoenix_queryserver.py 51b8c65971 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/upgrade.py f1024c5cdf 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/datanode.py 7f38a78033 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/hdfs_client.py 62c6dd0a56 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/journalnode.py 3f44de06c0 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/namenode.py 280aeee1a8 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/nfsgateway.py b105d69d58 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/snamenode.py 6a7fd4387c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_client.py 14a5f8362c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_metastore.py 0a651f902d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_server.py 79e4c733a7 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/webhcat_server.py 9f1596b45d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/KAFKA/package/scripts/kafka_broker.py cf08b9ba31 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/KNOX/package/scripts/knox_gateway.py 2b3a103664 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/OOZIE/package/scripts/oozie_client.py 8f4577effc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/OOZIE/package/scripts/oozie_server.py c2e1af53a1 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/PIG/package/scripts/pig_client.py 96a48c1e2c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER/package/scripts/ranger_admin.py c34951b6ea 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER/package/scripts/upgrade.py 75b1fbeead 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER_KMS/package/scripts/upgrade.py b37c2959f3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SLIDER/package/scripts/slider_client.py 33e258899d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SOLR/package/scripts/solr_server.py 6b4454e078 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SOLR/package/scripts/solr_upgrade.py 61142e316b 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/job_history_server.py 50fef1abac 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/spark_client.py afd9238625 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/spark_thrift_server.py a680701f44 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SQOOP/package/scripts/sqoop_client.py 7b48dfe720 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan_client.py 814fb38bbb 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/application_timeline_server.py fbac4883c6 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/historyserver.py 5e1cfea6bc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/mapreduce2_client.py 57d0d7205d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/nodemanager.py 6b09b13ae6 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/resourcemanager.py 274100d372 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/yarn_client.py e3b9125311 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/ZOOKEEPER/package/scripts/zookeeper_client.py f5408aadf0 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/ZOOKEEPER/package/scripts/zookeeper_server.py fb92b2eb86 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml 2d797bb95e 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py ce106d26f3 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/properties/stack_select_packages.json 27471882af 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py 7c5c7f5101 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py a47bda3ffa 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py 6a2d8fb18b 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py 973e274f2d 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py 0f31ad20c3 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py 680c984289 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_journalnode.py 06c5fddc9d 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py 0d27d15189 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_nfsgateway.py 773d3fea01 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_client.py 3bc597e2a3 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py 512608c729 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_webhcat_server.py a6a4fa0d0d 
>   ambari-server/src/test/python/stacks/2.0.6/OOZIE/test_oozie_client.py 31d54ae6db 
>   ambari-server/src/test/python/stacks/2.0.6/OOZIE/test_oozie_server.py 17b8abfd9b 
>   ambari-server/src/test/python/stacks/2.0.6/PIG/test_pig_client.py 63076f9505 
>   ambari-server/src/test/python/stacks/2.0.6/SQOOP/test_sqoop.py 4622ae3988 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_historyserver.py 0cfc6df862 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_mapreduce2_client.py 5898355353 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_nodemanager.py d132e73e89 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_resourcemanager.py 82d3a1cf82 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_yarn_client.py 09a62784c4 
>   ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_client.py f074036503 
>   ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_server.py bc58e5687b 
>   ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_client.py dcc649db0e 
>   ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_server.py a7e6a1e7e4 
>   ambari-server/src/test/python/stacks/2.1/HIVE/test_hive_metastore.py 796b1070bd 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_drpc_server.py 608b156f7d 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus.py ab5da22cc0 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus_prod.py efa50c8884 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor.py 116597be9e 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor_prod.py 46221a9a04 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_ui_server.py 985c754b07 
>   ambari-server/src/test/python/stacks/2.1/TEZ/test_tez_client.py bd7567afd3 
>   ambari-server/src/test/python/stacks/2.1/YARN/test_apptimelineserver.py 8cd996ea45 
>   ambari-server/src/test/python/stacks/2.2/ACCUMULO/test_accumulo_client.py 3ffd0a9dc0 
>   ambari-server/src/test/python/stacks/2.2/KAFKA/test_kafka_broker.py 477830e674 
>   ambari-server/src/test/python/stacks/2.2/KNOX/test_knox_gateway.py 32b5d70052 
>   ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py 961be84571 
>   ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py f0aee1049d 
>   ambari-server/src/test/python/stacks/2.2/SLIDER/test_slider_client.py d4dcc487e1 
>   ambari-server/src/test/python/stacks/2.2/SPARK/test_job_history_server.py b87f8fc09c 
>   ambari-server/src/test/python/stacks/2.2/SPARK/test_spark_client.py 3fe59ad3b6 
>   ambari-server/src/test/python/stacks/2.2/common/test_conf_select.py d445d741ba 
>   ambari-server/src/test/python/stacks/2.3/MAHOUT/test_mahout_client.py 9286b7a364 
>   ambari-server/src/test/python/stacks/2.3/SPARK/test_spark_thrift_server.py ddd1ab395b 
>   ambari-server/src/test/python/stacks/utils/RMFTestCase.py 36128908e0 
> 
> 
> Diff: https://reviews.apache.org/r/61276/diff/1/
> 
> 
> Testing
> -------
> 
> ----------------------------------------------------------------------
> Total run:1156
> Total errors:0
> Total failures:0
> 
> 
> Thanks,
> 
> Jonathan Hurley
> 
>


Re: Review Request 61276: Replace Hard Coded conf-select Structures

Posted by Dmitro Lisnichenko <dl...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61276/#review181903
-----------------------------------------------------------


Fix it, then Ship it!





ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py
Line 24 (original), 24 (patched)
<https://reviews.apache.org/r/61276/#comment257697>

    I think we usually do
    
    import ambari_simplejson as json # simplejson is much faster comparing to Python 2.6 json module and has the same functions set.


- Dmitro Lisnichenko


On Aug. 1, 2017, 5:09 p.m., Jonathan Hurley wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/61276/
> -----------------------------------------------------------
> 
> (Updated Aug. 1, 2017, 5:09 p.m.)
> 
> 
> Review request for Ambari, Alejandro Fernandez, Dmytro Grinenko, Dmitro Lisnichenko, and Nate Cole.
> 
> 
> Bugs: AMBARI-21581
>     https://issues.apache.org/jira/browse/AMBARI-21581
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Currently, both the stack-select and conf-select python files have hard-coded structures inside of them which contain mappings for things like configuration directories and stack-select component names. 
> 
> This code is really HDP-specific in that it reverses the mappings of the RPMs and allows us to remap {{/etc/<component>/conf}} to {{/usr/hdp/current/<stack-component>/conf}}
> {code:title=conf_select.py}
> _PACKAGE_DIRS = {
>   "atlas": [
>     {
>       "conf_dir": "/etc/atlas/conf",
>       "current_dir": "{0}/current/atlas-client/conf".format(STACK_ROOT_PATTERN)
>     }
>   ],
>   "accumulo": [
>     {
>       "conf_dir": "/etc/accumulo/conf",
>       "current_dir": "{0}/current/accumulo-client/conf".format(STACK_ROOT_PATTERN)
>     }
>   ],
> ...
> {code}
> 
> With the coming of management packs replacing stacks, we can no longer hard code this in Python.
> 
> Additionally, there is an odd anti-pattern here where we conf-select on installation and also on upgrade. The upgrade should never deal with conf-select as those directories should have already been created during the installation phase.
> 
> 
> Diffs
> -----
> 
>   ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py 4f11633fbe 
>   ambari-common/src/main/python/resource_management/libraries/functions/stack_select.py 9e28907f8f 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java ec8b38c9a7 
>   ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java 827037056d 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/FinalUpgradeCatalog.java 55f9665e32 
>   ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_client.py 856446ccce 
>   ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_script.py a0519b20da 
>   ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/atlas_client.py 6e4a168881 
>   ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata_server.py ff7bf5fe88 
>   ambari-server/src/main/resources/common-services/DRUID/0.9.2/package/scripts/druid_node.py 20623f7f5e 
>   ambari-server/src/main/resources/common-services/DRUID/0.9.2/package/scripts/superset.py 36dab51441 
>   ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon_client.py 85d80ba6a5 
>   ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon_server.py c7ba556304 
>   ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/package/scripts/flume_handler.py f57fae7b37 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py 4820d24883 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py f2b44bddeb 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py 8ea3616ecc 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/datanode.py ba926cb56e 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/hdfs_client.py f320eee075 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/journalnode.py 402e7ade26 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/namenode.py aac7977b6b 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/nfsgateway.py dea9d43d16 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/snamenode.py 115a830966 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/zkfc_slave.py fabbabbac6 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py 1694816594 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py c84f47e074 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py a1212e00c9 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_interactive.py 16d7907c57 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py db86d9ec5e 
>   ambari-server/src/main/resources/common-services/KAFKA/0.8.1/package/scripts/kafka_broker.py 08c3dd19de 
>   ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/knox_gateway.py 6df68ccd3e 
>   ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/package/scripts/mahout_client.py b598d1778d 
>   ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_client.py ac8b0788f3 
>   ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_server.py 82a764dc9b 
>   ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/package/scripts/pig_client.py 693af5c728 
>   ambari-server/src/main/resources/common-services/R4ML/0.8.0/package/scripts/r4ml_client.py f973e697c2 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_admin.py e27a03e9f1 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_tagsync.py 5ff498f256 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py 8654bc2072 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/upgrade.py ca1b2bf8aa 
>   ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms_server.py 0bd11f33a3 
>   ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/upgrade.py 73c32ffe87 
>   ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider_client.py adc7026144 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/job_history_server.py c36def4658 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/livy_server.py 0ac1679815 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/spark_client.py a2e26b8f3a 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/spark_thrift_server.py 44a156f3fd 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/job_history_server.py 793ffa35fe 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/livy2_server.py c71075766a 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/spark_client.py 1db442959e 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/spark_thrift_server.py e0dc11d23d 
>   ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop_client.py 8c7dd3570a 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/drpc_server.py 7da3fa1109 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus.py 53b965effb 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus_prod.py 18d8fea8a3 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/pacemaker.py fc45bc1f66 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor.py 318bd0ba7c 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor_prod.py 46626bc433 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/ui_server.py 90ec64c962 
>   ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez_client.py 8a6a6d31a3 
>   ambari-server/src/main/resources/common-services/TITAN/1.0.0/package/scripts/titan_client.py 2d0a93e6a7 
>   ambari-server/src/main/resources/common-services/TITAN/1.0.0/package/scripts/titan_server.py 427448b7f5 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/application_timeline_server.py c4f3cfef09 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/historyserver.py ff50e4ee6a 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/mapreduce2_client.py efcb2da1de 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/nodemanager.py acd09916e7 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/resourcemanager.py 2d74aa996f 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn_client.py d57060cd3b 
>   ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py f8f6e3d64f 
>   ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5/package/scripts/zookeeper_client.py 6c60e91238 
>   ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5/package/scripts/zookeeper_server.py a42cfb60bd 
>   ambari-server/src/main/resources/custom_actions/scripts/install_packages.py c0b0e23e23 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/configuration/cluster-env.xml c73b6e4e2d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/properties/stack_select_packages.json a91a84129f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/FLUME/package/scripts/flume_handler.py 159278ad43 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HBASE/package/scripts/hbase_client.py df382cee99 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HBASE/package/scripts/upgrade.py f1024c5cdf 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/datanode.py b1f1d00e1b 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/hdfs_client.py 851afd6adc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/journalnode.py afc54be37e 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/namenode.py 38ad927e15 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/nfsgateway.py 8edd037490 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/snamenode.py 1fe89a2ffa 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_client.py 5ec624c427 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_metastore.py 8fcd4e4c03 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_server.py 269e89786f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/webhcat_server.py 627c96ee37 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KAFKA/package/scripts/kafka_broker.py 9fad6a7ddc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KAFKA/package/scripts/upgrade.py 5628297345 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KNOX/package/scripts/knox_gateway.py 99e0086110 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/OOZIE/package/scripts/oozie_client.py a7a205bb5d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/OOZIE/package/scripts/oozie_server.py 11c8c8e31c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/PIG/package/scripts/pig_client.py 96a48c1e2c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SLIDER/package/scripts/slider_client.py e5c14834e7 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SOLR/package/scripts/solr_server.py 3605264ffc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SOLR/package/scripts/solr_upgrade.py d72c5a34af 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/job_history_server.py 654b88a3da 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/spark_client.py 7f2e7fc6e5 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/spark_thrift_server.py 75908a75b3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SQOOP/package/scripts/sqoop_client.py 5e48acaaed 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/application_timeline_server.py 125a65f6aa 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/historyserver.py d887fce3d3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/mapreduce2_client.py fe64193754 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/nodemanager.py c0481273e8 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/resourcemanager.py 554c23d896 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/yarn_client.py 1f139bff66 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/ZOOKEEPER/package/scripts/zookeeper_client.py 63e1df8dcc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/ZOOKEEPER/package/scripts/zookeeper_server.py 727622a24f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/hooks/after-INSTALL/scripts/hook.py 8a583b3fbc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/hooks/after-INSTALL/scripts/shared_initialization.py 1324c8caa4 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/hbase_client.py 1c3f113240 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/phoenix_queryserver.py 1621916845 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/upgrade.py dbeb55de55 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/FLUME/package/scripts/flume_handler.py d70d06a090 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/hbase_client.py 2b83664492 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/phoenix_queryserver.py 51b8c65971 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/upgrade.py f1024c5cdf 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/datanode.py 7f38a78033 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/hdfs_client.py 62c6dd0a56 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/journalnode.py 3f44de06c0 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/namenode.py 280aeee1a8 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/nfsgateway.py b105d69d58 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/snamenode.py 6a7fd4387c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_client.py 14a5f8362c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_metastore.py 0a651f902d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_server.py 79e4c733a7 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/webhcat_server.py 9f1596b45d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/KAFKA/package/scripts/kafka_broker.py cf08b9ba31 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/KNOX/package/scripts/knox_gateway.py 2b3a103664 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/OOZIE/package/scripts/oozie_client.py 8f4577effc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/OOZIE/package/scripts/oozie_server.py c2e1af53a1 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/PIG/package/scripts/pig_client.py 96a48c1e2c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER/package/scripts/ranger_admin.py c34951b6ea 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER/package/scripts/upgrade.py 75b1fbeead 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER_KMS/package/scripts/upgrade.py b37c2959f3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SLIDER/package/scripts/slider_client.py 33e258899d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SOLR/package/scripts/solr_server.py 6b4454e078 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SOLR/package/scripts/solr_upgrade.py 61142e316b 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/job_history_server.py 50fef1abac 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/spark_client.py afd9238625 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/spark_thrift_server.py a680701f44 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SQOOP/package/scripts/sqoop_client.py 7b48dfe720 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan_client.py 814fb38bbb 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/application_timeline_server.py fbac4883c6 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/historyserver.py 5e1cfea6bc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/mapreduce2_client.py 57d0d7205d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/nodemanager.py 6b09b13ae6 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/resourcemanager.py 274100d372 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/yarn_client.py e3b9125311 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/ZOOKEEPER/package/scripts/zookeeper_client.py f5408aadf0 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/ZOOKEEPER/package/scripts/zookeeper_server.py fb92b2eb86 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml 2d797bb95e 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py ce106d26f3 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/properties/stack_select_packages.json 27471882af 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py 7c5c7f5101 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py a47bda3ffa 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py 6a2d8fb18b 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py 973e274f2d 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py 0f31ad20c3 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py 680c984289 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_journalnode.py 06c5fddc9d 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py 0d27d15189 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_nfsgateway.py 773d3fea01 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_client.py 3bc597e2a3 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py 512608c729 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_webhcat_server.py a6a4fa0d0d 
>   ambari-server/src/test/python/stacks/2.0.6/OOZIE/test_oozie_client.py 31d54ae6db 
>   ambari-server/src/test/python/stacks/2.0.6/OOZIE/test_oozie_server.py 17b8abfd9b 
>   ambari-server/src/test/python/stacks/2.0.6/PIG/test_pig_client.py 63076f9505 
>   ambari-server/src/test/python/stacks/2.0.6/SQOOP/test_sqoop.py 4622ae3988 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_historyserver.py 0cfc6df862 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_mapreduce2_client.py 5898355353 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_nodemanager.py d132e73e89 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_resourcemanager.py 82d3a1cf82 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_yarn_client.py 09a62784c4 
>   ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_client.py f074036503 
>   ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_server.py bc58e5687b 
>   ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_client.py dcc649db0e 
>   ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_server.py a7e6a1e7e4 
>   ambari-server/src/test/python/stacks/2.1/HIVE/test_hive_metastore.py 796b1070bd 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_drpc_server.py 608b156f7d 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus.py ab5da22cc0 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus_prod.py efa50c8884 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor.py 116597be9e 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor_prod.py 46221a9a04 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_ui_server.py 985c754b07 
>   ambari-server/src/test/python/stacks/2.1/TEZ/test_tez_client.py bd7567afd3 
>   ambari-server/src/test/python/stacks/2.1/YARN/test_apptimelineserver.py 8cd996ea45 
>   ambari-server/src/test/python/stacks/2.2/ACCUMULO/test_accumulo_client.py 3ffd0a9dc0 
>   ambari-server/src/test/python/stacks/2.2/KAFKA/test_kafka_broker.py 477830e674 
>   ambari-server/src/test/python/stacks/2.2/KNOX/test_knox_gateway.py 32b5d70052 
>   ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py 961be84571 
>   ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py f0aee1049d 
>   ambari-server/src/test/python/stacks/2.2/SLIDER/test_slider_client.py d4dcc487e1 
>   ambari-server/src/test/python/stacks/2.2/SPARK/test_job_history_server.py b87f8fc09c 
>   ambari-server/src/test/python/stacks/2.2/SPARK/test_spark_client.py 3fe59ad3b6 
>   ambari-server/src/test/python/stacks/2.2/common/test_conf_select.py d445d741ba 
>   ambari-server/src/test/python/stacks/2.3/MAHOUT/test_mahout_client.py 9286b7a364 
>   ambari-server/src/test/python/stacks/2.3/SPARK/test_spark_thrift_server.py ddd1ab395b 
>   ambari-server/src/test/python/stacks/utils/RMFTestCase.py 36128908e0 
> 
> 
> Diff: https://reviews.apache.org/r/61276/diff/1/
> 
> 
> Testing
> -------
> 
> ----------------------------------------------------------------------
> Total run:1156
> Total errors:0
> Total failures:0
> 
> 
> Thanks,
> 
> Jonathan Hurley
> 
>


Re: Review Request 61276: Replace Hard Coded conf-select Structures

Posted by Nate Cole <nc...@hortonworks.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/61276/#review181969
-----------------------------------------------------------


Ship it!




Ship It!

- Nate Cole


On Aug. 1, 2017, 10:09 a.m., Jonathan Hurley wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/61276/
> -----------------------------------------------------------
> 
> (Updated Aug. 1, 2017, 10:09 a.m.)
> 
> 
> Review request for Ambari, Alejandro Fernandez, Dmytro Grinenko, Dmitro Lisnichenko, and Nate Cole.
> 
> 
> Bugs: AMBARI-21581
>     https://issues.apache.org/jira/browse/AMBARI-21581
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> Currently, both the stack-select and conf-select python files have hard-coded structures inside of them which contain mappings for things like configuration directories and stack-select component names. 
> 
> This code is really HDP-specific in that it reverses the mappings of the RPMs and allows us to remap {{/etc/<component>/conf}} to {{/usr/hdp/current/<stack-component>/conf}}
> {code:title=conf_select.py}
> _PACKAGE_DIRS = {
>   "atlas": [
>     {
>       "conf_dir": "/etc/atlas/conf",
>       "current_dir": "{0}/current/atlas-client/conf".format(STACK_ROOT_PATTERN)
>     }
>   ],
>   "accumulo": [
>     {
>       "conf_dir": "/etc/accumulo/conf",
>       "current_dir": "{0}/current/accumulo-client/conf".format(STACK_ROOT_PATTERN)
>     }
>   ],
> ...
> {code}
> 
> With the coming of management packs replacing stacks, we can no longer hard code this in Python.
> 
> Additionally, there is an odd anti-pattern here where we conf-select on installation and also on upgrade. The upgrade should never deal with conf-select as those directories should have already been created during the installation phase.
> 
> 
> Diffs
> -----
> 
>   ambari-common/src/main/python/resource_management/libraries/functions/conf_select.py 4f11633fbe 
>   ambari-common/src/main/python/resource_management/libraries/functions/stack_select.py 9e28907f8f 
>   ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java ec8b38c9a7 
>   ambari-server/src/main/java/org/apache/ambari/server/state/ConfigHelper.java 16fc971e27 
>   ambari-server/src/main/java/org/apache/ambari/server/upgrade/FinalUpgradeCatalog.java 55f9665e32 
>   ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_client.py 856446ccce 
>   ambari-server/src/main/resources/common-services/ACCUMULO/1.6.1.2.2.0/package/scripts/accumulo_script.py a0519b20da 
>   ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/atlas_client.py 6e4a168881 
>   ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata_server.py ff7bf5fe88 
>   ambari-server/src/main/resources/common-services/DRUID/0.9.2/package/scripts/druid_node.py 20623f7f5e 
>   ambari-server/src/main/resources/common-services/DRUID/0.9.2/package/scripts/superset.py 36dab51441 
>   ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon_client.py 85d80ba6a5 
>   ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon_server.py c7ba556304 
>   ambari-server/src/main/resources/common-services/FLUME/1.4.0.2.0/package/scripts/flume_handler.py f57fae7b37 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/hbase_client.py 4820d24883 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/phoenix_queryserver.py f2b44bddeb 
>   ambari-server/src/main/resources/common-services/HBASE/0.96.0.2.0/package/scripts/upgrade.py 8ea3616ecc 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/datanode.py ba926cb56e 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/hdfs_client.py f320eee075 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/journalnode.py 402e7ade26 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/namenode.py aac7977b6b 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/nfsgateway.py dea9d43d16 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/snamenode.py 115a830966 
>   ambari-server/src/main/resources/common-services/HDFS/2.1.0.2.0/package/scripts/zkfc_slave.py fabbabbac6 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py 1694816594 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py c84f47e074 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py a1212e00c9 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server_interactive.py 16d7907c57 
>   ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py db86d9ec5e 
>   ambari-server/src/main/resources/common-services/KAFKA/0.8.1/package/scripts/kafka_broker.py 08c3dd19de 
>   ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/knox_gateway.py 6df68ccd3e 
>   ambari-server/src/main/resources/common-services/MAHOUT/1.0.0.2.3/package/scripts/mahout_client.py b598d1778d 
>   ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_client.py ac8b0788f3 
>   ambari-server/src/main/resources/common-services/OOZIE/4.0.0.2.0/package/scripts/oozie_server.py 82a764dc9b 
>   ambari-server/src/main/resources/common-services/PIG/0.12.0.2.0/package/scripts/pig_client.py 693af5c728 
>   ambari-server/src/main/resources/common-services/R4ML/0.8.0/package/scripts/r4ml_client.py f973e697c2 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_admin.py e27a03e9f1 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_tagsync.py 5ff498f256 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py 8654bc2072 
>   ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/upgrade.py ca1b2bf8aa 
>   ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/kms_server.py 0bd11f33a3 
>   ambari-server/src/main/resources/common-services/RANGER_KMS/0.5.0.2.3/package/scripts/upgrade.py 73c32ffe87 
>   ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider_client.py adc7026144 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/job_history_server.py c36def4658 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/livy_server.py 0ac1679815 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/spark_client.py a2e26b8f3a 
>   ambari-server/src/main/resources/common-services/SPARK/1.2.1/package/scripts/spark_thrift_server.py 44a156f3fd 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/job_history_server.py 793ffa35fe 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/livy2_server.py c71075766a 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/spark_client.py 1db442959e 
>   ambari-server/src/main/resources/common-services/SPARK2/2.0.0/package/scripts/spark_thrift_server.py e0dc11d23d 
>   ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop_client.py 8c7dd3570a 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/drpc_server.py 7da3fa1109 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus.py 53b965effb 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/nimbus_prod.py 18d8fea8a3 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/pacemaker.py fc45bc1f66 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor.py 318bd0ba7c 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/supervisor_prod.py 46626bc433 
>   ambari-server/src/main/resources/common-services/STORM/0.9.1/package/scripts/ui_server.py 90ec64c962 
>   ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez_client.py 8a6a6d31a3 
>   ambari-server/src/main/resources/common-services/TITAN/1.0.0/package/scripts/titan_client.py 2d0a93e6a7 
>   ambari-server/src/main/resources/common-services/TITAN/1.0.0/package/scripts/titan_server.py 427448b7f5 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/application_timeline_server.py c4f3cfef09 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/historyserver.py ff50e4ee6a 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/mapreduce2_client.py efcb2da1de 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/nodemanager.py acd09916e7 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/resourcemanager.py 2d74aa996f 
>   ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn_client.py d57060cd3b 
>   ambari-server/src/main/resources/common-services/ZEPPELIN/0.6.0.2.5/package/scripts/master.py f8f6e3d64f 
>   ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5/package/scripts/zookeeper_client.py 6c60e91238 
>   ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5/package/scripts/zookeeper_server.py a42cfb60bd 
>   ambari-server/src/main/resources/custom_actions/scripts/install_packages.py c0b0e23e23 
>   ambari-server/src/main/resources/custom_actions/scripts/ru_set_all.py e514c4b62d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/configuration/cluster-env.xml c73b6e4e2d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/properties/stack_select_packages.json a91a84129f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/FLUME/package/scripts/flume_handler.py 159278ad43 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HBASE/package/scripts/hbase_client.py df382cee99 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HBASE/package/scripts/upgrade.py f1024c5cdf 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/datanode.py b1f1d00e1b 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/hdfs_client.py 851afd6adc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/journalnode.py afc54be37e 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/namenode.py 38ad927e15 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/nfsgateway.py 8edd037490 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HDFS/package/scripts/snamenode.py 1fe89a2ffa 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_client.py 5ec624c427 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_metastore.py 8fcd4e4c03 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/hive_server.py 269e89786f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/HIVE/package/scripts/webhcat_server.py 627c96ee37 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KAFKA/package/scripts/kafka_broker.py 9fad6a7ddc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KAFKA/package/scripts/upgrade.py 5628297345 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/KNOX/package/scripts/knox_gateway.py 99e0086110 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/OOZIE/package/scripts/oozie_client.py a7a205bb5d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/OOZIE/package/scripts/oozie_server.py 11c8c8e31c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/PIG/package/scripts/pig_client.py 96a48c1e2c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SLIDER/package/scripts/slider_client.py e5c14834e7 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SOLR/package/scripts/solr_server.py 3605264ffc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SOLR/package/scripts/solr_upgrade.py d72c5a34af 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/job_history_server.py 654b88a3da 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/spark_client.py 7f2e7fc6e5 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SPARK/package/scripts/spark_thrift_server.py 75908a75b3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/SQOOP/package/scripts/sqoop_client.py 5e48acaaed 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/application_timeline_server.py 125a65f6aa 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/historyserver.py d887fce3d3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/mapreduce2_client.py fe64193754 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/nodemanager.py c0481273e8 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/resourcemanager.py 554c23d896 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/YARN/package/scripts/yarn_client.py 1f139bff66 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/ZOOKEEPER/package/scripts/zookeeper_client.py 63e1df8dcc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.0/services/ZOOKEEPER/package/scripts/zookeeper_server.py 727622a24f 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/hooks/after-INSTALL/scripts/hook.py 8a583b3fbc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/hooks/after-INSTALL/scripts/shared_initialization.py 1324c8caa4 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/hbase_client.py 1c3f113240 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/phoenix_queryserver.py 1621916845 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2.5/services/HBASE/package/scripts/upgrade.py dbeb55de55 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/FLUME/package/scripts/flume_handler.py d70d06a090 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/hbase_client.py 2b83664492 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/phoenix_queryserver.py 51b8c65971 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HBASE/package/scripts/upgrade.py f1024c5cdf 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/datanode.py 7f38a78033 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/hdfs_client.py 62c6dd0a56 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/journalnode.py 3f44de06c0 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/namenode.py 280aeee1a8 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/nfsgateway.py b105d69d58 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HDFS/package/scripts/snamenode.py 6a7fd4387c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_client.py 14a5f8362c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_metastore.py 0a651f902d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/hive_server.py 79e4c733a7 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/HIVE/package/scripts/webhcat_server.py 9f1596b45d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/KAFKA/package/scripts/kafka_broker.py cf08b9ba31 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/KNOX/package/scripts/knox_gateway.py 2b3a103664 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/OOZIE/package/scripts/oozie_client.py 8f4577effc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/OOZIE/package/scripts/oozie_server.py c2e1af53a1 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/PIG/package/scripts/pig_client.py 96a48c1e2c 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER/package/scripts/ranger_admin.py c34951b6ea 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER/package/scripts/upgrade.py 75b1fbeead 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/RANGER_KMS/package/scripts/upgrade.py b37c2959f3 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SLIDER/package/scripts/slider_client.py 33e258899d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SOLR/package/scripts/solr_server.py 6b4454e078 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SOLR/package/scripts/solr_upgrade.py 61142e316b 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/job_history_server.py 50fef1abac 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/spark_client.py afd9238625 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SPARK/package/scripts/spark_thrift_server.py a680701f44 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/SQOOP/package/scripts/sqoop_client.py 7b48dfe720 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/TITAN/package/scripts/titan_client.py 814fb38bbb 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/application_timeline_server.py fbac4883c6 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/historyserver.py 5e1cfea6bc 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/mapreduce2_client.py 57d0d7205d 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/nodemanager.py 6b09b13ae6 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/resourcemanager.py 274100d372 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/YARN/package/scripts/yarn_client.py e3b9125311 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/ZOOKEEPER/package/scripts/zookeeper_client.py f5408aadf0 
>   ambari-server/src/main/resources/stacks/BigInsights/4.2/services/ZOOKEEPER/package/scripts/zookeeper_server.py fb92b2eb86 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/configuration/cluster-env.xml 2d797bb95e 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py ce106d26f3 
>   ambari-server/src/main/resources/stacks/HDP/2.0.6/properties/stack_select_packages.json 27471882af 
>   ambari-server/src/test/python/custom_actions/test_ru_set_all.py 8c36ad635a 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py 7c5c7f5101 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py a47bda3ffa 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py 6a2d8fb18b 
>   ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py 973e274f2d 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py 0f31ad20c3 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py 680c984289 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_journalnode.py 06c5fddc9d 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_namenode.py 0d27d15189 
>   ambari-server/src/test/python/stacks/2.0.6/HDFS/test_nfsgateway.py 773d3fea01 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_client.py 3bc597e2a3 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_hive_server.py 512608c729 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_webhcat_server.py a6a4fa0d0d 
>   ambari-server/src/test/python/stacks/2.0.6/OOZIE/test_oozie_client.py 31d54ae6db 
>   ambari-server/src/test/python/stacks/2.0.6/OOZIE/test_oozie_server.py 17b8abfd9b 
>   ambari-server/src/test/python/stacks/2.0.6/PIG/test_pig_client.py 63076f9505 
>   ambari-server/src/test/python/stacks/2.0.6/SQOOP/test_sqoop.py 4622ae3988 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_historyserver.py 0cfc6df862 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_mapreduce2_client.py 5898355353 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_nodemanager.py d132e73e89 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_resourcemanager.py 82d3a1cf82 
>   ambari-server/src/test/python/stacks/2.0.6/YARN/test_yarn_client.py 09a62784c4 
>   ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_client.py f074036503 
>   ambari-server/src/test/python/stacks/2.0.6/ZOOKEEPER/test_zookeeper_server.py bc58e5687b 
>   ambari-server/src/test/python/stacks/2.0.6/hooks/after-INSTALL/test_after_install.py e32f1a25e0 
>   ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_client.py dcc649db0e 
>   ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_server.py a7e6a1e7e4 
>   ambari-server/src/test/python/stacks/2.1/HIVE/test_hive_metastore.py 796b1070bd 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_drpc_server.py 608b156f7d 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus.py ab5da22cc0 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus_prod.py efa50c8884 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor.py 116597be9e 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor_prod.py 46221a9a04 
>   ambari-server/src/test/python/stacks/2.1/STORM/test_storm_ui_server.py 985c754b07 
>   ambari-server/src/test/python/stacks/2.1/TEZ/test_tez_client.py bd7567afd3 
>   ambari-server/src/test/python/stacks/2.1/YARN/test_apptimelineserver.py 8cd996ea45 
>   ambari-server/src/test/python/stacks/2.2/ACCUMULO/test_accumulo_client.py 3ffd0a9dc0 
>   ambari-server/src/test/python/stacks/2.2/KAFKA/test_kafka_broker.py 477830e674 
>   ambari-server/src/test/python/stacks/2.2/KNOX/test_knox_gateway.py 32b5d70052 
>   ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py 961be84571 
>   ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py f0aee1049d 
>   ambari-server/src/test/python/stacks/2.2/SLIDER/test_slider_client.py d4dcc487e1 
>   ambari-server/src/test/python/stacks/2.2/SPARK/test_job_history_server.py b87f8fc09c 
>   ambari-server/src/test/python/stacks/2.2/SPARK/test_spark_client.py 3fe59ad3b6 
>   ambari-server/src/test/python/stacks/2.2/common/test_conf_select.py d445d741ba 
>   ambari-server/src/test/python/stacks/2.3/MAHOUT/test_mahout_client.py 9286b7a364 
>   ambari-server/src/test/python/stacks/2.3/SPARK/test_spark_thrift_server.py ddd1ab395b 
>   ambari-server/src/test/python/stacks/utils/RMFTestCase.py 36128908e0 
> 
> 
> Diff: https://reviews.apache.org/r/61276/diff/2/
> 
> 
> Testing
> -------
> 
> ----------------------------------------------------------------------
> Total run:1156
> Total errors:0
> Total failures:0
> 
> 
> Thanks,
> 
> Jonathan Hurley
> 
>