diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c92ed185b..f9c55e18c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,20 +41,21 @@ jobs: v8: [""] ipc: [no_ipc] ssl: [ssl] - debug: [debug, no_debug] + #debug: [debug, no_debug] + debug: [debug] hup: [no_hup] module_type: [static] include: # Wasmtime - - runtime: wasmtime - wasmtime: 19.0.0 - os: ubuntu-latest - cc: gcc-12 - ngx: 1.25.5 - ipc: no_ipc - ssl: ssl - debug: debug - hup: hup + #- runtime: wasmtime + # wasmtime: 19.0.0 + # os: ubuntu-latest + # cc: gcc-12 + # ngx: 1.25.5 + # ipc: no_ipc + # ssl: ssl + # debug: debug + # hup: hup # V8 - runtime: v8 v8: 12.0.267.17 @@ -66,72 +67,72 @@ jobs: debug: debug hup: no_hup # Old Nginx - - label: old_nginx - os: ubuntu-latest - cc: gcc-12 - ngx: 1.21.6 - runtime: wasmer - wasmer: 3.1.1 - ipc: no_ipc - ssl: ssl - debug: debug - hup: no_hup - # Nginx + dynamic ngx_wasmx_module + HUP - - label: dynamic_nginx - os: ubuntu-latest - cc: gcc-12 - ngx: 1.25.5 - runtime: wasmtime - wasmtime: 19.0.0 - ipc: no_ipc - ssl: ssl - debug: debug - hup: hup - module_type: dynamic - # No SSL - - os: ubuntu-latest - cc: gcc-12 - ngx: 1.25.5 - runtime: wasmer - wasmer: 3.1.1 - ipc: no_ipc - ssl: no_ssl - debug: no_debug - hup: no_hup - # OpenResty - - label: openresty - os: ubuntu-latest - cc: gcc-12 - openresty: 1.25.3.1 - runtime: wasmtime - wasmtime: 19.0.0 - ipc: no_ipc - ssl: ssl - debug: debug - hup: no_hup + #- label: old_nginx + # os: ubuntu-latest + # cc: gcc-12 + # ngx: 1.21.6 + # runtime: wasmer + # wasmer: 3.1.1 + # ipc: no_ipc + # ssl: ssl + # debug: debug + # hup: no_hup + ## Nginx + dynamic ngx_wasmx_module + HUP + #- label: dynamic_nginx + # os: ubuntu-latest + # cc: gcc-12 + # ngx: 1.25.5 + # runtime: wasmtime + # wasmtime: 19.0.0 + # ipc: no_ipc + # ssl: ssl + # debug: debug + # hup: hup + # module_type: dynamic + ## No SSL + #- os: ubuntu-latest + # cc: gcc-12 + # ngx: 1.25.5 + # runtime: wasmer + # wasmer: 3.1.1 + # ipc: no_ipc + # ssl: no_ssl + # debug: no_debug + # hup: no_hup + ## OpenResty + #- label: openresty + # os: ubuntu-latest + # cc: gcc-12 + # openresty: 1.25.3.1 + # runtime: wasmtime + # wasmtime: 19.0.0 + # ipc: no_ipc + # ssl: ssl + # debug: debug + # hup: no_hup # OpenResty + dynamic ngx_wasmx_module - - label: dynamic_openresty - os: ubuntu-latest - cc: gcc-12 - openresty: 1.25.3.1 - runtime: wasmtime - wasmtime: 19.0.0 - 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.5 - runtime: wasmtime - wasmtime: 19.0.0 - ipc: ipc - ssl: no_ssl - debug: debug - hup: no_hup + #- label: dynamic_openresty + # os: ubuntu-latest + # cc: gcc-12 + # openresty: 1.25.3.1 + # runtime: wasmtime + # wasmtime: 19.0.0 + # 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.5 + # runtime: wasmtime + # wasmtime: 19.0.0 + # ipc: ipc + # ssl: no_ssl + # debug: debug + # hup: no_hup uses: ./.github/workflows/job-unit-tests.yml with: os: ${{ matrix.os }} diff --git a/.github/workflows/job-unit-tests.yml b/.github/workflows/job-unit-tests.yml index d61e5b853..9a9d63299 100644 --- a/.github/workflows/job-unit-tests.yml +++ b/.github/workflows/job-unit-tests.yml @@ -118,9 +118,18 @@ jobs: os: ${{ inputs.os }} ghcr_username: ${{ github.repository_owner }} ghcr_password: ${{ secrets.TOKEN_GITHUB }} + - name: Setup coredumps location + run: | + #mkdir $GITHUB_WORKSPACE/coredumps + #sudo bash -c 'echo "$GITHUB_WORKSPACE/coredumps/%e.%p.%t" > /proc/sys/kernel/core_pattern' + sudo mkdir /coredumps + sudo chmod 777 /coredumps + sudo bash -c 'echo "/coredumps/%e.%p.%t" > /proc/sys/kernel/core_pattern' + ulimit -c unlimited - run: make setup - run: make - - run: make test + #- run: make test + - run: ./util/test.sh t/01-wasm/directives/001-module_directive.t - name: Run lcov id: lcov if: ${{ !env.ACT && inputs.coverage }} @@ -163,13 +172,26 @@ jobs: flags: unit - run: rm -f t/servroot/html/nginx.sock if: ${{ failure() && !env.ACT }} - - uses: actions/upload-artifact@v4 + - name: Prefix Upload + 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.ipc }}-${{ inputs.ssl }}-${{ inputs.debug }}-${{ inputs.hup }} path: | work/buildroot/ t/servroot* + - name: Executable Upload + uses: actions/upload-artifact@v4 + if: ${{ failure() && !env.ACT }} + with: + name: executable + path: work/buildroot/nginx + - name: Coredump Upload + uses: actions/upload-artifact@v4 + if: ${{ failure() && !env.ACT }} + with: + name: coredumps + path: /coredumps - name: Cleanup if: ${{ always() }} uses: ./.github/actions/cleanup diff --git a/t/01-wasm/directives/001-module_directive.t b/t/01-wasm/directives/001-module_directive.t index da998b47c..6440bf4b4 100644 --- a/t/01-wasm/directives/001-module_directive.t +++ b/t/01-wasm/directives/001-module_directive.t @@ -159,6 +159,7 @@ qr/\[emerg\] .*? \[wasm\] open\(\) ".*?none\.wat" failed \(2: No such file or di === TEST 10: module directive - no .wat bytes - v8 +--- ONLY --- skip_eval: 4: $::nginxV !~ m/v8/ --- main_config wasm {