diff --git a/precommit/src/main/shell/personality/hadoop.sh b/precommit/src/main/shell/personality/hadoop.sh index 7c8b5301d..5715c31f7 100755 --- a/precommit/src/main/shell/personality/hadoop.sh +++ b/precommit/src/main/shell/personality/hadoop.sh @@ -18,7 +18,6 @@ # SHELLDOC-IGNORE # # Override these to match Apache Hadoop's requirements - personality_plugins "all,-ant,-gradle,-scalac,-scaladoc" ## @description Globals specific to this personality @@ -404,11 +403,36 @@ function personality_modules fi extra="-Ptest-patch ${extra}" - - for module in $(hadoop_order ${ordering}); do - # shellcheck disable=SC2086 - personality_enqueue_module ${module} ${extra} + OZONE_CHANGED=false + CORE_HADOOP_CHANGED=false + for module in "${CHANGED_MODULES[@]}" + do + if [[ "$module" =~ "hdds" ]]; then + OZONE_CHANGED=true + elif [[ "$module" =~ "ozone" ]]; then + OZONE_CHANGED=true + else + CORE_HADOOP_CHANGED=true + fi done + + if [ "$OZONE_CHANGED" = true ]; then + extra="-Phdds ${extra}" + fi + + if [ "$CORE_HADOOP_CHANGED" = false ] && [ "$OZONE_CHANGED" = true ]; then + if [ "$testtype" != "mvnsite" ] && [ "$testtype" != "shadedclient" ]; then + #shellcheck disable=SC2086 + personality_enqueue_module hadoop-hdds ${extra} + #shellcheck disable=SC2086 + personality_enqueue_module hadoop-ozone ${extra} + fi + else + for module in $(hadoop_order ${ordering}); do + # shellcheck disable=SC2086 + personality_enqueue_module ${module} ${extra} + done + fi } ## @description Add tests based upon personality needs