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>
This commit is contained in:
Richard Purdie 2022-06-09 11:52:14 +01:00
parent 3ae4dd140a
commit 38a9622ba3
4 changed files with 14 additions and 18 deletions

View File

@ -218,11 +218,8 @@ def get_source_date_epoch_value(d):
return oe.reproducible.epochfile_read(d.getVar('SDE_FILE'), d)
def get_layers_branch_rev(d):
layers = (d.getVar("BBLAYERS") or "").split()
layers_branch_rev = ["%-20s = \"%s:%s\"" % (os.path.basename(i), \
oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
oe.buildcfg.get_metadata_git_revision(i, None)) \
for i in layers]
revisions = oe.buildcfg.get_layer_revisions(d)
layers_branch_rev = ["%-20s = \"%s:%s\"" % (r[1], r[2], r[3]) for r in revisions]
i = len(layers_branch_rev)-1
p1 = layers_branch_rev[i].find("=")
s1 = layers_branch_rev[i][p1:]

View File

@ -742,13 +742,9 @@ def buildhistory_get_build_id(d):
return('\n%s\n%s\n' % (statusheader, '\n'.join(statuslines)))
def buildhistory_get_metadata_revs(d):
# We want an easily machine-readable format here, so get_layers_branch_rev isn't quite what we want
layers = (d.getVar("BBLAYERS") or "").split()
medadata_revs = ["%-17s = %s:%s%s" % (os.path.basename(i), \
oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
oe.buildcfg.get_metadata_git_revision(i, None), \
oe.buildcfg.is_layer_modified(i)) \
for i in layers]
# We want an easily machine-readable format here
revisions = oe.buildcfg.get_layer_revisions(d)
medadata_revs = ["%-17s = %s:%s%s" % (r[1], r[2], r[3], r[4]) for r in revisions]
return '\n'.join(medadata_revs)
def outputvars(vars, listvars, d):

View File

@ -28,12 +28,8 @@ def image_buildinfo_outputvars(vars, d):
# Returns layer revisions along with their respective status
def get_layer_revs(d):
layers = (d.getVar("BBLAYERS") or "").split()
medadata_revs = ["%-17s = %s:%s %s" % (os.path.basename(i), \
oe.buildcfg.get_metadata_git_branch(i, None).strip(), \
oe.buildcfg.get_metadata_git_revision(i, None), \
oe.buildcfg.is_layer_modified(i)) \
for i in layers]
revisions = oe.buildcfg.get_layer_revisions(d)
medadata_revs = ["%-17s = %s:%s%s" % (r[1], r[2], r[3], r[4]) for r in revisions]
return '\n'.join(medadata_revs)
def buildinfo_target(d):

View File

@ -40,3 +40,10 @@ def is_layer_modified(path):
# (expected) return code 1 in a modified git repo. For example, we get
# output and a 129 return code when a layer isn't a git repo at all.
return " -- modified"
def get_layer_revisions(d):
layers = (d.getVar("BBLAYERS") or "").split()
revisions = []
for i in layers:
revisions.append((i, os.path.basename(i), get_metadata_git_branch(i, None).strip(), get_metadata_git_revision(i, None), is_layer_modified(i)))
return revisions