oeqa/selftest: add a newline in local.conf (newbuilddir)

If the build-st/conf/local.conf does not end with a newline
when is generated then add one

[YOCTO #15734]

CC: Yoann Congal <yoann.congal@smile.fr>
CC: Randy MacLeod <randy.macleod@windriver.com>
CC: Alexander Kanavin <alex.kanavin@gmail.com>
(From OE-Core rev: d2fcd9e880126bc33be2ef14e678cc1aa72683c3)

Signed-off-by: Christos Gavros <gavrosc@yahoo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Christos Gavros
2025-02-25 18:56:51 +01:00
committed by Richard Purdie
parent e004154042
commit de51bc3cd9

View File

@@ -102,6 +102,13 @@ class OESelftestTestContext(OETestContext):
oe.path.copytree(builddir + "/cache", newbuilddir + "/cache")
oe.path.copytree(selftestdir, newselftestdir)
# if the last line of local.conf in newbuilddir is not empty and does not end with newline then add one
localconf_path = newbuilddir + "/conf/local.conf"
with open(localconf_path, "r+", encoding="utf-8") as f:
last_line = f.readlines()[-1]
if last_line and not last_line.endswith("\n"):
f.write("\n")
subprocess.check_output("git init && git add * && git commit -a -m 'initial'", cwd=newselftestdir, shell=True)
# Tried to used bitbake-layers add/remove but it requires recipe parsing and hence is too slow