| Message ID | 20250512155835.9159-1-peter.marko@siemens.com |
|---|---|
| State | Accepted, archived |
| Commit | ed43f9ccb3c08845259e24440912631afd780d12 |
| Headers | show |
| Series | testimage: get real os-release file | expand |
On Mon, 2025-05-12 at 17:58 +0200, Peter Marko via lists.openembedded.org wrote: > From: Peter Marko <peter.marko@siemens.com> > > /etc/os-release is a symlink to /usr/lib. > Symlink is retrieved as a dead link which points to nowhere if also the > original file is not accompanying it. > Fetch the real file instead of this link. > > Alternative could be to use "tar -h" (supported also by busybox tar), > however that could lose some important information if links are relevant > for failure analysis. > > Signed-off-by: Peter Marko <peter.marko@siemens.com> > --- > meta/classes-recipe/testimage.bbclass | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/meta/classes-recipe/testimage.bbclass b/meta/classes-recipe/testimage.bbclass > index e090b1ef4b..862f3e53a3 100644 > --- a/meta/classes-recipe/testimage.bbclass > +++ b/meta/classes-recipe/testimage.bbclass > @@ -26,7 +26,7 @@ TESTIMAGE_FAILED_QA_ARTIFACTS = "\ > ${localstatedir}/log \ > ${localstatedir}/volatile/log \ > ${sysconfdir}/version \ > - ${sysconfdir}/os-release" > + ${nonarch_libdir}/os-release" > > # If some ptests are run and fail, retrieve corresponding directories > TESTIMAGE_FAILED_QA_ARTIFACTS += "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', '${libdir}/*/ptest', '', d)}" The definitive location for this is ${sysconfdir} as far as I know and I'm nervous about replacing that. We could list both? For this file, resolving the symlink is the right thing to do but that might not be the case for all files listed in the variable which does make this trickier to solve... Cheers, RIchard
> -----Original Message----- > From: Richard Purdie <richard.purdie@linuxfoundation.org> > Sent: Tuesday, May 13, 2025 0:21 > To: Marko, Peter (FT D EU SK BFS1) <Peter.Marko@siemens.com>; > openembedded-core@lists.openembedded.org > Subject: Re: [OE-core] [PATCH] testimage: get real os-release file > > On Mon, 2025-05-12 at 17:58 +0200, Peter Marko via lists.openembedded.org > wrote: > > From: Peter Marko <peter.marko@siemens.com> > > > > /etc/os-release is a symlink to /usr/lib. > > Symlink is retrieved as a dead link which points to nowhere if also the > > original file is not accompanying it. > > Fetch the real file instead of this link. > > > > Alternative could be to use "tar -h" (supported also by busybox tar), > > however that could lose some important information if links are relevant > > for failure analysis. > > > > Signed-off-by: Peter Marko <peter.marko@siemens.com> > > --- > > meta/classes-recipe/testimage.bbclass | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/meta/classes-recipe/testimage.bbclass b/meta/classes- > recipe/testimage.bbclass > > index e090b1ef4b..862f3e53a3 100644 > > --- a/meta/classes-recipe/testimage.bbclass > > +++ b/meta/classes-recipe/testimage.bbclass > > @@ -26,7 +26,7 @@ TESTIMAGE_FAILED_QA_ARTIFACTS = "\ > > ${localstatedir}/log \ > > ${localstatedir}/volatile/log \ > > ${sysconfdir}/version \ > > - ${sysconfdir}/os-release" > > + ${nonarch_libdir}/os-release" > > > > # If some ptests are run and fail, retrieve corresponding directories > > TESTIMAGE_FAILED_QA_ARTIFACTS += > "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', '${libdir}/*/ptest', '', d)}" > > The definitive location for this is ${sysconfdir} as far as I know and > I'm nervous about replacing that. We could list both? For this file, > resolving the symlink is the right thing to do but that might not be > the case for all files listed in the variable which does make this > trickier to solve... > > Cheers, > > Richard OK, I'm sending a v2 to fetch both files. I have also tested that the3 code works when a requested file does not exist. If someone changes where the link points to, this variable will need to be adapted in such layer, too. Peter
diff --git a/meta/classes-recipe/testimage.bbclass b/meta/classes-recipe/testimage.bbclass index e090b1ef4b..862f3e53a3 100644 --- a/meta/classes-recipe/testimage.bbclass +++ b/meta/classes-recipe/testimage.bbclass @@ -26,7 +26,7 @@ TESTIMAGE_FAILED_QA_ARTIFACTS = "\ ${localstatedir}/log \ ${localstatedir}/volatile/log \ ${sysconfdir}/version \ - ${sysconfdir}/os-release" + ${nonarch_libdir}/os-release" # If some ptests are run and fail, retrieve corresponding directories TESTIMAGE_FAILED_QA_ARTIFACTS += "${@bb.utils.contains('DISTRO_FEATURES', 'ptest', '${libdir}/*/ptest', '', d)}"