= Camel product build

* This Maven Module should never leak to the ASF repo

== `product/src/main/resources/required-productized-camel-artifacts.txt`

* A file defining which Camel artifacts are required by Camel Quarkus product branch
* Used by `org.l2x6.cq:cq-camel-prod-maven-plugin:camel-prod-excludes` and `org.l2x6.cq:cq-camel-prod-maven-plugin:camel-prod-excludes-check` mojos
* `required-productized-camel-artifacts.txt` should be copied verbatim from the corresponding Camel Quarkus prod branch, such as
  https://github.com/jboss-fuse/camel-quarkus/blob/camel-quarkus-2.2.0-product/product/src/main/generated/required-productized-camel-artifacts.txt

== Changes in `required-productized-camel-artifacts.txt`

The following mojo should be run after every change in `required-productized-camel-artifacts.txt` and the generated changes should be committed:

[source,shell]
----
$ mvn org.l2x6.cq:cq-camel-prod-maven-plugin:camel-prod-excludes -N
$ git add -A
$ git commit -m ...
----

== `camel-prod-excludes-check`

This mojo is enabled by default and not only checks whether the source tree is in sync with `required-productized-camel-artifacts.txt`
but also performs some tasks in the excluded modules so that the build is correct.

To skip the whole mojo (not recommended - see above), pass `-Dcq.camel-prod-excludes.skip`.

To avoid a check failure, but still perform the tasks in the excluded modules, pass `-Dcq.onCheckFailure=WARN` or `-Dcq.onCheckFailure=IGNORE`.
