diff options
author | André Draszik <adraszik@tycoint.com> | 2016-11-04 10:53:33 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-11-15 15:19:53 +0000 |
commit | ba011f588b41ad50bffc5a24950b91e70140bc07 (patch) | |
tree | fb0e0ea6a808562fad83e7ea8a476c93a2e2fbbc /meta/classes | |
parent | 4e6c5d87691ef96cb956b880c35f9a5bfeb7a309 (diff) | |
download | poky-ba011f588b41ad50bffc5a24950b91e70140bc07.tar.gz |
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>
Diffstat (limited to 'meta/classes')
-rw-r--r-- | 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 3003f5d256..da1edf7496 100644 --- a/meta/classes/image-buildinfo.bbclass +++ b/meta/classes/image-buildinfo.bbclass | |||
@@ -28,7 +28,9 @@ def image_buildinfo_outputvars(vars, listvars, d): | |||
28 | def get_layer_git_status(path): | 28 | def get_layer_git_status(path): |
29 | import subprocess | 29 | import subprocess |
30 | try: | 30 | try: |
31 | subprocess.check_output("cd %s; PSEUDO_UNLOAD=1 git diff --quiet --no-ext-diff" % path, | 31 | subprocess.check_output("""cd %s; export PSEUDO_UNLOAD=1; set -e; |
32 | git diff --quiet --no-ext-diff | ||
33 | git diff --quiet --no-ext-diff --cached""" % path, | ||
32 | shell=True, | 34 | shell=True, |
33 | stderr=subprocess.STDOUT) | 35 | stderr=subprocess.STDOUT) |
34 | return "" | 36 | return "" |