From 8557a52937e3a3319fa4bd9b18af792cee9ec528 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Fri, 11 Sep 2020 10:35:58 +1200 Subject: [PATCH] autobuild.py: Combine samba-static and samba-nopython We expect these will complete in under an hour and reduce the number of parallel jobs. Hopefully there will be some ccache hits between these as well. Signed-off-by: Andrew Bartlett Reviewed-by: Douglas Bagnall --- .gitlab-ci.yml | 8 ++------ script/autobuild.py | 40 +++++++++++++++++++++------------------- 2 files changed, 23 insertions(+), 25 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c9bc00c4ddf..6c2e0cabe9a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -133,7 +133,7 @@ samba: samba-mitkrb5: extends: .shared_template -samba-nopython: +samba-minimal-smbd: extends: .shared_template samba-nopython-py2: @@ -160,9 +160,6 @@ samba-ad-dc-6: samba-libs: extends: .shared_template -samba-static: - extends: .shared_template - samba-fuzz: extends: .shared_template image: ${SAMBA_CI_CONTAINER_REGISTRY}/samba-ci-ubuntu1604:${SAMBA_CI_CONTAINER_TAG} @@ -228,7 +225,6 @@ pages: - others - samba - samba-mitkrb5 - - samba-nopython - samba-nopython-py2 - samba-admem - samba-ad-dc-2 @@ -237,7 +233,7 @@ pages: - samba-ad-dc-5 - samba-ad-dc-6 - samba-libs - - samba-static + - samba-minimal-smbd - samba-fuzz # - ctdb # TODO - samba-ctdb diff --git a/script/autobuild.py b/script/autobuild.py index 0ab04eb7c26..926cf379a54 100755 --- a/script/autobuild.py +++ b/script/autobuild.py @@ -644,8 +644,26 @@ tasks = { ("allshared-make", "make -j"), ], - "samba-static": [ - ("random-sleep", random_sleep(1, 1)), + "samba-fuzz": [ + # build the fuzzers (static) via the oss-fuzz script + ("fuzzers-mkdir-prefix", "mkdir -p ${PREFIX_DIR}"), + ("fuzzers-build", "OUT=${PREFIX_DIR} LIB_FUZZING_ENGINE= SANITIZER=address CXX= CFLAGS= ./lib/fuzzing/oss-fuzz/build_samba.sh --enable-afl"), + ("fuzzers-check", "./lib/fuzzing/oss-fuzz/check_build.sh ${PREFIX_DIR}") + ], + + # * Test smbd and smbtorture can build semi-static + # + # * Test Samba without python still builds. + # + # When this test fails due to more use of Python, the expectations + # is that the newly failing part of the code should be disabled + # when --disable-python is set (rather than major work being done + # to support this environment). + # + # The target here is for vendors shipping a minimal smbd. + "samba-minimal-smbd": [ + ("random-sleep", random_sleep(300, 900)), + # build with all modules static ("allstatic-configure", "./configure.developer " + samba_configure_params + " --with-static-modules=ALL"), ("allstatic-make", "make -j"), @@ -660,24 +678,8 @@ tasks = { # retry with nonshared smbd and smbtorture ("nonshared-distclean", "make distclean"), ("nonshared-configure", "./configure.developer " + samba_configure_params + " --bundled-libraries=ALL --with-static-modules=ALL --nonshared-binary=smbtorture,smbd/smbd"), - ("nonshared-make", "make -j") - ], + ("nonshared-make", "make -j"), - "samba-fuzz": [ - # build the fuzzers (static) via the oss-fuzz script - ("fuzzers-mkdir-prefix", "mkdir -p ${PREFIX_DIR}"), - ("fuzzers-build", "OUT=${PREFIX_DIR} LIB_FUZZING_ENGINE= SANITIZER=address CXX= CFLAGS= ./lib/fuzzing/oss-fuzz/build_samba.sh --enable-afl"), - ("fuzzers-check", "./lib/fuzzing/oss-fuzz/check_build.sh ${PREFIX_DIR}") - ], - - # Test Samba without python still builds. When this test fails - # due to more use of Python, the expectations is that the newly - # failing part of the code should be disabled when - # --disable-python is set (rather than major work being done to - # support this environment). The target here is for vendors - # shipping a minimal smbd. - "samba-nopython": [ - ("random-sleep", random_sleep(300, 900)), ("configure", "./configure.developer ${ENABLE_COVERAGE} ${PREFIX} --with-profiling-data --disable-python --without-ad-dc"), ("make", "make -j"), ("install", "make install"),