diff options
author | Jose Quaresma <quaresma.jose@gmail.com> | 2021-10-20 18:25:46 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-10-23 17:42:28 +0100 |
commit | 676757f1872058e83336577e5c768b7c70aea9f0 (patch) | |
tree | cbc854ceaf176eb669f45de63e543dbd7eb3196a /meta/classes/sstate.bbclass | |
parent | 700202afb1d435bac9ed096e1786bf1bee05b649 (diff) | |
download | poky-676757f1872058e83336577e5c768b7c70aea9f0.tar.gz |
sstate: fix touching files inside pseudo
running the 'id' command inside the sstate_create_package
function shows that this funcion run inside the pseudo:
uid=0(root) gid=0(root) groups=0(root)
The check for touch files [ ! -w ${SSTATE_PKG} ]
will always return true and the touch can fail
when the real user don't have permission or
in readonly filesystem.
As the documentation refers, the file test operator "-w"
check if the file has write permission (for the user running the test).
We can avoid this test running the touch and mask any return errors
that we have.
(From OE-Core rev: f6e7445c94443544e92fda97a017ce93393c5f84)
Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/sstate.bbclass')
-rw-r--r-- | meta/classes/sstate.bbclass | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index 5736474f4c..6e4eb09f8e 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass | |||
@@ -830,7 +830,7 @@ sstate_task_postfunc[dirs] = "${WORKDIR}" | |||
830 | sstate_create_package () { | 830 | sstate_create_package () { |
831 | # Exit early if it already exists | 831 | # Exit early if it already exists |
832 | if [ -e ${SSTATE_PKG} ]; then | 832 | if [ -e ${SSTATE_PKG} ]; then |
833 | [ ! -w ${SSTATE_PKG} ] || touch ${SSTATE_PKG} | 833 | touch ${SSTATE_PKG} 2>/dev/null || true |
834 | return | 834 | return |
835 | fi | 835 | fi |
836 | 836 | ||
@@ -865,7 +865,7 @@ sstate_create_package () { | |||
865 | else | 865 | else |
866 | rm $TFILE | 866 | rm $TFILE |
867 | fi | 867 | fi |
868 | [ ! -w ${SSTATE_PKG} ] || touch ${SSTATE_PKG} | 868 | touch ${SSTATE_PKG} 2>/dev/null || true |
869 | } | 869 | } |
870 | 870 | ||
871 | python sstate_sign_package () { | 871 | python sstate_sign_package () { |