Uh oh!
There was an error while loading. Please reload this page.
[SPARK-49518][K8S][BUILD] Change to using build-helper-maven-plugin to manage the code for volcano - #47997
[SPARK-49518][K8S][BUILD] Change to using build-helper-maven-plugin to manage the code for volcano#47997LuciferYang wants to merge 2 commits into
build-helper-maven-plugin to manage the code for volcano#47997Conversation
build-helper-maven-plugin to manage the code for volcanoLuciferYang
commented
Sep 5, 2024
Test first |
build-helper-maven-plugin to manage the code for volcanobuild-helper-maven-plugin to manage the code for volcano
dongjoon-hyun
left a comment
There was a problem hiding this comment.
+1, LGTM (Pending CIs). Thank you, @LuciferYang .
LuciferYang
commented
Sep 5, 2024
CI Passed, looks ok |
zhengruifeng
commented
Sep 5, 2024
cc @Yikun |
dongjoon-hyun
commented
Sep 5, 2024
Merged to master. Thank you, @LuciferYang and all! |
LuciferYang
commented
Sep 6, 2024
Thanks @dongjoon-hyun ~ |
pan3793
commented
Sep 6, 2024
thanks for fixing this, a small suggestion about the folder layout. instead of how about the former makes |
@pan3793 Thank you for your suggestion. The current directory structure is based on the structure of the ![]() For the proposed design mentioned above, should all |

What changes were proposed in this pull request?
The main changes in this pr are as follows:
resource-managers/kubernetes/core/pom.xmlandresource-managers/kubernetes/integration-tests/pom.xml, thebuild-helper-maven-pluginconfiguration has been added for thevolcanoprofile to ensure that when the profile is activated with-Pvolcano, thevolcano/src/main/scaladirectory is treated as an additional source path, andvolcano/src/test/scaladirectory is treated as an additional test code path.resource-managers/kubernetes/core/pom.xmlresource-managers/kubernetes/integration-tests/pom.xmlvolcano-related source/test code in SPARK-36061 | [SPARK-36061][K8S] Addvolcanomodule and feature step #35422.Since Spark uses the
sbt-pom-readerplugin in its sbt configuration, the behavior of thebuild-helper-maven-pluginwill also propagate to the sbt build process. Therefore, no additional configuration is required inSparkBuild.scalaafter this pr.Why are the changes needed?
The previous configuration way was not very friendly to IntelliJ developers: when debugging code in IntelliJ, regardless of whether they were needed or not, the
volcanoprofile had to be activated; otherwise compilation errors would occur when running tests that depended on thekubernetesmodule's source code, for exampleorg.apache.spark.shuffle.ShuffleChecksumUtilsSuite:Does this PR introduce any user-facing change?
No
How was this patch tested?
It can be seen that the test cases
VolcanoFeatureStepSuiteandVolcanoSuitehave been successfully executed.build/sbt clean "kubernetes/testOnly *VolcanoFeatureStepSuite" -Pkubernetes, and without-Pvolcano, no tests will be executed:build/sbt clean "kubernetes/testOnly *VolcanoFeatureStepSuite" -Pkubernetes -Pvolcano, and with-Pvolcano,VolcanoFeatureStepSuitewill pass the tests:run
build/sbt clean "kubernetes/package" -Pkubernetes -Pvolcano, and with-Pvolcano, confirm thatspark-kubernetes_2.13-4.0.0-SNAPSHOT.jarcontainsVolcanoFeatureStep.classrun
build/sbt clean "kubernetes/package" -Pkubernetes, and without-Pvolcano, confirm thatspark-kubernetes_2.13-4.0.0-SNAPSHOT.jarnot containsVolcanoFeatureStep.classbuild/mvn clean test -pl resource-managers/kubernetes/core -am -Dtest=none -DwildcardSuites=org.apache.spark.deploy.k8s.features.VolcanoFeatureStepSuite -Pkubernetes, and without-Pvolcano, no tests will be executed:build/mvn clean test -pl resource-managers/kubernetes/core -am -Dtest=none -DwildcardSuites=org.apache.spark.deploy.k8s.features.VolcanoFeatureStepSuite -Pkubernetes -Pvolcano, and with-Pvolcano,VolcanoFeatureStepSuitewill pass the tests:run
build/mvn clean package -pl resource-managers/kubernetes/core -am -DskipTests -Pkubernetes -Pvolcanoand with-Pvolcano, confirm thatspark-kubernetes_2.13-4.0.0-SNAPSHOT.jarcontainsVolcanoFeatureStep.classrun
build/mvn clean package -pl resource-managers/kubernetes/core -am -DskipTests -Pkubernetesand without-Pvolcano, confirm thatspark-kubernetes_2.13-4.0.0-SNAPSHOT.jarnot containsVolcanoFeatureStep.classvolcano, and confirm thatvolcano-related code is not recognized as source/test code, and does not affect the compilation and testing of other code.volcano, and confirm thatvolcano-related code is recognized as source/test code, and can be compiled and tested normally.kubernetes-integration-testsmodule to confirm the validity of thevolcanoprofile.Was this patch authored or co-authored using generative AI tooling?
No