Move web-console dependency declaration from druid-server to druid-distribution#12501
Conversation
|
@FrankChen021, thanks for making this fix: the revised dependency looks right: it should be Adding an IT is usually a Good Thing. There is, however, a big cost to adding a test group in the current setup: we build the entire Druid stack for each test group. I've been chipping away at First cut at restructuring the integration tests to make the ITs simpler and faster: your new test is a good candidate to port. In the mean while, can the IT be added to an existing group? It can just piggy-back on any one of the existing clusters, can't it? |
|
@paul-rogers Thanks for the review. I need to make some changes to the CI. Since the web-console is moved to |
|
Since #12776 has moved web-console e2e test to phase 1, there's no need to an IT test anymore, revert these changes. |
|
Hello @clintropolis @vogievetsky Could you review this PR? |
|
By this adjustment, the building speed with |
|
Hello @clintropolis Any update on this PR? |
clintropolis
left a comment
There was a problem hiding this comment.
sorry for the delay, forgot about this one.
I confirmed that everything still works, so this seems fine to me 👍
|
Thank you @clintropolis |
|
hmm, I think this might have broken how I was debugging druid services in intellij using run configurations (similar to https://github.com/apache/druid/blob/master/dev/intellij-setup.md#coordinatorxml), since the web-console is no longer working for me. I haven't verified that it is this change yet, but it seems pretty likely given that the above setup is not using the distribution packaging at all. |
confirmed it is related to this change, I'll see if I can find a solution to my debugger problem, since I use that method of debugging fairly frequently... |
|
Hello @clintropolis Sorry to hear that. I didn't use debug from Intelli to launch process, instead I usually use 'attach' to an existing running process. Since web-console is served by router, do you mean you debug router in this way? |
|
I'm wondering if we can use 'profile' to include the web-console in the server/pom.xml and active such profile from intellij when debugging? |
I think it's possible. Intellij provides a profile panel that allows us to active specific profiles. We can keep that newly added profile selected from Intellij. @clintropolis Do you have any other ideas? |
|
Glad to hear it works. Sorry for the inconvenience caused by this change. @clintropolis |


Description
This is a follow up of #12486
#12486 removes the web-console dependency from druid-server module because the dependency check reports that it's not used in druid-server module.
Because druid-server module is referenced by many other modules, the existence of web-console dependency in druid-server module makes that module to be compiled after the web-console module. However, building of web-console module usually takes a long time. If the whole module is built in parallel with
-Tmvn parameter, this dependency makes the building slower.After #12486 is merged, @vogievetsky found that this dependency must be there or the web-console module won't be shipped in the distribution package(#12486 (comment))
The druid distribution package is packaged by the
mvn-assembly-pluginreferenced in thedruid-distributionmodule.druid/distribution/pom.xml
Lines 256 to 258 in 0206a2d
This plugin is also configured to copy all dependencies declared in the pom of
druid-distributionto thelibdirectory as below.druid/distribution/src/assembly/assembly.xml
Lines 126 to 129 in 0206a2d
So, we can move the dependency declaration from the druid-server module to the druid-distribution module so that we still gain the building speed up as well as the package integrity.
This PR has: