On Thu, 2023-11-23 at 13:49 +0000, Eilís 'pidge' Ní Fhlannagáin wrote:
> This commit tests for
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=13419
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=14961
> 
> Fixes for these are in following commits.
> 
> Signed-off-by: Eilís 'pidge' Ní Fhlannagáin <[email protected]>
> ---
>  .../selftest-users/creategroup1.bb            | 32 +++++++++++++++++++
>  .../selftest-users/creategroup2.bb            | 32 +++++++++++++++++++
>  .../selftest-users/useraddbadtask.bb          | 20 ++++++++++++
>  .../lib/oeqa/selftest/cases/usergrouptests.py | 32 +++++++++++++++++++
>  4 files changed, 116 insertions(+)
>  create mode 100644 meta-selftest/recipes-test/selftest-users/creategroup1.bb
>  create mode 100644 meta-selftest/recipes-test/selftest-users/creategroup2.bb
>  create mode 100644 
> meta-selftest/recipes-test/selftest-users/useraddbadtask.bb
>  create mode 100644 meta/lib/oeqa/selftest/cases/usergrouptests.py
> 
> diff --git a/meta-selftest/recipes-test/selftest-users/creategroup1.bb 
> b/meta-selftest/recipes-test/selftest-users/creategroup1.bb
> new file mode 100644
> index 00000000000..2b0c443858c
> --- /dev/null
> +++ b/meta-selftest/recipes-test/selftest-users/creategroup1.bb
> @@ -0,0 +1,32 @@
> +SUMMARY = "creategroup pt 1"
> +LIC_FILES_CHKSUM = 
> "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
> +
> +LICENSE = "MIT"
> +
> +DEPENDS:append = "coreutils-native"
> +
> +S = "${WORKDIR}"
> +
> +inherit useradd allarch
> +
> +USERADD_PACKAGES = "${PN}"
> +USERADD_PARAM:${PN} = "-u 5555 --gid grouptest gt1"
> +GROUPADD_PARAM:${PN} = "-r grouptest"
> +
> +TESTDIR = "${D}${sysconfdir}/creategroup"
> +
> +do_install() {
> +     install -d   ${TESTDIR}
> +     install -d   ${TESTDIR}/dir
> +     touch        ${TESTDIR}/file
> +     ln -s ./file ${TESTDIR}/symlink
> +     install -d   ${TESTDIR}/fifotest
> +     mkfifo       ${TESTDIR}/fifotest/fifo
> +    which chown
> +     chown    gt1:grouptest ${TESTDIR}/file
> +     chown -R gt1:grouptest ${TESTDIR}/dir
> +     chown -h gt1:grouptest ${TESTDIR}/symlink
> +     chown -R gt1:grouptest ${TESTDIR}/fifotest
> +}
> +
> +FILES:${PN} = "${sysconfdir}/creategroup/*"
> diff --git a/meta-selftest/recipes-test/selftest-users/creategroup2.bb 
> b/meta-selftest/recipes-test/selftest-users/creategroup2.bb
> new file mode 100644
> index 00000000000..6f25592c09f
> --- /dev/null
> +++ b/meta-selftest/recipes-test/selftest-users/creategroup2.bb
> @@ -0,0 +1,32 @@
> +SUMMARY = "creategroup pt 2"
> +LIC_FILES_CHKSUM = 
> "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
> +
> +LICENSE = "MIT"
> +
> +DEPENDS:append = "coreutils-native creategroup1"
> +
> +S = "${WORKDIR}"
> +
> +inherit useradd allarch
> +
> +USERADD_PACKAGES = "${PN}"
> +USERADD_PARAM:${PN} = "-u 5556 --gid grouptest gt2"
> +
> +TESTDIR = "${D}${sysconfdir}/creategroup"
> +
> +do_install() {
> +     install -d   ${TESTDIR}
> +     install -d   ${TESTDIR}/dir
> +     touch        ${TESTDIR}/file
> +     ln -s ./file ${TESTDIR}/symlink
> +     install -d   ${TESTDIR}/fifotest
> +     mkfifo       ${TESTDIR}/fifotest/fifo
> +
> +     chown    gt2:grouptest ${TESTDIR}/file
> +     chown -R gt2:grouptest ${TESTDIR}/dir
> +     chown -h gt2:grouptest ${TESTDIR}/symlink
> +     chown -R gt2:grouptest ${TESTDIR}/fifotest
> +}
> +
> +FILES:${PN} = "${sysconfdir}/creategroup/*"
> +
> diff --git a/meta-selftest/recipes-test/selftest-users/useraddbadtask.bb 
> b/meta-selftest/recipes-test/selftest-users/useraddbadtask.bb
> new file mode 100644
> index 00000000000..99e04a80b34
> --- /dev/null
> +++ b/meta-selftest/recipes-test/selftest-users/useraddbadtask.bb
> @@ -0,0 +1,20 @@
> +SUMMARY = "UserAddBadTask"
> +LIC_FILES_CHKSUM = 
> "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
> +
> +LICENSE = "MIT"
> +
> +DEPENDS:append = "coreutils-native"
> +
> +S = "${WORKDIR}"
> +
> +inherit useradd allarch
> +
> +USERADD_PACKAGES = "${PN}"
> +USERADD_PARAM:${PN} = "-u 5555 --gid groupaddtask useraddtask"
> +GROUPADD_PARAM:${PN} = "-r groupaddtask"
> +
> +do_badthingshappen() {
> + echo "foo"
> +}
> +
> +addtask badthingshappen after do_populate_sysroot before do_package
> diff --git a/meta/lib/oeqa/selftest/cases/usergrouptests.py 
> b/meta/lib/oeqa/selftest/cases/usergrouptests.py
> new file mode 100644
> index 00000000000..14f7a0beab0
> --- /dev/null
> +++ b/meta/lib/oeqa/selftest/cases/usergrouptests.py
> @@ -0,0 +1,32 @@
> +#
> +# Copyright OpenEmbedded Contributors
> +#
> +# SPDX-License-Identifier: MIT
> +#
> +
> +from oeqa.selftest.case import OESelftestTestCase
> +from oeqa.utils.commands import bitbake, get_bb_var
> +import bb.utils
> +import os
> +
> +class UserGroupTests(OESelftestTestCase):
> +    def test_group_from_dep_package(self):
> +        self.logger.info("Building creategroup2")
> +        self.logger.info("Cleaning sstate for creategroup1 and creategroup2")
> +        bitbake(' creategroup1 creategroup2 -f -c cleansstate')

Unfortunately this test isn't safe for a shared sstate cache like we
have on the autobuilder since we should never use cleansstate there
without special handling (isolated cache). You would also never need -f
with clean*.

Instead you could do something like a "bitbake creategroup2 -C fetch"
if you always want it to rebuild.

Cheers,

Richard
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#191305): 
https://lists.openembedded.org/g/openembedded-core/message/191305
Mute This Topic: https://lists.openembedded.org/mt/102766835/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to