From: Don Zickus <dzickus@xxxxxxxxxx> Octopus merges are too conservative, serialize instead There are some commits in an octous merge that may overlap and the octopus merging is to conservative. Serializing the merges is more successfull. Convert to that. Signed-off-by: Don Zickus <dzickus@xxxxxxxxxx> diff --git a/redhat/scripts/ci/ark-ci-env.sh b/redhat/scripts/ci/ark-ci-env.sh index blahblah..blahblah 100644 --- a/redhat/scripts/ci/ark-ci-env.sh +++ b/redhat/scripts/ci/ark-ci-env.sh @@ -56,23 +56,20 @@ ark_git_mirror() # Merge wrapper in case issues arise ark_git_merge() { - # support octopus merging with source_branch 1|2 - target_branch="$1" - source_branch1="$2" - source_branch2="$3" + source_branch="$2" prev_branch="$(git rev-parse --abbrev-ref HEAD)" - ark_git_branch "$target_branch" "${source_branch1}" + ark_git_branch "$target_branch" "${source_branch}" git checkout "$target_branch" - msg="Merge '${source_branch1} ${source_branch2}' into '$target_branch'" - if ! git merge -m "$msg" "${source_branch1}" "${source_branch2}"; then + msg="Merge '${source_branch}' into '$target_branch'" + if ! git merge -m "$msg" "${source_branch}"; then git merge --abort printf "Merge conflict; halting!\n" printf "To reproduce:\n" printf "* git checkout %s\n" "${target_branch}" - printf "* git merge %s\n" "${source_branch1} ${source_branch2}" + printf "* git merge %s\n" "${source_branch}" die "Merge conflicts" fi diff --git a/redhat/scripts/ci/ark-merge-rt.sh b/redhat/scripts/ci/ark-merge-rt.sh index blahblah..blahblah 100755 --- a/redhat/scripts/ci/ark-merge-rt.sh +++ b/redhat/scripts/ci/ark-merge-rt.sh @@ -125,7 +125,6 @@ if test "$UPSTREAM_RT_DEVEL_VER" != "$RT_DEVEL_VER" -o \ # rebases usually go from prev version to new version # rebuild the prev merge base as it isn't saved. # then rebuild the current merge base as it isn't saved either - # because we use an octopus merge below. prev_branch="$(git rev-parse --abbrev-ref HEAD)" temp_prev_branch="_temp_prev_rt_devel_$(date +%F)" git branch -D "$temp_prev_branch" 2>/dev/null @@ -133,7 +132,7 @@ if test "$UPSTREAM_RT_DEVEL_VER" != "$RT_DEVEL_VER" -o \ git checkout -b "$temp_prev_branch" "kernel-${OS_BUILD_VER_prev}.0-0" git merge "$UPSTREAM_RT_TREE_NAME/$UPSTREAM_RT_PREV_BRANCH" - # create devel merge branch to base octopus merge on. + # create devel merge branch to base merge on. temp_devel_branch="_temp_devel_rt_devel_$(date +%F)" git branch -D "$temp_devel_branch" 2>/dev/null git checkout -b "$temp_devel_branch" "$OS_BUILD_BASE_BRANCH" @@ -148,14 +147,16 @@ if test "$UPSTREAM_RT_DEVEL_VER" != "$RT_DEVEL_VER" -o \ fi ## Build -rt-devel branch, generate pending-rhel configs -ark_git_merge "$RT_DEVEL_BRANCH" "$OS_BUILD_BASE_BRANCH" "$UPSTREAM_RT_TREE_NAME/$UPSTREAM_RT_DEVEL_BRANCH" +ark_git_merge "$RT_DEVEL_BRANCH" "$OS_BUILD_BASE_BRANCH" +ark_git_merge "$RT_DEVEL_BRANCH" "$UPSTREAM_RT_TREE_NAME/$UPSTREAM_RT_DEVEL_BRANCH" # don't care if configs were added or not hence '|| true' ark_update_configs "$RT_DEVEL_BRANCH" || true # skip pushing config update MRs, keep them in pending-rhel ark_push_changes "$RT_DEVEL_BRANCH" "skip" ## Build -automotive-devel branch, generate pending-rhel configs -ark_git_merge "$AUTOMOTIVE_DEVEL_BRANCH" "$OS_BUILD_BASE_BRANCH" "$UPSTREAM_RT_TREE_NAME/$UPSTREAM_RT_DEVEL_BRANCH" +ark_git_merge "$AUTOMOTIVE_DEVEL_BRANCH" "$OS_BUILD_BASE_BRANCH" +ark_git_merge "$AUTOMOTIVE_DEVEL_BRANCH" "$UPSTREAM_RT_TREE_NAME/$UPSTREAM_RT_DEVEL_BRANCH" # don't care if configs were added or not hence '|| true' ark_update_configs "$AUTOMOTIVE_DEVEL_BRANCH" || true # skip pushing config update MRs, keep them in pending-rhel -- https://gitlab.com/cki-project/kernel-ark/-/merge_requests/2972 -- _______________________________________________ kernel mailing list -- kernel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to kernel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/kernel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue