Skip to content

CAMEL-23931: Fix camel.jbang.quarkus.platform.url ignored from application.properties - #25254

Merged
apupier merged 1 commit into
apache:mainfrom
jomin7:fix/camel-jbang-quarkus-platform-url
Jul 31, 2026
Merged

CAMEL-23931: Fix camel.jbang.quarkus.platform.url ignored from application.properties#25254
apupier merged 1 commit into
apache:mainfrom
jomin7:fix/camel-jbang-quarkus-platform-url

Conversation

@jomin7

@jomin7 jomin7 commented Jul 30, 2026

Copy link
Copy Markdown

Fixes CAMEL-23931
Setting camel.jbang.quarkus.platform.url in application.properties had no effect —the export always used the default public registry. Only JVM -D flags or the --quarkus-ext-registry CLI flag worked.

Fixed QuarkusPlatformMixin.of() to also read this property from the properties file.

Regression from CAMEL-23353 backport in 4.18.3.

…n.properties

QuarkusPlatformMixin.of() only honoured QUARKUS_EXTENSION_REGISTRY_BASE_URI
(camel.jbang.quarkusExtensionRegistryBaseUri) when loading properties, so
setting camel.jbang.quarkus.platform.url in application.properties was
silently ignored - unlike all other camel.jbang.* properties.

Also read QUARKUS_PLATFORM_URL_PROPERTY (camel.jbang.quarkus.platform.url)
from the supplied Properties as a fallback for quarkusExtensionRegistryBaseUri,
stripping the /client/platforms suffix if present (same logic already applied
for the system property in QuarkusExtensionRegistryMixin).

This regression was introduced in 4.18.3 by the CAMEL-23353 backport.
@github-actions github-actions Bot added the dsl label Jul 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🌟 Thank you for your contribution to the Apache Camel project! 🌟
🤖 CI automation will test this PR automatically.

🐫 Apache Camel Committers, please review the following items:

  • First-time contributors require MANUAL approval for the GitHub Actions to run
  • You can use the command /component-test (camel-)component-name1 (camel-)component-name2.. to request a test from the test bot although they are normally detected and executed by CI.
  • You can label PRs using skip-tests and test-dependents to fine-tune the checks executed by this PR.
  • Build and test logs are available in the summary page. Only Apache Camel committers have access to the summary.

⚠️ Be careful when sharing logs. Review their contents before sharing them publicly.

@gnodet gnodet left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clean, well-tested fix for a real user-facing bug where camel.jbang.quarkus.platform.url set in application.properties was silently ignored during export. The logic correctly mirrors the existing system-property handling in QuarkusExtensionRegistryMixin.quarkusExtensionRegistryBaseUri().

Observations (not blocking):

  • Good job including tests for the two-phase loading pattern (app-properties then system-properties), which matches the real call sites in Export.java. The canonical-key-takes-priority-over-legacy-key test is important and well-designed.
  • Minor: the suffix-stripping logic for /client/platforms and trailing-slash stripping is now duplicated between QuarkusPlatformMixin.of() and QuarkusExtensionRegistryMixin.quarkusExtensionRegistryBaseUri(). Acceptable for this focused fix, but a future cleanup could extract a shared normalisation helper.
  • Pre-existing (not introduced by this PR): the resolve() method uses the raw field quarkusExtensionRegistryBaseUri at line 74 (when quarkusVersion != null) but calls the method quarkusExtensionRegistryBaseUri() at line 80 (else branch). The field access bypasses the system-property fallback. With this PR the of() path now normalises the value before storing it in the field, which partially mitigates this inconsistency.

This review was generated by an AI agent and may contain inaccuracies. Please verify all suggestions before applying.

Claude Code on behalf of Guillaume Nodet

@github-actions

Copy link
Copy Markdown
Contributor

🧪 CI tested the following changed modules:

  • dsl/camel-jbang/camel-jbang-core

🔬 Scalpel shadow comparison — Scalpel: 7 tested, 8 compile-only — current: 6 all tested

Maveniverse Scalpel detected 15 affected modules (current approach: 6).

⚠️ Modules only in Scalpel (9)
  • camel-jbang-core
  • camel-jbang-it
  • camel-jbang-main
  • camel-jbang-plugin-edit
  • camel-jbang-plugin-generate
  • camel-jbang-plugin-kubernetes
  • camel-jbang-plugin-test
  • camel-launcher
  • coverage

Skip-tests mode would test 7 modules (1 direct + 6 downstream), skip tests for 8 (generated code, meta-modules)

Modules Scalpel would test (7)
  • camel-jbang-core
  • camel-jbang-mcp
  • camel-jbang-plugin-mcp
  • camel-jbang-plugin-route-parser
  • camel-jbang-plugin-tui
  • camel-jbang-plugin-validate
  • camel-launcher-container
Modules with tests skipped (8)
  • camel-jbang-it
  • camel-jbang-main
  • camel-jbang-plugin-edit
  • camel-jbang-plugin-generate
  • camel-jbang-plugin-kubernetes
  • camel-jbang-plugin-test
  • camel-launcher
  • coverage

ℹ️ Shadow mode — Scalpel observes but does not affect test execution. Learn more

⚠️ Some tests are disabled on GitHub Actions (@DisabledIfSystemProperty(named = "ci.env.name")) and require manual verification:

  • dsl/camel-jbang/camel-jbang-core: 1 test(s) disabled on GitHub Actions

💡 Manual integration tests recommended:

You modified dsl/camel-jbang/camel-jbang-core. The related integration tests in dsl/camel-jbang/camel-jbang-it are excluded from CI. Consider running them manually:

mvn verify -f dsl/camel-jbang/camel-jbang-it -Djbang-it-test
All tested modules (15 modules)
  • Camel :: Coverage
  • Camel :: JBang :: Core
  • Camel :: JBang :: Integration tests
  • Camel :: JBang :: MCP
  • Camel :: JBang :: Main
  • Camel :: JBang :: Plugin :: Edit
  • Camel :: JBang :: Plugin :: Generate
  • Camel :: JBang :: Plugin :: Kubernetes
  • Camel :: JBang :: Plugin :: MCP
  • Camel :: JBang :: Plugin :: Route Parser
  • Camel :: JBang :: Plugin :: TUI
  • Camel :: JBang :: Plugin :: Testing
  • Camel :: JBang :: Plugin :: Validate
  • Camel :: Launcher
  • Camel :: Launcher :: Container

⚙️ View full build and test results

@apupier
apupier merged commit 0e10154 into apache:main Jul 31, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants