]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
CI: github: add an i686 job to the push job 20260422-i686-push-vtest flx04/20260422-i686-push-vtest
authorWilliam Lallemand <wlallemand@haproxy.com>
Mon, 20 Apr 2026 12:51:48 +0000 (14:51 +0200)
committerWilliam Lallemand <wlallemand@irq6.net>
Tue, 21 Apr 2026 22:33:20 +0000 (00:33 +0200)
Add an i686 job in order to run reg-tests on 32-bit architecture.

Use the i386 SSL and PCRE2 library provided by ubuntu.

VTest is still compiled in x86_64.

.github/matrix.py
.github/workflows/vtest.yml

index 0f9aae9e6de565dd3dc784bec5f074d4101185f7..b5eec8b5db5aa6ec23988a98f2e5e4eee4d8b92a 100755 (executable)
@@ -145,9 +145,11 @@ def main(ref_name):
     if is_stable:
         os = "ubuntu-24.04"         # stable branch
         os_arm = "ubuntu-24.04-arm" # stable branch
+        os_i686 = "ubuntu-24.04"    # stable branch
     else:
         os = "ubuntu-24.04"         # development branch
         os_arm = "ubuntu-24.04-arm" # development branch
+        os_i686 = "ubuntu-24.04"    # development branch
 
     TARGET = "linux-glibc"
     for CC in ["gcc", "clang"]:
@@ -335,6 +337,22 @@ def main(ref_name):
         }
     )
 
+    # i686
+
+    matrix.append(
+        {
+            "name": "{}, i686-linux-gnu-gcc".format(os_i686),
+            "os": os_i686,
+            "TARGET": "linux-glibc",
+            "CC": "i686-linux-gnu-gcc",
+            "FLAGS": [
+                "USE_OPENSSL=1",
+                "USE_PCRE2=1",
+                "USE_PCRE2_JIT=1",
+            ],
+        }
+    )
+
     # Print matrix
 
     print(json.dumps(matrix, indent=4, sort_keys=True))
index 49511e2da25e17a2b17a441c6e673c3ae2f0fa4a..5129cae3cddab9d06d4a8715fda18f7d4595ffac 100644 (file)
@@ -72,6 +72,9 @@ jobs:
       with:
         path: '~/opt-ot/'
         key: ${{ matrix.os }}-ot-${{ matrix.CC }}-${{ env.OT_CPP_VERSION }}-${{ contains(matrix.name, 'ASAN') }}
+    - name: Add i386 architecture
+      if: ${{ matrix.CC == 'i686-linux-gnu-gcc' }}
+      run: sudo dpkg --add-architecture i386
     - name: Install apt dependencies
       if: ${{ startsWith(matrix.os, 'ubuntu-') && matrix.TARGET != 'linux-musl' }}
       run: |
@@ -80,6 +83,7 @@ jobs:
           ${{ case(contains(matrix.FLAGS, 'USE_LUA=1'), 'liblua5.4-dev', '') }} \
           ${{ case(contains(matrix.FLAGS, 'USE_PCRE2=1'), 'libpcre2-dev', '') }} \
           ${{ case(contains(matrix.ssl, 'BORINGSSL=yes'), 'ninja-build', '') }} \
+          ${{ case(matrix.CC == 'i686-linux-gnu-gcc', 'gcc-i686-linux-gnu libc6-dev-i386-cross libssl-dev:i386 libpcre2-dev:i386', '') }} \
           socat \
           gdb \
           jose