Replace python script with maven shell scripting for module discovery
This removes the python xml parsing script that was used to find all parent pom files. Instead, mvn is used to compute the submodules, along with some shell scripting to manage the set logic.
mvn is markedly slower than python, but this brings two major advantages.
-
Python isn't available by default in many of the maven docker containers. To continue using python we'd either have to install it every time we compile, or create a custom image with a python executable available. These are undesirable requirements, which go away when you no longer use python.
-
Maven will, by definition, parse the pom.xml files more completely / better than a custom python XML parser logic. This allows use of maven features, like variables or profiles, to set up module paths.
Testing
Register Pipeline, with JDK 17 image override