diff mbox series

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

Message ID 20250225175651.20909-1-gavrosc@yahoo.com
State Accepted, archived
Commit d2fcd9e880126bc33be2ef14e678cc1aa72683c3
Headers show
Series [v3] oeqa/selftest: add a newline in local.conf (newbuilddir) | expand

Commit Message

Christos Gavros Feb. 25, 2025, 5:56 p.m. UTC
If the build-st/conf/local.conf does not end with a newline
when is generated then add one
Fixes [YOCTO #15734]

CC: Yoann Congal <yoann.congal@smile.fr>
CC: Randy MacLeod <randy.macleod@windriver.com>
CC: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Christos Gavros <gavrosc@yahoo.com>
---
v2->v3
* reading the file line by line replaced with f.readlines
(it uses more memory but gives faster access)
---
 meta/lib/oeqa/selftest/context.py | 7 +++++++
 1 file changed, 7 insertions(+)
diff mbox series

Patch

diff --git a/meta/lib/oeqa/selftest/context.py b/meta/lib/oeqa/selftest/context.py
index 5eb4cc44fd..16f82c6737 100644
--- a/meta/lib/oeqa/selftest/context.py
+++ b/meta/lib/oeqa/selftest/context.py
@@ -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