This is an automated email from the ASF dual-hosted git repository.
jamesnetherton pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
The following commit(s) were added to refs/heads/master by this push:
new 8283c9f Document the process for maintaining (quarkus | camel)-master
branches
8283c9f is described below
commit 8283c9f16a9120c417491573f34e4db8a1542d62
Author: James Netherton <[email protected]>
AuthorDate: Tue Mar 30 08:43:25 2021 +0100
Document the process for maintaining (quarkus | camel)-master branches
Fixes #2406
---
docs/modules/ROOT/pages/contributor-guide/ci.adoc | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/docs/modules/ROOT/pages/contributor-guide/ci.adoc
b/docs/modules/ROOT/pages/contributor-guide/ci.adoc
index d06d4bd..3ae1585 100644
--- a/docs/modules/ROOT/pages/contributor-guide/ci.adoc
+++ b/docs/modules/ROOT/pages/contributor-guide/ci.adoc
@@ -11,6 +11,28 @@
|quarkus-master| 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-master` & `quarkus-master` with the latest work from the
`master` 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.
+
+1. Depending on which branch you're rebasing, you may want to begin by
building the latest Camel `master` or Quarkus `main` 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`.
+
+2. Checkout the branch you want to work on. E.g. `git checkout camel-master`.
Make sure the core component version properties in the root `pom.xml` are set
correctly. E.g `camel.version` the parent version for `camel-dependencies` &
`quarkus.version`.
+
+3. Ensure your local repository is up-to-date with the remote. `git pull -r`.
+
+4. Synchronize the branch with the latest work from the master branch. The
'origin' remote is assumed here but you can substitute this for whatever
reference you want to work with. `git fetch origin master && git rebase
origin/camel-master`. You may need to fix up merge conflicts.
+
+5. Build the project quickly `mvn clean install -Dquickly -T1C`. Remember to
activate any required SNAPSHOT profiles if required.
+
+6. 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.
+
+7. 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`.
+
+8. Follow the GitHub CI build to verify that the project builds successfully.
+
== Builds
https://github.com/apache/camel-quarkus/actions?query=workflow%3A%22Camel+Quarkus+CI%22