Camel Quarkus CI Builds
Branches
main | Latest releasable work |
camel-main | To verify camel-quarkus against the latest Camel SNAPSHOT release |
quarkus-main | To verify camel-quarkus against the latest Quarkus SNAPSHOT release |
Branch maintenance
Some scheduled build jobs (mentioned below) run each day to synchronize branches camel-main
& quarkus-main
with the latest work from the main
branch.
Sometimes these jobs fail and it is necessary to fix any issues and manually rebase the branches. The process for doing this is as follows.
-
Depending on which branch you’re rebasing, you may want to begin by building the latest Camel
main
or Quarkusmain
branch to avoid pulling in non-deterministic SNAPSHOT artifacts. Otherwise you can build the branches and activate the relevant SNAPSHOT repositories via Maven profiles-Papache-snapshots
or-Poss-snapshots
. -
Checkout the branch you want to work on. E.g.
git checkout camel-main
. Make sure the core component version properties in the rootpom.xml
are set correctly. E.gcamel.version
the parent version forcamel-dependencies
&quarkus.version
. -
Ensure your local repository is up-to-date with the remote.
git pull -r
. -
Synchronize the branch with the latest work from the main branch. The 'origin' remote is assumed here but you can substitute this for whatever reference you want to work with.
git fetch origin main && git rebase origin/main
. You may need to fix up merge conflicts. -
Build the project quickly
mvn clean install -Dquickly -T1C
. Remember to activate any required SNAPSHOT profiles if required. -
Now you can proceed to work on fixing issues and committing the code. Any problems that are found to originate in Camel or Quarkus should be tracked by issues that you create in those projects.
-
When pushing changes, it’s likely that you’ll need to 'force push'. I.e with
--force
or in case others are working simultaneously on the same branch--force-with-lease
. -
Follow the GitHub CI build to verify that the project builds successfully.
Daily main → camel-main synchronization
This build creates an issue on failure, which can be tracked here:
Daily main → quarkus-main synchronization
This build creates an issue on failure, which can be tracked here: