diff --git a/.github/matrix.php b/.github/matrix.php index f3fb1fa7f031..2074ddb902f2 100644 --- a/.github/matrix.php +++ b/.github/matrix.php @@ -50,6 +50,7 @@ function get_current_version(): array { function select_jobs($repository, $trigger, $nightly, $labels, $php_version, $ref, $all_variations) { $no_jobs = in_array('CI: No jobs', $labels, true); $all_jobs = in_array('CI: All jobs', $labels, true) || $nightly; + $test_sapi_builds = in_array('CI: SAPI builds', $labels, true); $test_alpine = in_array('CI: Alpine', $labels, true); $test_benchmarking = in_array('CI: Benchmarking', $labels, true); $test_community = in_array('CI: Community', $labels, true); @@ -160,6 +161,11 @@ function select_jobs($repository, $trigger, $nightly, $labels, $php_version, $re ? ['zts' => [true, false]] : ['zts' => [false]]; } + if ($all_jobs || $test_sapi_builds) { + $jobs['APACHE_SAPI'] = true; + $jobs['LITESPEED_SAPI'] = true; + } + return $jobs; } diff --git a/.github/workflows/test-suite.yml b/.github/workflows/test-suite.yml index a9bb570f9212..cda8dead27e8 100644 --- a/.github/workflows/test-suite.yml +++ b/.github/workflows/test-suite.yml @@ -11,6 +11,45 @@ on: permissions: contents: read jobs: + APACHE_SAPI: + if: ${{ fromJson(inputs.branch).jobs.APACHE_SAPI }} + name: APACHE_SAPI + runs-on: ubuntu-${{ fromJson(inputs.branch).config.ubuntu_version }} + timeout-minutes: 30 + steps: + - name: git checkout + uses: actions/checkout@v6 + with: + ref: ${{ fromJson(inputs.branch).ref }} + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y autoconf bison build-essential libtool libtool-bin pkg-config re2c libxml2-dev apache2-dev apache2 + - name: Build Apache SAPI + run: | + ./buildconf --force + ./configure --enable-option-checking=fatal --disable-all --with-apxs2 + make -j2 + LITESPEED_SAPI: + if: ${{ fromJson(inputs.branch).jobs.LITESPEED_SAPI }} + name: LITESPEED_SAPI + runs-on: ubuntu-${{ fromJson(inputs.branch).config.ubuntu_version }} + timeout-minutes: 30 + steps: + - name: git checkout + uses: actions/checkout@v6 + with: + ref: ${{ fromJson(inputs.branch).ref }} + - name: Install dependencies + run: | + sudo apt-get update + sudo apt-get install -y autoconf bison build-essential libtool libtool-bin pkg-config re2c libxml2-dev + - name: Build LiteSpeed SAPI + run: | + ./buildconf --force + ./configure --enable-option-checking=fatal --disable-all --enable-litespeed + make -j2 + sapi/litespeed/lsphp -v LINUX_PPC64: if: ${{ fromJson(inputs.branch).jobs.LINUX_PPC64 }} name: LINUX_PPC64_ASAN_DEBUG_ZTS