Hello Petr, On Sun, 7 Mar 2021 11:27:11 +0100, Petr Štetiar <yn...@true.cz> wrote:
> Peter Seiderer <ps.rep...@gmx.net> [2021-03-06 11:54:49]: > > Hi, > > thanks a lot for your nice contribution! > > > My shell/bash seems to emit a more detailed failure message than > > expected. Fix this by complete avoiding the failure message using > > command substitution instead of direct command execution. > > This needs more work as it fails now on my development machine and it would > fail on CI as well[1]. > > You've two options to test your changes from the CI perspective. > > 1. Directly on GitLab > > - fork the https://gitlab.com/openwrt/project/libubox project under your > account > - push the changes to that forked repo of yours > - CI kicks in automatically and it will use GitLab resources to CI test the > changes > > 2. Locally with Docker container > > (these are basically the steps done on GitLab CI) > > $ git clone git://git.openwrt.org/project/libubox.git; cd libubox > $ wget -q https://gitlab.com/ynezz/openwrt-ci/raw/master/Makefile -O > Makefile.ci > $ make ci-prepare -f Makefile.ci > $ docker run --rm --tty --interactive \ > --volume $(pwd):/home/build/openwrt \ > --env CI_ENABLE_UNIT_TESTING=1 \ > registry.gitlab.com/ynezz/openwrt-ci/native-testing:latest \ > make ci-native-checks -f Makefile.ci > > That `ci-native-checks` target is pipeline[2] of following checks: > > ci-native-cppcheck - build with cppcheck static analyzer > ci-native-scan-build - build with clang's static analyzer > ci-native-build - build with gcc 8 9 10 and clang 10 > > - gcc 8/9/10 runs only compile(release,debug)/cram/shunit2 tests > - clang 10 runs sanitizer and fuzzer tests in addition to > compile(release,debug)/cram/shunit2 tests > Thanks for the detailed instructions, was able to reproduce the failure, seems it is a divergence between bash and dash (the default /bin/sh with ubuntu) and my workaround is not working with dash..., but I can fix the tests for my local run by explicit setting dash for the cram run (without breaking the docker one) by: diff --git a/tests/cram/CMakeLists.txt b/tests/cram/CMakeLists.txt index bebd821..89c868c 100644 --- a/tests/cram/CMakeLists.txt +++ b/tests/cram/CMakeLists.txt @@ -14,7 +14,7 @@ ADD_CUSTOM_TARGET(prepare-cram-venv ALL DEPENDS ${PYTHON_VENV_CRAM}) ADD_TEST( NAME cram - COMMAND ${PYTHON_VENV_CRAM} ${test_cases} + COMMAND ${PYTHON_VENV_CRAM} --shell /bin/dash ${test_cases} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ) Regards, Peter > 1. https://gitlab.com/ynezz/openwrt-libubox/-/jobs/1078074565#L1583 > 2. https://gitlab.com/ynezz/openwrt-ci/#available-make-targets > > Cheers, > > Petr > > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel