[Tarantool-patches] [PATCH luajit 1/2] ci: change runner dispatch for LuaJIT testing

Igor Munkin imun at tarantool.org
Thu Jan 12 17:51:36 MSK 2023


Before the patch the all LuaJIT testing jobs were dispatched to the
runner with the name given via strategy matrix <RUNNER> entry. However,
more convenient way for dispatching is the triplet of the following
labels:
* <matrix.ARCH> to specify the host architecture (i.e. x86_64 or ARM64)
* <matrix.OS> to specify the OS family name (either Linux or macOS)
* 'self-hosted' to make job dispatch only to the runners from Tarantool
  ghacts-shared-* pool and never choose GitHub public resources.

With the given triplet the proper runner is chosen for the particular
testing flavor.

Moreover, the new 'lightweight' and 'regular' labels are also used in
<runs-on> list, since the new "lightweight" runners have been introduced
to ghacts-shared-* pool. There are a couple of LuaJIT tests that
requires more memory than provided by "lightweight" runners, so only
"regular" ones need to be chosen for full LuaJIT testing. At the same
time there is no need to use "regular" runner for LuaJIT Static analysis
workflow, hence 'lightweight' label is added to <runs-on> list in
lint.yml workflow file.

Signed-off-by: Igor Munkin <imun at tarantool.org>
---
 .github/workflows/gnumake-builds-testing.yml | 20 ++------------------
 .github/workflows/lint.yml                   |  2 +-
 .github/workflows/testing.yml                | 20 ++------------------
 3 files changed, 5 insertions(+), 37 deletions(-)

diff --git a/.github/workflows/gnumake-builds-testing.yml b/.github/workflows/gnumake-builds-testing.yml
index ad9d5015..e5f82780 100644
--- a/.github/workflows/gnumake-builds-testing.yml
+++ b/.github/workflows/gnumake-builds-testing.yml
@@ -38,22 +38,6 @@ jobs:
         GC64: [ON, OFF]
         OS: [Linux, macOS]
         include:
-          - ARCH: ARM64
-            OS: Linux
-            NAME: Linux/aarch64
-            RUNNER: graviton
-          - ARCH: x86_64
-            OS: Linux
-            NAME: Linux/x86_64
-            RUNNER: ubuntu-20.04-self-hosted
-          - ARCH: ARM64
-            OS: macOS
-            NAME: macOS/M1
-            RUNNER: macos-11-m1
-          - ARCH: x86_64
-            OS: macOS
-            NAME: macOS/x86_64
-            RUNNER: macos-11
           - BUILDTYPE: Debug
             CMAKEFLAGS: -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_ASSERT=ON -DLUA_USE_APICHECK=ON
             MAKEBUILDFLAGS: -DLUA_USE_ASSERT -DLUA_USE_APICHECK
@@ -70,10 +54,10 @@ jobs:
             GC64: OFF
           - OS: macOS
             GC64: OFF
-    runs-on: [self-hosted, '${{ matrix.RUNNER }}']
+    runs-on: [self-hosted, regular, '${{ matrix.OS }}', '${{ matrix.ARCH }}']
     name: >
       LuaJIT
-      (${{ matrix.NAME }})
+      (${{ matrix.OS }}/${{ matrix.ARCH }})
       ${{ matrix.BUILDTYPE }}
       GC64:${{ matrix.GC64 }}
     steps:
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index e565144c..02150922 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -30,7 +30,7 @@ concurrency:
 
 jobs:
   test-luacheck:
-    runs-on: ubuntu-20.04-self-hosted
+    runs-on: [self-hosted, lightweight, Linux, x86_64]
     name: luacheck
     steps:
       - uses: actions/checkout at v2.3.4
diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml
index 958f8e27..5558e3ea 100644
--- a/.github/workflows/testing.yml
+++ b/.github/workflows/testing.yml
@@ -38,22 +38,6 @@ jobs:
         GC64: [ON, OFF]
         OS: [Linux, macOS]
         include:
-          - ARCH: ARM64
-            OS: Linux
-            NAME: Linux/aarch64
-            RUNNER: graviton
-          - ARCH: x86_64
-            OS: Linux
-            NAME: Linux/x86_64
-            RUNNER: ubuntu-20.04-self-hosted
-          - ARCH: ARM64
-            OS: macOS
-            NAME: macOS/M1
-            RUNNER: macos-11-m1
-          - ARCH: x86_64
-            OS: macOS
-            NAME: macOS/x86_64
-            RUNNER: macos-11
           - BUILDTYPE: Debug
             CMAKEFLAGS: -DCMAKE_BUILD_TYPE=Debug -DLUA_USE_ASSERT=ON -DLUA_USE_APICHECK=ON
           - BUILDTYPE: Release
@@ -63,10 +47,10 @@ jobs:
             GC64: OFF
           - OS: macOS
             GC64: OFF
-    runs-on: [self-hosted, '${{ matrix.RUNNER }}']
+    runs-on: [self-hosted, regular, '${{ matrix.OS }}', '${{ matrix.ARCH }}']
     name: >
       LuaJIT
-      (${{ matrix.NAME }})
+      (${{ matrix.OS }}/${{ matrix.ARCH }})
       ${{ matrix.BUILDTYPE }}
       GC64:${{ matrix.GC64 }}
     steps:
-- 
2.34.0



More information about the Tarantool-patches mailing list