[OE-core] [PATCH] ifupdown: add ptest

Alexander Kanavin alex.kanavin at gmail.com
Tue Feb 4 20:50:53 UTC 2020


imagefeatures.py does set:

PREFERRED_PROVIDER_virtual/base-utils = "packagegroup-core-base-utils"
VIRTUAL-RUNTIME_base-utils = "packagegroup-core-base-utils"

which I believe does actually replace replace busybox with that
packagegroup in any image, as packagegroup-core-boot RDEPENDS on
VIRTUAL-RUNTIME_base-utils.

I'm not sure why imagefeatures.py only does 'bitbake("--graphviz
core-image-sato")' instead of building and booting that image properly, but
this is exactly the place where it should happen.

Alex

On Tue, 4 Feb 2020 at 10:25, Kang Kai <Kai.Kang at windriver.com> wrote:

> In imagefeatures.py, it just run 'bitbake -g core-image-sato' and
> doesn't really build and test RDEPENDS packages of
> packagegroup-core-base-utils.
>
> So for the packages in the RDEPENDS packages of
> packagegroup-core-base-utils but not in any image, they all are not be
> tested.
>
> I didn't find a proper recipe to place these recipes. Maybe a new image
> recipe need to be created.
>
> Regards,
> Kai
>
>
>
> >
> > Alex
> >
> >> On 3 Feb 2020, at 10.14, <kai.kang at windriver.com> <
> kai.kang at windriver.com> wrote:
> >>
> >> From: Kai Kang <kai.kang at windriver.com>
> >>
> >> Add ptest for ifupdown with its own test cases.
> >>
> >> [Yocto #13736]
> >>
> >> Signed-off-by: Kai Kang <kai.kang at windriver.com>
> >> ---
> >> meta/recipes-core/ifupdown/files/run-ptest    |  4 ++
> >> .../ifupdown/files/tweak-ptest-script.patch   | 49 +++++++++++++++++++
> >> meta/recipes-core/ifupdown/ifupdown_0.8.35.bb | 10 +++-
> >> 3 files changed, 62 insertions(+), 1 deletion(-)
> >> create mode 100644 meta/recipes-core/ifupdown/files/run-ptest
> >> create mode 100644
> meta/recipes-core/ifupdown/files/tweak-ptest-script.patch
> >>
> >> diff --git a/meta/recipes-core/ifupdown/files/run-ptest
> b/meta/recipes-core/ifupdown/files/run-ptest
> >> new file mode 100644
> >> index 0000000000..8694042392
> >> --- /dev/null
> >> +++ b/meta/recipes-core/ifupdown/files/run-ptest
> >> @@ -0,0 +1,4 @@
> >> +#!/bin/sh
> >> +
> >> +CURDIR=$(dirname `readlink -f $0`)
> >> +cd $CURDIR/tests && ./testbuild-linux
> >> diff --git a/meta/recipes-core/ifupdown/files/tweak-ptest-script.patch
> b/meta/recipes-core/ifupdown/files/tweak-ptest-script.patch
> >> new file mode 100644
> >> index 0000000000..d7600cf243
> >> --- /dev/null
> >> +++ b/meta/recipes-core/ifupdown/files/tweak-ptest-script.patch
> >> @@ -0,0 +1,49 @@
> >> +Tweak tests of ifupdown to make it work with oe-core ptest framework.
> >> +
> >> +Upstream-Status: Inappropriate [oe-core specific]
> >> +
> >> +Signed-off-by: Kai Kang <kai.kang at windriver.com>
> >> +
> >> +diff --git a/tests/testbuild-linux b/tests/testbuild-linux
> >> +index 1181ea0..d5c1814 100755
> >> +--- a/tests/testbuild-linux
> >> ++++ b/tests/testbuild-linux
> >> +@@ -1,6 +1,7 @@
> >> + #!/bin/sh -e
> >> +
> >> +-dir=tests/linux
> >> ++curdir=$(dirname `readlink -f $0`)
> >> ++dir=$curdir/linux
> >> +
> >> + result=true
> >> + for test in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18; do
> >> +@@ -12,7 +13,7 @@ for test in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
> 17 18; do
> >> +         echo "Testcase $test: $args"
> >> +
> >> +    exitcode=0
> >> +-        ./ifup -v --no-act-commands --force -i $dir/testcase.$test
> --state-dir=$dir/state.$test $args \
> >> ++        ifup -v --no-act-commands --force -i $dir/testcase.$test
> --state-dir=$dir/state.$test $args \
> >> +                 >$dir/up-res-out.$test 2>$dir/up-res-err.$test ||
> exitcode=$?
> >> +
> >> +         (echo "exit code: $exitcode";
> >> +@@ -20,7 +21,7 @@ for test in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
> 17 18; do
> >> +          echo "====stderr===="; cat $dir/up-res-err.$test) >
> $dir/up-res.$test
> >> +
> >> +    exitcode=0
> >> +-        ./ifdown -v --no-act-commands --force -i $dir/testcase.$test
> --state-dir=$dir/state.$test $args \
> >> ++        ifdown -v --no-act-commands --force -i $dir/testcase.$test
> --state-dir=$dir/state.$test $args \
> >> +                >$dir/down-res-out.$test 2>$dir/down-res-err.$test ||
> exitcode=$?
> >> +
> >> +         (echo "exit code: $exitcode";
> >> +@@ -28,9 +29,9 @@ for test in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
> 17 18; do
> >> +          echo "====stderr===="; cat $dir/down-res-err.$test) >
> $dir/down-res.$test
> >> +
> >> +         if diff -ub $dir/up.$test $dir/up-res.$test && diff -ub
> $dir/down.$test $dir/down-res.$test; then
> >> +-                echo "(okay)"
> >> ++                echo "PASS: $test"
> >> +         else
> >> +-                echo "(failed)"
> >> ++                echo "FAIL: $test"
> >> +                 result=false
> >> +         fi
> >> +         echo "=========="
> >> diff --git a/meta/recipes-core/ifupdown/ifupdown_0.8.35.bb
> b/meta/recipes-core/ifupdown/ifupdown_0.8.35.bb
> >> index 0de97fe372..53cb971d33 100644
> >> --- a/meta/recipes-core/ifupdown/ifupdown_0.8.35.bb
> >> +++ b/meta/recipes-core/ifupdown/ifupdown_0.8.35.bb
> >> @@ -11,13 +11,15 @@ SRC_URI = "git://
> salsa.debian.org/debian/ifupdown.git;protocol=https \
> >>             file://99_network \
> >>             file://0001-Define-FNM_EXTMATCH-for-musl.patch \
> >>
>  file://0001-Makefile-do-not-use-dpkg-for-determining-OS-type.patch \
> >> +           file://run-ptest \
> >> +           ${@bb.utils.contains('DISTRO_FEATURES', 'ptest',
> 'file://tweak-ptest-script.patch', '', d)} \
> >>             "
> >> SRCREV = "4af76318cfc57f8e4a44d357104188666213bd4b"
> >>
> >> S = "${WORKDIR}/git"
> >>
> >>
> >> -inherit update-alternatives
> >> +inherit ptest update-alternatives
> >>
> >> do_compile () {
> >>     chmod a+rx *.pl *.sh
> >> @@ -40,6 +42,12 @@ do_install () {
> >>     cd ${D}${mandir}/man8 && ln -s ifup.8 ifdown.8
> >> }
> >>
> >> +do_install_ptest () {
> >> +    install -d ${D}${PTEST_PATH}/tests
> >> +    cp -r ${S}/tests/testbuild-linux ${D}${PTEST_PATH}/tests/
> >> +    cp -r ${S}/tests/linux ${D}${PTEST_PATH}/tests/
> >> +}
> >> +
> >> ALTERNATIVE_PRIORITY = "100"
> >> ALTERNATIVE_${PN} = "ifup ifdown"
> >>
> >> --
> >> 2.17.1
> >>
> >> --
> >> _______________________________________________
> >> Openembedded-core mailing list
> >> Openembedded-core at lists.openembedded.org
> >> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
>
> --
> Kai Kang
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20200204/83e6c630/attachment.html>


More information about the Openembedded-core mailing list