Shawyeok commented on PR #4526:
URL: https://github.com/apache/bookkeeper/pull/4526#issuecomment-2481361967

   @lhotari 
   Typically, a shaded module is intended for external use, but we use 
`jetcd-core-shaded` internally in this case.
   
   Currently, `Integration Tests` are run for the entire `metadata-drivers` 
project. After investigating Maven’s artifact resolution during the test 
lifecycle, it prioritizes resolving artifacts from the current session 
workspace (including `metadata-drivers-parent`, `jetcd-core-shaded`, and 
`metadata-stores-etcd`). If not found in the workspace, it falls back to the 
local repository. In this case, it resolve the artifact of `jetcd-core-shaded` 
as `/path/to/bookkeeper/metadata-drivers/jetcd-core-shaded/target/classes` 
instead lookup from local repository.
   
https://github.com/apache/maven-resolver/blob/5550317b3b035bed4101caf7615ed1f9926263a9/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultArtifactResolver.java#L349-L379
   
   A reasonable workaround is to exclude `jetcd-core-shaded` from the 
integration tests, as it’s a POM-only project with no Java source code.
   
   ```diff
   Subject: [PATCH] Exclude jetcd-core-shaded from metadata driver integration 
test
   ---
   Index: .github/workflows/bk-ci.yml
   IDEA additional info:
   Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
   <+>UTF-8
   ===================================================================
   diff --git a/.github/workflows/bk-ci.yml b/.github/workflows/bk-ci.yml
   --- a/.github/workflows/bk-ci.yml    (revision 
b32881139685af9fdb7a6cb06d55e78d8b677257)
   +++ b/.github/workflows/bk-ci.yml    (revision 
6b54df8f03f82c684827f6b6b80df087f7d33bef)
   @@ -242,7 +242,7 @@
            run: mvn -B -nsu clean install -Pdocker -DskipTests
    
          - name: Run metadata driver tests
   -        run: mvn -B -nsu -f metadata-drivers/pom.xml test -DintegrationTests
   +        run: mvn -B -nsu -f metadata-drivers/pom.xml -pl 
'!jetcd-core-shaded' test -DintegrationTests
    
          - name: Run all integration tests (except backward compatibility 
tests)
            run: |
   ```
   
   This should able to address CI `Integration Tests` failures, PTAL.


-- 
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: commits-unsubscr...@bookkeeper.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to