From bd9357a2789f24ffb0b95805e598df399627e0c5 Mon Sep 17 00:00:00 2001 From: Thibault Charbonnier Date: Tue, 5 Mar 2024 10:26:09 -0800 Subject: [PATCH] chore(ci) add unit and clang-analyzer jobs with IPC --- .github/workflows/ci-large.yml | 6 +++++- .github/workflows/ci.yml | 24 ++++++++++++++++++++++-- .github/workflows/job-clang-analyzer.yml | 5 +++-- .github/workflows/job-unit-tests.yml | 9 +++++++-- .github/workflows/job-valgrind-tests.yml | 1 + 5 files changed, 38 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci-large.yml b/.github/workflows/ci-large.yml index 87aef14ce..0dec3d8bd 100644 --- a/.github/workflows/ci-large.yml +++ b/.github/workflows/ci-large.yml @@ -29,6 +29,8 @@ jobs: wasmtime: [14.0.3] wasmer: [3.1.1] v8: [12.0.267.17] + ipc: [no_ipc] + ssl: [ssl] debug: [debug, no_debug] hup: [hup, no_hup] module_type: [static, dynamic] @@ -40,9 +42,10 @@ jobs: openresty: 1.25.3.1 runtime: wasmtime wasmtime: 14.0.3 + ipc: no_ipc + ssl: ssl debug: debug hup: no_hup - ssl: ssl module_type: static uses: ./.github/workflows/job-unit-tests.yml with: @@ -54,6 +57,7 @@ jobs: wasmtime: ${{ matrix.wasmtime }} wasmer: ${{ matrix.wasmer }} v8: ${{ matrix.v8 }} + ipc: ${{ matrix.ipc }} ssl: ${{ matrix.ssl }} debug: ${{ matrix.debug }} hup: ${{ matrix.hup }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4bfeb4ac0..806b94bd9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,10 +39,11 @@ jobs: wasmtime: [""] wasmer: [3.1.1] v8: [""] + ipc: [no_ipc] ssl: [ssl] debug: [debug, no_debug] hup: [no_hup] - module_type: ["static"] + module_type: [static] include: # Wasmtime - runtime: wasmtime @@ -50,6 +51,7 @@ jobs: os: ubuntu-latest cc: gcc-12 ngx: 1.25.4 + ipc: no_ipc ssl: ssl debug: debug hup: hup @@ -59,6 +61,7 @@ jobs: os: ubuntu-latest cc: gcc-12 ngx: 1.25.4 + ipc: no_ipc ssl: ssl debug: debug hup: no_hup @@ -69,6 +72,7 @@ jobs: ngx: 1.21.6 runtime: wasmer wasmer: 3.1.1 + ipc: no_ipc ssl: ssl debug: debug hup: no_hup @@ -79,6 +83,7 @@ jobs: ngx: 1.25.4 runtime: wasmtime wasmtime: 14.0.3 + ipc: no_ipc ssl: ssl debug: debug hup: hup @@ -89,6 +94,7 @@ jobs: ngx: 1.25.4 runtime: wasmer wasmer: 3.1.1 + ipc: no_ipc ssl: no_ssl debug: no_debug hup: no_hup @@ -99,6 +105,7 @@ jobs: openresty: 1.25.3.1 runtime: wasmtime wasmtime: 14.0.3 + ipc: no_ipc ssl: ssl debug: debug hup: no_hup @@ -109,10 +116,22 @@ jobs: openresty: 1.25.3.1 runtime: wasmtime wasmtime: 14.0.3 + ipc: no_ipc ssl: ssl debug: debug hup: no_hup module_type: dynamic + # IPC + - label: ipc + os: ubuntu-latest + cc: gcc-12 + ngx: 1.25.4 + runtime: wasmtime + wasmtime: 14.0.3 + ipc: ipc + ssl: no_ssl + debug: debug + hup: no_hup uses: ./.github/workflows/job-unit-tests.yml with: os: ${{ matrix.os }} @@ -123,6 +142,7 @@ jobs: wasmtime: ${{ matrix.wasmtime }} wasmer: ${{ matrix.wasmer }} v8: ${{ matrix.v8 }} + ipc: ${{ matrix.ipc }} ssl: ${{ matrix.ssl }} debug: ${{ matrix.debug }} hup: ${{ matrix.hup }} @@ -142,7 +162,7 @@ jobs: with: github-token: ${{ secrets.GITHUB_TOKEN }} parallel-finished: true - carryforward: 'unit-ngx_1.25.4-wasmer-ssl-debug-no_hup-static,unit-ngx_1.25.4-wasmer-ssl-no_debug-no_hup-static,unit-ngx_1.25.4-wasmtime-ssl-debug-hup-static,unit-ngx_1.25.4-wasmtime-ssl-debug-hup-dynamic,unit-ngx_1.25.4-v8-ssl-debug-no_hup-static,unit-ngx_1.21.6-wasmer-ssl-debug-no_hup-static,unit-ngx_1.25.4-wasmer-no_ssl-no_debug-no_hup-static,unit-openresty_1.25.3.1-wasmtime-ssl-debug-no_hup-static,unit-openresty_1.25.3.1-wasmtime-ssl-debug-no_hup-dynamic' + carryforward: 'unit-ngx_1.25.4-wasmer-no_ipc-ssl-debug-no_hup-static,unit-ngx_1.25.4-wasmer-no_ipc-ssl-no_debug-no_hup-static,unit-ngx_1.25.4-wasmtime-no_ipc-ssl-debug-hup-static,unit-ngx_1.25.4-wasmtime-no_ipc-ssl-debug-hup-dynamic,unit-ngx_1.25.4-v8-no_ipc-ssl-debug-no_hup-static,unit-ngx_1.21.6-wasmer-no_ipc-ssl-debug-no_hup-static,unit-ngx_1.25.4-wasmer-no_ipc-no_ssl-no_debug-no_hup-static,unit-openresty_1.25.3.1-wasmtime-no_ipc-ssl-debug-no_hup-static,unit-openresty_1.25.3.1-wasmtime-no_ipc-ssl-debug-no_hup-dynamic,unit-ngx_1.25.4-wasmtime-ipc-no_ssl-debug-no_hup-static' valgrind: name: 'Valgrind' diff --git a/.github/workflows/job-clang-analyzer.yml b/.github/workflows/job-clang-analyzer.yml index 3df52c075..77ed135d2 100644 --- a/.github/workflows/job-clang-analyzer.yml +++ b/.github/workflows/job-clang-analyzer.yml @@ -24,10 +24,10 @@ on: v8: required: true type: string - debug: + ssl: required: true type: string - ssl: + debug: required: true type: string @@ -37,6 +37,7 @@ defaults: env: CC: ${{ inputs.cc }} + NGX_IPC: 1 NGX_BUILD_OPENRESTY: ${{ inputs.openresty }} NGX_BUILD_DEBUG: ${{ inputs.debug == 'debug' && 1 || 0 }} NGX_BUILD_SSL: ${{ inputs.ssl == 'ssl' && 1 || 0 }} diff --git a/.github/workflows/job-unit-tests.yml b/.github/workflows/job-unit-tests.yml index 1cd6cd605..d61e5b853 100644 --- a/.github/workflows/job-unit-tests.yml +++ b/.github/workflows/job-unit-tests.yml @@ -27,12 +27,15 @@ on: v8: required: true type: string - debug: + ipc: required: true type: string ssl: required: true type: string + debug: + required: true + type: string hup: required: true type: string @@ -51,6 +54,7 @@ defaults: env: CC: ${{ inputs.cc }} NGX: ${{ inputs.ngx }} + NGX_IPC: ${{ inputs.ipc == 'ipc' && 1 || 0 }} NGX_BUILD_OPENRESTY: ${{ inputs.openresty }} NGX_BUILD_GCOV: ${{ inputs.coverage && 1 || 0 }} NGX_BUILD_DEBUG: ${{ inputs.debug == 'debug' && 1 || 0 }} @@ -132,6 +136,7 @@ jobs: name="$name-ngx_${{ inputs.ngx }}" fi name="$name-${{ inputs.runtime }}" + name="$name-${{ inputs.ipc }}" name="$name-${{ inputs.ssl }}" name="$name-${{ inputs.debug }}" name="$name-${{ inputs.hup }}" @@ -161,7 +166,7 @@ jobs: - uses: actions/upload-artifact@v4 if: ${{ failure() && !env.ACT }} with: - name: ${{ github.job }}-sha-${{ github.sha }}-run-${{ github.run_number }}-${{ inputs.ngx != '' && format('nginx-{0}', inputs.ngx) || format('openresty-{0}', inputs.openresty) }}-${{ inputs.runtime }}-${{ inputs.module_type == 'dynamic' && 'dynamic' || 'static'}}-${{ inputs.ssl }}-${{ inputs.hup }}-${{ inputs.debug }} + name: ${{ github.job }}-sha-${{ github.sha }}-run-${{ github.run_number }}-${{ inputs.ngx != '' && format('nginx-{0}', inputs.ngx) || format('openresty-{0}', inputs.openresty) }}-${{ inputs.runtime }}-${{ inputs.module_type == 'dynamic' && 'dynamic' || 'static'}}-${{ inputs.ipc }}-${{ inputs.ssl }}-${{ inputs.debug }}-${{ inputs.hup }} path: | work/buildroot/ t/servroot* diff --git a/.github/workflows/job-valgrind-tests.yml b/.github/workflows/job-valgrind-tests.yml index e6e28a40a..4fd23bf1e 100644 --- a/.github/workflows/job-valgrind-tests.yml +++ b/.github/workflows/job-valgrind-tests.yml @@ -48,6 +48,7 @@ defaults: env: CC: ${{ inputs.cc }} NGX: ${{ inputs.ngx }} + NGX_IPC: 1 NGX_BUILD_OPENRESTY: ${{ inputs.openresty }} NGX_BUILD_GCOV: ${{ inputs.coverage && 1 || 0 }} NGX_BUILD_DEBUG: ${{ inputs.debug == 'debug' && 1 || 0 }}