gnodet commented on PR #22247: URL: https://github.com/apache/camel/pull/22247#issuecomment-4138133767
## Fork Testing Report _Claude Code on behalf of Guillaume Nodet_ Ran manual tests on `gnodet/camel` fork using `workflow_dispatch` to validate the CI changes in this PR. Three scenarios were tested: ### Test 1: Component file change detection ✅ **Run:** [23613433728](https://github.com/gnodet/camel/actions/runs/23613433728) — **All 3 JDKs passed** Changed `components/camel-http/HttpComponent.java` and verified: - ✅ File-path analysis correctly detected `components/camel-http` - ✅ Dependent module count (88) correctly exceeded threshold (50) → tested only affected module - ✅ Full regen.sh build + incremental test pipeline completed successfully - ✅ CI comment artifact uploaded correctly ### Test 2: Parent POM dependency detection ✅ (script worked, tests failed) **Run:** [23613434374](https://github.com/gnodet/camel/actions/runs/23613434374) — **JDK 21 failed (test failures)** Changed `jetty-version` property comment in `parent/pom.xml` and verified: - ✅ POM dependency analysis correctly detected `jetty-version` property change - ✅ Found all 8 modules referencing `${jetty-version}`: camel-undertow, camel-cometd, camel-platform-http, camel-jetty-common, camel-salesforce-maven-plugin, camel-salesforce, camel-jetty, camel-thymeleaf - ✅ Correctly identified `parent` as pom-only module (no src/test, won't expand dependents) - ❌ Actual test failures in detected modules (expected — these are real component tests that can fail independently) ### Test 3: skip_full_build + extra_modules (`/component-test` path) ✅ (script worked, tests failed) **Run:** [23615655184](https://github.com/gnodet/camel/actions/runs/23615655184) — **JDK 17/25 failed (test failures)** Dispatched with `skip_full_build=true` and `extra_modules=components/camel-direct`: - ✅ Quick dependency build used instead of regen.sh - ✅ Extra modules correctly merged with file-path detected modules - ✅ Dependent module count correctly calculated as 24 (< 50 threshold) → tested all dependents - ❌ Actual test failures in dependent modules (expected) ### Bugs Found and Fixed 1. **Pipefail bug in dependent count** (line 448): When `./mvnw` returns non-zero, `pipefail` causes the `|| echo "0"` fallback to append "0" to the `wc -l` output, producing values like `"24\n0"` that break the `[[ -gt ]]` comparison. Fixed by using `|| true` and extracting the last line. 2. **Hardcoded `github-repo` default**: The `action.yaml` had `default: 'apache/camel'` instead of `default: ${{ github.repository }}`. This prevented the script from fetching PR diffs on forks. Fixed to use `${{ github.repository }}`. Both fixes are included in commit b9e4fd7594c4. ### Summary All three code paths in `incremental-build.sh` are working correctly: - **File-path detection** → identifies changed modules from PR diff - **POM dependency detection** → finds modules affected by parent POM property changes - **Extra modules merging** → correctly adds `/component-test` modules to the test set - **skip_full_build** → correctly uses quick build instead of regen.sh - **Dependent module threshold** → correctly counts and applies the 50-module limit - **CI comment artifact** → uploaded correctly for the commenter workflow The test failures (exit code 1) in Tests 2 and 3 are from actual Camel component tests, not from the CI script itself. -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
