[gnome-continuous-yocto/gnomeostree-3.28-rocko: 3309/8267] image-buildinfo: treat staged changes as modified branch, too



commit ba011f588b41ad50bffc5a24950b91e70140bc07
Author: André Draszik <adraszik tycoint com>
Date:   Fri Nov 4 10:53:33 2016 +0000

    image-buildinfo: treat staged changes as modified branch, too
    
    When staging changes in a layer using git add, image-buildinfo
    doesn't detect this as a modification, because of the way it
    uses git diff.
    
    Surely, merely staging, but not committing changes to git
    should not result in image-buildhistory assuming that the
    git repository hasn't been modified compared to the branch
    HEAD, this state should be treated similarly to modifications
    being unstaged.
    
    We have to use both, git diff and git diff --cached to get the
    desired result.
    
    (From OE-Core rev: b46906889665f6ab72bccee608276646cda50140)
    
    Signed-off-by: André Draszik <adraszik tycoint com>
    Reported-by: Lukasz Nowak <lnowak tycoint com>
    Reviewed-by: Lukasz Nowak <lnowak tycoint com>
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/classes/image-buildinfo.bbclass |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
---
diff --git a/meta/classes/image-buildinfo.bbclass b/meta/classes/image-buildinfo.bbclass
index 3003f5d..da1edf7 100644
--- a/meta/classes/image-buildinfo.bbclass
+++ b/meta/classes/image-buildinfo.bbclass
@@ -28,7 +28,9 @@ def image_buildinfo_outputvars(vars, listvars, d):
 def get_layer_git_status(path):
     import subprocess
     try:
-        subprocess.check_output("cd %s; PSEUDO_UNLOAD=1 git diff --quiet --no-ext-diff" % path,
+        subprocess.check_output("""cd %s; export PSEUDO_UNLOAD=1; set -e;
+                                git diff --quiet --no-ext-diff
+                                git diff --quiet --no-ext-diff --cached""" % path,
                                 shell=True,
                                 stderr=subprocess.STDOUT)
         return ""


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