reda-alaoui commented on PR #175: URL: https://github.com/apache/maven-build-cache-extension/pull/175#issuecomment-2315794689
Let me try to be more concrete by exposing a simplified example. I have a maven project with a single module. In this module, I have many prod classes and many slow tests in this module. My naive CI (Jenkins) pipeline is a single step: `mvn clean verify`. Running this takes 5 hours (30 minutes of compilation + 4h30m of test execution). My CI can execute jobs among multiple machines. So I decide to distribute the pipelines of my tests among my CI machines. I split the tests in 3 groups. To assign each test a group, I annotate each test class with a JUnit 5 `@Tag` annotation with a value of `group1`, `group2` or `group3`. My new pipeline is: 1. `mvn clean verify -DskipTests` (~30 minutes) 2. In parallel: 1. `mvn clean verify -Dgroups=group1` (4h30m/3) 2. `mvn clean verify -Dgroups=group2` (4h30m/3) 3. `mvn clean verify -Dgroups=group3` (4h30m/3) I want: * steps 2.x to reuse the cache produced by step 1 (I needed https://github.com/apache/maven-build-cache-extension/pull/177#pullrequestreview-2262014561 to make this one totally work) * that running again any step without any code change should skip all maven plugin executions > Does statement 2 imply that the rerun is a different reactor compile -> test group 1 and the expectation is that the results of the initial run are reused? Yes > Does parallel[test group 1, test group 2, test group 3] refer to three different reactor modules running tests? Yes > Are compile and any of test group 1, test group 2, test group 3 parts of the same module? Not necessarly. You can have a test group spanning across multiple modules. > You can move the parameter to the effective pom. One way to do this is by using a profile that defines a literal property value and referencing that value in a plugin. By doing so, the value will be interpolated to the plugin parameters and become part of the effective pom. Yes I know, and as I said I don't want a different checksum between all those steps. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org