[OS-BUILD PATCHv2 2/2] Octopus merges are too conservative, serialize instead

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Fedora General Discussion]     [Older Fedora Users Archive]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Tux]     [Yosemite News]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [USB]     [Asterisk PBX]

  Powered by Linux