autobuild: Split backup/restore testenvs out into separate job
authorTim Beale <timbeale@catalyst.net.nz>
Tue, 5 Feb 2019 02:17:03 +0000 (15:17 +1300)
committerStefan Metzmacher <metze@samba.org>
Tue, 5 Feb 2019 11:23:31 +0000 (12:23 +0100)
The samba-ad-dc-2 job was reaching its limits with the number of
testenvs and what the resource-limited CI machines can handle.
Samba processes were getting swapped out of memory, causing CI runs
to fail.

This patch splits the backup/restore testenv targets into a separate
autobuild job: samba-ad-dc-backup.

Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Tue Feb  5 12:23:31 CET 2019 on sn-devel-144

.gitlab-ci.yml
script/autobuild.py

index 5cc21033f53ea87126a7f2ec60f01a3b322d3849..908c29ec9d95de5c88bacc6bf8ab09ba2e214944 100644 (file)
@@ -67,6 +67,11 @@ build_samba_ad_dc_2:
     # this one takes about 1 hours to finish
     - script/autobuild.py samba-ad-dc-2     --verbose --nocleanup --keeplogs --tail --testbase /tmp/samba-testbase
 
+build_samba_ad_dc_backup:
+  <<: *shared_template
+  script:
+    - script/autobuild.py samba-ad-dc-backup    --verbose --nocleanup --keeplogs --tail --testbase /tmp/samba-testbase
+
 build_samba_ad_dc_2_py2:
   <<: *shared_template
   script:
index 2ea9e55b932775b3b83097fcafe3d6783305d8db..00f0d2202a3d8b40741c37990afbe61f976c4b18 100755 (executable)
@@ -51,6 +51,7 @@ builddirs = {
     "samba-ad-dc-py2": ".",
     "samba-ad-dc-2": ".",
     "samba-ad-dc-2-py2": ".",
+    "samba-ad-dc-backup": ".",
     "samba-systemkrb5": ".",
     "samba-nopython": ".",
     "samba-buildpy2-only": ".",
@@ -166,6 +167,17 @@ tasks = {
                          "--include-env=vampire_2000_dc "
                          "--include-env=fl2000dc "
                          "--include-env=ad_dc_no_nss "
+                         "'",
+                         "text/plain"),
+                        ("check-clean-tree", "script/clean-source-tree.sh", "text/plain")],
+
+    # run the backup/restore testenvs separately as they're fairly standalone
+    # (and CI seems to max out at ~8 different DCs running at once)
+    "samba-ad-dc-backup": [("random-sleep", "script/random-sleep.sh 60 600", "text/plain"),
+                        ("configure", "./configure.developer --with-selftest-prefix=./bin/ab" + samba_configure_params, "text/plain"),
+                        ("make", "make -j", "text/plain"),
+                        ("test", "make test FAIL_IMMEDIATELY=1 "
+                         "TESTS='${PY3_ONLY}"
                          "--include-env=backupfromdc "
                          "--include-env=restoredc "
                          "--include-env=renamedc "