Skip to content

Document Camel Quarkus build items #2900 - #9101

Open
AzazelSensei wants to merge 4 commits into
apache:mainfrom
AzazelSensei:docs-2900-build-items
Open

AzazelSensei wants to merge 4 commits into
apache:mainfrom
AzazelSensei:docs-2900-build-items

Conversation

@AzazelSensei

Copy link
Copy Markdown
Contributor

Adds a contributor-guide page that lists the core and Camel Main build items, in the same spirit as the Quarkus all-builditems catalog.

I also linked it from the custom components guide and the contributor nav.

Fixes #2900

@jamesnetherton

Copy link
Copy Markdown
Contributor

Thanks @AzazelSensei. I probably should have added more info to the issue.

This task is somewhat more complex than just adding a static doc page.

  • There are other extensions outside of the extensions-core/core that provide their own build items. So they also need to be listed
  • The page needs to be built dynamically so that it stays fresh. Not sure what the best way to do that it is. But it needs to be unobtrusive and not impact project build. Maybe something added to tooling/maven-plugin where we have various mojos for manipulating docs.

@AzazelSensei

Copy link
Copy Markdown
Contributor Author

Dropped the static core-only list. The page is now generated from the *BuildItem classes in every deployment module. The mojo lives in tooling/maven-plugin and runs from the docs module, so the main build is not involved.

AzazelSensei and others added 4 commits September 29, 2026 11:36
Add a contributor-guide summary of the core and Camel Main build
items, similar to the Quarkus all-builditems page.

Fixes apache#2900
Scan *BuildItem classes across extensions-core, extensions,
extensions-support and extensions-jvm, and write the
contributor-guide page from the docs module so the main
build is not involved.
Parse the sources with JavaParser instead of regular expressions, group
the build items by the <name> of the Maven module declaring them, list
their fields, skip the non-public and deprecated ones and flag the
abstract ones, mirroring io.quarkus.docs.generation.QuarkusBuildItemDoc.

Move the mojo execution from validate to process-classes, so that
mvn clean validate, as run by the check-format CI job, does not have to
resolve camel-quarkus-maven-plugin before the reactor has packaged it.
The execution now sits in the full profile, hence -Dquickly builds skip
it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Camel Quarkus :: Support :: DSL :: Deployment now yields a Support DSL
section instead of Support :: DSL.

Note in AGENTS.md how to regenerate the page too, as -Dquickly builds
skip the generator.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@jamesnetherton

Copy link
Copy Markdown
Contributor

I rebased this from latest work from main.

I also took the liberty of pushing a few tidy-ups and improvements + fixes for the build failures.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document Camel Quarkus build items

2 participants