diff mbox series

lib/oe/recipeutils: honor stable_upgrade for UPSTREAM_CHECK_COMMITS recipes

Message ID 20260928193559.3922884-1-daniel.turull@ericsson.com
State New
Headers show
Series lib/oe/recipeutils: honor stable_upgrade for UPSTREAM_CHECK_COMMITS recipes | expand

Commit Message

Daniel Turull Sept. 28, 2026, 7:35 p.m. UTC
From: Daniel Turull <daniel.turull@ericsson.com>

Found running AUH --stable on wrynose: recipes with
UPSTREAM_CHECK_COMMITS set (gnu-config, gn, piglit, etc.) always
reported "-new-commits-available" regardless of stable_upgrade, since
that check ran before stable_upgrade was ever consulted.

AI-Generated: kiro:claude-sonnet-5
Signed-off-by: Daniel Turull <daniel.turull@ericsson.com>
---
 meta/lib/oe/recipeutils.py | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/meta/lib/oe/recipeutils.py b/meta/lib/oe/recipeutils.py
index 99e7bc7acf..7b8594a612 100644
--- a/meta/lib/oe/recipeutils.py
+++ b/meta/lib/oe/recipeutils.py
@@ -1068,7 +1068,7 @@  def get_recipe_upstream_version(rd, stable_upgrade=False):
         ru['datetime'] = datetime.now()
     else:
         ud = bb.fetch.FetchData(src_uri, rd)
-        if rd.getVar("UPSTREAM_CHECK_COMMITS") == "1":
+        if rd.getVar("UPSTREAM_CHECK_COMMITS") == "1" and not stable_upgrade:
             bb.fetch.get_srcrev(rd)
             upversion = None
             revision = None
@@ -1079,6 +1079,12 @@  def get_recipe_upstream_version(rd, stable_upgrade=False):
                     upversion = upversion + "-new-commits-available"
             except bb.fetch.FetchError as e:
                 bb.warn("Unable to obtain latest revision: {}".format(e))
+        elif rd.getVar("UPSTREAM_CHECK_COMMITS") == "1":
+            # UPSTREAM_CHECK_COMMITS recipes only track git HEAD, not a
+            # version number, so there's no way to filter for a "stable"
+            # release; treat as no update available.
+            upversion = pv
+            revision = None
         else:
             if stable_upgrade:
                 stable_release_regex = rd.getVar("UPSTREAM_STABLE_RELEASE_REGEX")