diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 029284bfb5..eb48c9d1b4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -57,11 +57,11 @@ variables: # # This is done by running `ci-fairy generate-template` and possibly bumping # ".default_tag". - ALPINE_TAG: 'tag-7da44bbacc09' - CENTOS_TAG: 'tag-df11907da86a' - DEBIAN_TAG: 'tag-86a16c2d74d8' - FEDORA_TAG: 'tag-df11907da86a' - UBUNTU_TAG: 'tag-86a16c2d74d8' + ALPINE_TAG: 'tag-947df94197e7' + CENTOS_TAG: 'tag-2f354aa44865' + DEBIAN_TAG: 'tag-fb7953849851' + FEDORA_TAG: 'tag-2f354aa44865' + UBUNTU_TAG: 'tag-fb7953849851' ALPINE_EXEC: 'bash .gitlab-ci/alpine-install.sh' CENTOS_EXEC: 'bash .gitlab-ci/fedora-install.sh' @@ -391,6 +391,8 @@ t_fedora:39: - meson+clang - rpm+autotools - rpm+meson + - tarball+autotools + - tarball+meson - tarball - subtree variables: diff --git a/.gitlab-ci/ci.template b/.gitlab-ci/ci.template index 75606ec24d..f88c0a08a9 100644 --- a/.gitlab-ci/ci.template +++ b/.gitlab-ci/ci.template @@ -157,6 +157,8 @@ t_{{distro.name}}:{{version}}: - meson+clang - rpm+autotools - rpm+meson + - tarball+autotools + - tarball+meson - tarball - subtree {% endif %} diff --git a/.gitlab-ci/run-test.sh b/.gitlab-ci/run-test.sh index 758b8ada05..01f3b8bd10 100755 --- a/.gitlab-ci/run-test.sh +++ b/.gitlab-ci/run-test.sh @@ -63,6 +63,8 @@ check_run_assert() { meson+clang rpm+autotools rpm+meson + tarball+autotools + tarball+meson tarball subtree @@ -127,6 +129,42 @@ if check_run_clean tarball && [ "$NM_BUILD_TARBALL" = 1 ]; then do_clean fi +if check_run_clean tarball+autotools; then + BUILD_TYPE=autotools CC=gcc WITH_DOCS=1 CONFIGURE_ONLY=1 contrib/scripts/nm-ci-run.sh + pushd ./build + # dist & build with autotools + make distcheck -j$(nproc) + + # build with meson + DISTSRC="./distsrc-$RANDOM" + mkdir $DISTSRC + tar xvf ./NetworkManager-1*.tar.xz -C $DISTSRC --strip-components=1 + pushd $DISTSRC + BUILD_TYPE=meson CC=gcc WITH_DOCS=1 ../../contrib/scripts/nm-ci-run.sh + popd + popd + do_clean +fi + +if check_run_clean tarball+meson; then + BUILD_TYPE=meson CC=gcc WITH_DOCS=1 CONFIGURE_ONLY=1 contrib/scripts/nm-ci-run.sh + pushd ./build + # dist with meson + meson dist + + # build with autotools + DISTSRC="./distsrc-$RANDOM" + mkdir $DISTSRC + tar xvf ./meson-dist/NetworkManager-1*.tar.xz -C $DISTSRC --strip-components=1 + pushd $DISTSRC + BUILD_TYPE=autotools CC=gcc WITH_DOCS=1 ../../contrib/scripts/nm-ci-run.sh + popd + rm -rf $DISTSRC + popd + do_clean +fi + + ############################################################################### test_subtree() { diff --git a/contrib/scripts/nm-ci-run.sh b/contrib/scripts/nm-ci-run.sh index f9d7cf00a8..e385ef1e8d 100755 --- a/contrib/scripts/nm-ci-run.sh +++ b/contrib/scripts/nm-ci-run.sh @@ -191,24 +191,26 @@ run_autotools() { \ #end - make -j 6 - make install + if [ "$CONFIGURE_ONLY" != 1 ]; then + make -j 6 + make install - export NM_TEST_CLIENT_CHECK_L10N=1 + export NM_TEST_CLIENT_CHECK_L10N=1 - if ! make check -j 6 -k ; then - _print_test_logs "first-test" - echo ">>>> RUN SECOND TEST (start)" - NMTST_DEBUG="debug,TRACE,no-expect-message" make check -k || : - echo ">>>> RUN SECOND TEST (done)" - _print_test_logs "second-test" - die "autotools test failed" - fi + if ! make check -j 6 -k ; then + _print_test_logs "first-test" + echo ">>>> RUN SECOND TEST (start)" + NMTST_DEBUG="debug,TRACE,no-expect-message" make check -k || : + echo ">>>> RUN SECOND TEST (done)" + _print_test_logs "second-test" + die "autotools test failed" + fi - if _with_valgrind; then - if ! NMTST_USE_VALGRIND=1 make check -j 3 -k ; then - _print_test_logs "(valgrind test)" - die "autotools+valgrind test failed" + if _with_valgrind; then + if ! NMTST_USE_VALGRIND=1 make check -j 3 -k ; then + _print_test_logs "(valgrind test)" + die "autotools+valgrind test failed" + fi fi fi popd @@ -222,7 +224,7 @@ run_meson() { else _WITH_WERROR_VAL="" fi - meson build \ + meson setup build \ \ -Dprefix="$PWD/INST" \ \ @@ -262,21 +264,23 @@ run_meson() { export NM_TEST_CLIENT_CHECK_L10N=1 - ninja -C build -v - ninja -C build install + if [ "$CONFIGURE_ONLY" != 1 ]; then + ninja -C build -v + ninja -C build install - if ! meson test -C build -v --print-errorlogs ; then - echo ">>>> RUN SECOND TEST (start)" - NMTST_DEBUG="debug,TRACE,no-expect-message" \ - meson test -C build -v --print-errorlogs || : - echo ">>>> RUN SECOND TEST (done)" - die "meson test failed" - fi + if ! meson test -C build -v --print-errorlogs ; then + echo ">>>> RUN SECOND TEST (start)" + NMTST_DEBUG="debug,TRACE,no-expect-message" \ + meson test -C build -v --print-errorlogs || : + echo ">>>> RUN SECOND TEST (done)" + die "meson test failed" + fi - if _with_valgrind; then - if ! NMTST_USE_VALGRIND=1 meson test -C build -v --print-errorlogs ; then - _print_test_logs "(valgrind test)" - die "meson+valgrind test failed" + if _with_valgrind; then + if ! NMTST_USE_VALGRIND=1 meson test -C build -v --print-errorlogs ; then + _print_test_logs "(valgrind test)" + die "meson+valgrind test failed" + fi fi fi }