.gitlab-ci: make it explicit that some tests require ext4/5.15 kernel
authorStefan Metzmacher <metze@samba.org>
Thu, 14 Sep 2023 08:42:55 +0000 (10:42 +0200)
committerStefan Metzmacher <metze@samba.org>
Thu, 14 Sep 2023 17:56:30 +0000 (17:56 +0000)
This is better then requiring private runners,
as we'll be able to use shared runners for ext4 soon.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
.gitlab-ci-default-runners.yml
.gitlab-ci-main.yml

index 2dea6e82c49150af84bb1abe0dddaaca085b0539..f73f868d39c331b83089ae8fa47c74b047559e1b 100644 (file)
@@ -23,8 +23,8 @@
 #
 #
 # Our current private runner 'docker', 'samba-ci-private', 'shared' and
-# 'ubuntu1804'. It runs with an ubuntu1804 kernel and privides an ext4 filesystem
-# and similar RAM as the n1-standard-2 runners.
+# 'ubuntu2204'. It runs with an ubuntu2204 kernel (5.15) and provides an
+# ext4 filesystem and similar RAM as the n1-standard-2 runners.
 #
 
 .shared_runner_build:
index 5cb6f656663f9e0cd51390567da4b31fdf984631..99dd25e264c1334a49926c05f1901b9f167f6d30 100644 (file)
@@ -409,41 +409,64 @@ samba-codecheck:
       # settings -> CI/CD -> Environment variables
     - if: $SUPPORT_PRIVATE_TEST == "yes"
 
-.needs_samba-def-build-private:
+.needs_ext4_support:
+  # Our private runners provide an ext4 filesystem
+  extends: .private_test_only
+
+.needs_5_15_kernel:
+  # Our private runners are based on
+  # ubuntu2204 with a 5.15 kernel.
+  #
+  # And they also provide an ext4 filesystem
+  extends: .private_test_only
+
+.needs_samba-def-build-ext4:
   extends:
     - .needs_samba-def-build
-    - .private_test_only
+    - .needs_ext4_support
 
-.needs_samba-mit-build-private:
+.needs_samba-mit-build-ext4:
   extends:
     - .needs_samba-mit-build
-    - .private_test_only
+    - .needs_ext4_support
 
-.needs_samba-h5l-build-private:
+.needs_samba-h5l-build-ext4:
   extends:
     - .needs_samba-h5l-build
-    - .private_test_only
+    - .needs_ext4_support
 
-.needs_samba-without-smb1-build-private:
+.needs_samba-without-smb1-build-5_15:
+  # Currently this doesn't strictly
+  # require a kernel >= 5.15, but only
+  # ext4 support.
+  #
+  # But we want to make sure that
+  # our private runners keep working
+  # and at least do a single job.
+  #
+  # In future we'll be able to run
+  # tests with io_uring in this
+  # setup, which will requires a
+  # 5.15 kernel in order to be useful.
   extends:
     - .needs_samba-without-smb1-build
-    - .private_test_only
+    - .needs_5_15_kernel
 
-.needs_samba-nt4-build-private:
+.needs_samba-nt4-build-ext4:
   extends:
     - .needs_samba-nt4-build
-    - .private_test_only
+    - .needs_ext4_support
 
-.needs_samba-no-opath-build-private:
+.needs_samba-no-opath-build-ext4:
   extends:
     - .needs_samba-no-opath-build
-    - .private_test_only
+    - .needs_ext4_support
 
 samba-fileserver:
-  extends: .needs_samba-h5l-build-private
+  extends: .needs_samba-h5l-build-ext4
 
 samba-fileserver-without-smb1:
-  extends: .needs_samba-without-smb1-build-private
+  extends: .needs_samba-without-smb1-build-5_15
 
 # This is a full build without the AD DC so we test the build with MIT
 # Kerberos from the default system (Ubuntu 22.04 at this stage).
@@ -453,19 +476,19 @@ samba-ktest-mit:
  extends: .shared_template
 
 samba-ad-dc-1:
-  extends: .needs_samba-def-build-private
+  extends: .needs_samba-def-build-ext4
 
 samba-nt4:
-  extends: .needs_samba-nt4-build-private
+  extends: .needs_samba-nt4-build-ext4
 
 samba-addc-mit-1:
-  extends: .needs_samba-mit-build-private
+  extends: .needs_samba-mit-build-ext4
 
 samba-no-opath1:
-  extends: .needs_samba-no-opath-build-private
+  extends: .needs_samba-no-opath-build-ext4
 
 samba-no-opath2:
-  extends: .needs_samba-no-opath-build-private
+  extends: .needs_samba-no-opath-build-ext4
 
 # 'pages' is a special job which can publish artifacts in `public` dir to gitlab pages
 pages: