Project

General

Profile

oe-layertool-setup.sh script seems to pull and merge when it shouldn't need to

Added by Nathan Wright 6 months ago

We noticed in our pipeline setup that the oe-layertool-setup.sh script still appeared to be pulling and merging against a cached repo that had no changes. We are on ubuntu 24.

We think this fixes it...

diff --git a/oe-layertool-setup.sh b/oe-layertool-setup.sh
index 2bee538..799f984 100755
--- a/oe-layertool-setup.sh
+++ b/oe-layertool-setup.sh
@ -460,7 +460,7 @ checkout_branch() { # Check if a local branch already exists to track the remote branch. # If not then create a tracking branch and checkout the branch # else just checkout the existing branch
- if git branch | grep -q "$branch"
+ if ! git branch | grep -q "$branch"
then
git checkout "origin/$branch" -b "$branch" --track
else


Replies (3)

RE: oe-layertool-setup.sh script seems to pull and merge when it shouldn't need to - Added by Nathan Wright 6 months ago

while we're at it, why let it complain about detached heads when the config file asked for detached heads?

diff --git a/oe-layertool-setup.sh b/oe-layertool-setup.sh
index 2bee538..ffd57ca 100755
--- a/oe-layertool-setup.sh
+++ b/oe-layertool-setup.sh
@@ -460,11 +460,11 @@ checkout_branch() {
     # Check if a local branch already exists to track the remote branch.
     # If not then create a tracking branch and checkout the branch
     # else just checkout the existing branch
-    if git branch | grep -q "$branch" 
+    if ! git branch | grep -q "$branch" 
     then
-        git checkout "origin/$branch" -b "$branch" --track
+        git -c advice.detachedHead=false checkout "origin/$branch" -b "$branch" --track
     else
-        git checkout "$branch" 
+        git -c advice.detachedHead=false checkout "$branch" 
     fi

     # Now that we are on the proper branch pull the remote branch changes if
@@ -484,7 +484,7 @@ checkout_commit() {
     cd "$sourcedir/$name" || return 1
     if [ "$commit" != "HEAD" ]
     then
-        git checkout $commit
+        git -c advice.detachedHead=false checkout $commit
     fi
 }

RE: oe-layertool-setup.sh script seems to pull and merge when it shouldn't need to - Added by Jonathan Cormier 6 months ago

I think both of these make a lot of sense. I'd recommend reporting this to TI via the meta-arago mailing list. They should even include your name as the patch author.

Here is the last patch submitted related to the oe-layertool-setup.sh script as a template.

https://lists.yoctoproject.org/g/meta-arago/message/15338

Incase you are unfamiliar, git does have a send-email subcommand that is designed to help with sending patches to mailing lists like this. Unfortunately, it takes a bit to setup but if you're interested. https://stackoverflow.com/a/68238913/780194

    (1-3/3)
    Go to top
    Add picture from clipboard (Maximum size: 1 GB)