diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-06-09 11:52:14 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-06-11 10:30:57 +0100 |
commit | 38a9622ba35f674f66bc9e74512805f4834b606d (patch) | |
tree | 1f28ec109f11b51863e3f551b470addaf896212c | |
parent | 3ae4dd140a76acb64d776be925f5e56ac67746e0 (diff) | |
download | poky-38a9622ba35f674f66bc9e74512805f4834b606d.tar.gz |
base/buildhistory/image-buildinfo: Use common buildcfg function
Reduce code duplication to a common function in oe.buildcfg.
(From OE-Core rev: 0b191a1df4c3722defb09dde0c16b1d9e7fe7ef6)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/base.bbclass | 7 | ||||
-rw-r--r-- | meta/classes/buildhistory.bbclass | 10 | ||||
-rw-r--r-- | meta/classes/image-buildinfo.bbclass | 8 | ||||
-rw-r--r-- | meta/lib/oe/buildcfg.py | 7 |
4 files changed, 14 insertions, 18 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass index f59e95fef0..20968a5076 100644 --- a/meta/classes/base.bbclass +++ b/meta/classes/base.bbclass | |||
@@ -218,11 +218,8 @@ def get_source_date_epoch_value(d): | |||
218 | return oe.reproducible.epochfile_read(d.getVar('SDE_FILE'), d) | 218 | return oe.reproducible.epochfile_read(d.getVar('SDE_FILE'), d) |
219 | 219 | ||
220 | def get_layers_branch_rev(d): | 220 | def get_layers_branch_rev(d): |
221 | layers = (d.getVar("BBLAYERS") or "").split() | 221 | revisions = oe.buildcfg.get_layer_revisions(d) |
222 | layers_branch_rev = ["%-20s = \"%s:%s\"" % (os.path.basename(i), \ | 222 | layers_branch_rev = ["%-20s = \"%s:%s\"" % (r[1], r[2], r[3]) for r in revisions] |
223 | oe.buildcfg.get_metadata_git_branch(i, None).strip(), \ | ||
224 | oe.buildcfg.get_metadata_git_revision(i, None)) \ | ||
225 | for i in layers] | ||
226 | i = len(layers_branch_rev)-1 | 223 | i = len(layers_branch_rev)-1 |
227 | p1 = layers_branch_rev[i].find("=") | 224 | p1 = layers_branch_rev[i].find("=") |
228 | s1 = layers_branch_rev[i][p1:] | 225 | s1 = layers_branch_rev[i][p1:] |
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass index 6fffd47189..4ba9ec8f25 100644 --- a/meta/classes/buildhistory.bbclass +++ b/meta/classes/buildhistory.bbclass | |||
@@ -742,13 +742,9 @@ def buildhistory_get_build_id(d): | |||
742 | return('\n%s\n%s\n' % (statusheader, '\n'.join(statuslines))) | 742 | return('\n%s\n%s\n' % (statusheader, '\n'.join(statuslines))) |
743 | 743 | ||
744 | def buildhistory_get_metadata_revs(d): | 744 | def buildhistory_get_metadata_revs(d): |
745 | # We want an easily machine-readable format here, so get_layers_branch_rev isn't quite what we want | 745 | # We want an easily machine-readable format here |
746 | layers = (d.getVar("BBLAYERS") or "").split() | 746 | revisions = oe.buildcfg.get_layer_revisions(d) |
747 | medadata_revs = ["%-17s = %s:%s%s" % (os.path.basename(i), \ | 747 | medadata_revs = ["%-17s = %s:%s%s" % (r[1], r[2], r[3], r[4]) for r in revisions] |
748 | oe.buildcfg.get_metadata_git_branch(i, None).strip(), \ | ||
749 | oe.buildcfg.get_metadata_git_revision(i, None), \ | ||
750 | oe.buildcfg.is_layer_modified(i)) \ | ||
751 | for i in layers] | ||
752 | return '\n'.join(medadata_revs) | 748 | return '\n'.join(medadata_revs) |
753 | 749 | ||
754 | def outputvars(vars, listvars, d): | 750 | def outputvars(vars, listvars, d): |
diff --git a/meta/classes/image-buildinfo.bbclass b/meta/classes/image-buildinfo.bbclass index c149660f31..d4a12b5e10 100644 --- a/meta/classes/image-buildinfo.bbclass +++ b/meta/classes/image-buildinfo.bbclass | |||
@@ -28,12 +28,8 @@ def image_buildinfo_outputvars(vars, d): | |||
28 | 28 | ||
29 | # Returns layer revisions along with their respective status | 29 | # Returns layer revisions along with their respective status |
30 | def get_layer_revs(d): | 30 | def get_layer_revs(d): |
31 | layers = (d.getVar("BBLAYERS") or "").split() | 31 | revisions = oe.buildcfg.get_layer_revisions(d) |
32 | medadata_revs = ["%-17s = %s:%s %s" % (os.path.basename(i), \ | 32 | medadata_revs = ["%-17s = %s:%s%s" % (r[1], r[2], r[3], r[4]) for r in revisions] |
33 | oe.buildcfg.get_metadata_git_branch(i, None).strip(), \ | ||
34 | oe.buildcfg.get_metadata_git_revision(i, None), \ | ||
35 | oe.buildcfg.is_layer_modified(i)) \ | ||
36 | for i in layers] | ||
37 | return '\n'.join(medadata_revs) | 33 | return '\n'.join(medadata_revs) |
38 | 34 | ||
39 | def buildinfo_target(d): | 35 | def buildinfo_target(d): |
diff --git a/meta/lib/oe/buildcfg.py b/meta/lib/oe/buildcfg.py index 364c40a2f0..90f5e05715 100644 --- a/meta/lib/oe/buildcfg.py +++ b/meta/lib/oe/buildcfg.py | |||
@@ -40,3 +40,10 @@ def is_layer_modified(path): | |||
40 | # (expected) return code 1 in a modified git repo. For example, we get | 40 | # (expected) return code 1 in a modified git repo. For example, we get |
41 | # output and a 129 return code when a layer isn't a git repo at all. | 41 | # output and a 129 return code when a layer isn't a git repo at all. |
42 | return " -- modified" | 42 | return " -- modified" |
43 | |||
44 | def get_layer_revisions(d): | ||
45 | layers = (d.getVar("BBLAYERS") or "").split() | ||
46 | revisions = [] | ||
47 | for i in layers: | ||
48 | revisions.append((i, os.path.basename(i), get_metadata_git_branch(i, None).strip(), get_metadata_git_revision(i, None), is_layer_modified(i))) | ||
49 | return revisions | ||