autobuild: Replace samba-buildpy2-only with samba-nopython-py2
authorTim Beale <timbeale@catalyst.net.nz>
Thu, 14 Feb 2019 23:17:49 +0000 (12:17 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Fri, 15 Feb 2019 03:35:23 +0000 (04:35 +0100)
For Samba 4.11, the minimum python2 functionality we will support (for
now, at least - we may change our minds) is for the --disable-python
target, i.e. if you're excluding all the python functionality from
samba, then WAF should still support being built with python2.

The use case here is old unix platforms that want to use smbd, but don't
have python3 support.

Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
.gitlab-ci.yml
script/autobuild.py

index c11c9b5c00c4ac0ebff234f899a868718949672e..d999cf4693fa424f6c9d94a10f0fe16246fb1d1f 100644 (file)
@@ -64,6 +64,9 @@ samba-none-env:
 samba-nopython:
   extends: .shared_template
 
+samba-nopython-py2:
+  extends: .shared_template
+
 samba-systemkrb5:
   extends: .shared_template
 
@@ -92,9 +95,6 @@ ctdb:
 samba-ctdb:
   extends: .shared_template
 
-samba-buildpy2-only:
-  extends: .shared_template
-
 samba-ad-dc-ntvfs:
   extends: .shared_template
   # this one takes about 100 mins to finish
index 2d37cffbd5dae27cad943e2ef412a4aeea59dcb0..91098f51074ac47644a5a3c1908514c5ec262ccf 100755 (executable)
@@ -50,7 +50,7 @@ builddirs = {
     "samba-ad-dc-backup": ".",
     "samba-systemkrb5": ".",
     "samba-nopython": ".",
-    "samba-buildpy2-only": ".",
+    "samba-nopython-py2": ".",
     "ldb": "lib/ldb",
     "tdb": "lib/tdb",
     "talloc": "lib/talloc",
@@ -337,7 +337,38 @@ tasks = {
                       ("libs-clean", "make clean", "text/plain")
                       ],
 
+    # check we can do the same thing using python2
+    "samba-nopython-py2": [
+                      ("random-sleep", "script/random-sleep.sh 60 600", "text/plain"),
+                      ("configure", "PYTHON=python2 ./configure.developer --picky-developer ${PREFIX} --with-profiling-data --disable-python --without-ad-dc", "text/plain"),
+                      ("make", "PYTHON=python2 make -j", "text/plain"),
+                      ("install", "PYTHON=python2 make install", "text/plain"),
+                      ("check-clean-tree", "script/clean-source-tree.sh", "text/plain"),
+                      ("clean", "PYTHON=python2 make clean", "text/plain"),
+
+                      ("talloc-configure", "cd lib/talloc && PYTHON=python2 " + samba_libs_configure_base + " --bundled-libraries=cmocka,NONE --disable-python", "text/plain"),
+                      ("talloc-make", "cd lib/talloc && PYTHON=python2 make", "text/plain"),
+                      ("talloc-install", "cd lib/talloc && PYTHON=python2 make install", "text/plain"),
 
+                      ("tdb-configure", "cd lib/tdb && PYTHON=python2 " + samba_libs_configure_base + " --bundled-libraries=cmocka,NONE --disable-python", "text/plain"),
+                      ("tdb-make", "cd lib/tdb && PYTHON=python2 make", "text/plain"),
+                      ("tdb-install", "cd lib/tdb && PYTHON=python2 make install", "text/plain"),
+
+                      ("tevent-configure", "cd lib/tevent && PYTHON=python2 " + samba_libs_configure_base + " --bundled-libraries=cmocka,NONE --disable-python", "text/plain"),
+                      ("tevent-make", "cd lib/tevent && PYTHON=python2 make", "text/plain"),
+                      ("tevent-install", "cd lib/tevent && PYTHON=python2 make install", "text/plain"),
+
+                      ("ldb-configure", "cd lib/ldb && PYTHON=python2 " + samba_libs_configure_base + " --bundled-libraries=cmocka,NONE --disable-python", "text/plain"),
+                      ("ldb-make", "cd lib/ldb && PYTHON=python2 make", "text/plain"),
+                      ("ldb-install", "cd lib/ldb && PYTHON=python2 make install", "text/plain"),
+
+                      # retry against installed library packages
+                      ("libs-configure", "PYTHON=python2 " + samba_libs_configure_base + samba_libs_configure_bundled_libs + " --disable-python --without-ad-dc", "text/plain"),
+                      ("libs-make", "PYTHON=python2 make -j", "text/plain"),
+                      ("libs-install", "PYTHON=python2 make install", "text/plain"),
+                      ("libs-check-clean-tree", "script/clean-source-tree.sh", "text/plain"),
+                      ("libs-clean", "PYTHON=python2 make clean", "text/plain")
+                      ],
 
     "ldb": [
               ("random-sleep", "../../script/random-sleep.sh 60 600", "text/plain"),
@@ -403,13 +434,6 @@ tasks = {
         ("check-clean-tree", "../script/clean-source-tree.sh", "text/plain"),
         ("clean", "make clean", "text/plain")],
 
-    "samba-buildpy2-only": [("random-sleep", "script/random-sleep.sh 60 600", "text/plain"),
-                   ("configure", "PYTHON='python' ./configure.developer --with-selftest-prefix=./bin/ab " + samba_configure_params, "text/plain"),
-                   ("make", "PYTHON='python' make -j", "text/plain"),
-                   ("install", "PYTHON='python' make install", "text/plain"),
-                   ("check-clean-tree", "script/clean-source-tree.sh", "text/plain"),
-                   ("clean", "PYTHON='python' make clean", "text/plain")],
-
 
     # these are useful for debugging autobuild
     'pass': [("pass", 'echo passing && /bin/true', "text/plain")],