1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Fix enabling of opcache in CI

Closes GH-21246
This commit is contained in:
Ilija Tovilo
2026-02-17 20:05:04 +01:00
parent 60718c7f43
commit 5150641f9a
4 changed files with 41 additions and 37 deletions

View File

@@ -3,6 +3,9 @@ inputs:
configurationParameters:
default: ''
required: false
skipSlow:
default: false
required: false
asan:
default: false
required: false
@@ -20,9 +23,9 @@ runs:
--enable-fpm \
--with-pdo-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pgsql \
--with-pdo-pgsql \
--with-pdo-sqlite \
${{ inputs.skipSlow == 'false' && '--with-pgsql' || '' }} \
${{ inputs.skipSlow == 'false' && '--with-pdo-pgsql' || '' }} \
${{ inputs.skipSlow == 'false' && '--with-pdo-sqlite' || '' }} \
--enable-intl \
--without-pear \
--enable-gd \
@@ -37,7 +40,7 @@ runs:
--enable-soap \
--enable-xmlreader \
--with-xsl \
--with-tidy \
${{ inputs.skipSlow == 'false' && '--with-tidy' || '' }} \
--enable-sysvsem \
--enable-sysvshm \
--enable-shmop \
@@ -54,14 +57,14 @@ runs:
--enable-calendar \
--enable-ftp \
--with-pspell=/usr \
--with-enchant=/usr \
${{ inputs.skipSlow == 'false' && '--with-enchant=/usr' || '' }} \
--with-kerberos \
--enable-sysvmsg \
--with-ffi \
--enable-zend-test \
--enable-dl-test=shared \
--with-ldap \
--with-ldap-sasl \
${{ inputs.skipSlow == 'false' && '--enable-dl-test=shared' || '' }} \
${{ inputs.skipSlow == 'false' && '--with-ldap' || '' }} \
${{ inputs.skipSlow == 'false' && '--with-ldap-sasl' || '' }} \
--with-password-argon2 \
--with-mhash \
--with-sodium \
@@ -72,16 +75,16 @@ runs:
--with-tcadb \
--with-lmdb \
--with-qdbm \
--with-snmp \
--with-unixODBC \
${{ inputs.skipSlow == 'false' && '--with-snmp' || '' }} \
${{ inputs.skipSlow == 'false' && '--with-unixODBC' || '' }} \
--with-imap \
--with-imap-ssl \
--with-pdo-odbc=unixODBC,/usr \
${{ inputs.skipSlow == 'false' && '--with-pdo-odbc=unixODBC,/usr' || '' }} \
$([ -d "/opt/oracle/instantclient" ] && echo '--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient') \
$([ -d "/opt/oracle/instantclient" ] && echo '--with-oci8=shared,instantclient,/opt/oracle/instantclient') \
--with-config-file-path=/etc \
--with-config-file-scan-dir=/etc/php.d \
--with-pdo-firebird \
--with-pdo-dblib \
${{ inputs.skipSlow == 'false' && '--with-pdo-firebird' || '' }} \
${{ inputs.skipSlow == 'false' && '--with-pdo-dblib' || '' }} \
--enable-werror \
${{ inputs.configurationParameters }}

View File

@@ -3,6 +3,9 @@ inputs:
runTestsParameters:
default: ''
required: false
enableOpcache:
default: 'false'
required: false
jitType:
default: 'disable'
required: false
@@ -37,6 +40,7 @@ runs:
fi
export SKIP_IO_CAPTURE_TESTS=1
sapi/cli/php run-tests.php -P -q ${{ inputs.runTestsParameters }} \
${{ inputs.enableOpcache == 'true' && '-d zend_extension=opcache.so -d opcache.enable_cli=1' }} \
-d opcache.jit=${{ inputs.jitType }} \
-d opcache.jit_buffer_size=16M \
${{ inputs.idleCpu == 'true' && '-j$(($(/usr/bin/nproc) - 1))' || '-j$(/usr/bin/nproc)' }} \

View File

@@ -3,6 +3,9 @@ inputs:
runTestsParameters:
default: ''
required: false
enableOpcache:
default: 'false'
required: false
jitType:
default: 'disable'
required: false
@@ -15,6 +18,7 @@ runs:
export SKIP_IO_CAPTURE_TESTS=1
export CI_NO_IPV6=1
sapi/cli/php run-tests.php -P -q ${{ inputs.runTestsParameters }} \
${{ inputs.enableOpcache == 'true' && '-d zend_extension=opcache.so -d opcache.enable_cli=1' }} \
-d opcache.jit=${{ inputs.jitType }} \
-d opcache.jit_buffer_size=16M \
-j$(($(sysctl -n hw.ncpu) - 1)) \

View File

@@ -90,10 +90,10 @@ jobs:
- name: Test Tracing JIT
uses: ./.github/actions/test-alpine
with:
enableOpcache: true
jitType: tracing
runTestsParameters: >-
--asan -x
-d opcache.enable_cli=1
- name: Extra tests
uses: ./.github/actions/extra-tests
LINUX_X64:
@@ -185,33 +185,33 @@ jobs:
- name: Test Tracing JIT
uses: ./.github/actions/test-linux
with:
enableOpcache: true
jitType: tracing
runTestsParameters: >-
${{ matrix.asan && '--asan' || '' }}
${{ (matrix.asan && !inputs.all_variations) && '-x' || '' }}
${{ matrix.repeat && '--repeat 2' || '' }}
${{ matrix.variation && '-d zend_test.observer.enabled=1 -d zend_test.observer.show_output=0' || '' }}
-d opcache.enable_cli=1
- name: Test OpCache
if: ${{ inputs.all_variations }}
uses: ./.github/actions/test-linux
with:
enableOpcache: true
runTestsParameters: >-
${{ matrix.asan && '--asan' || '' }}
${{ matrix.repeat && '--repeat 2' || '' }}
${{ matrix.variation && '-d zend_test.observer.enabled=1 -d zend_test.observer.show_output=0' || '' }}
-d opcache.enable_cli=1
- name: Test Function JIT
# ASAN frequently timeouts. Each test run takes ~90 minutes, we can
# avoid running into the 6 hour timeout by skipping the function JIT.
if: ${{ inputs.all_variations && !matrix.asan }}
uses: ./.github/actions/test-linux
with:
enableOpcache: true
jitType: function
runTestsParameters: >-
${{ matrix.repeat && '--repeat 2' || '' }}
${{ matrix.variation && '-d zend_test.observer.enabled=1 -d zend_test.observer.show_output=0' || '' }}
-d opcache.enable_cli=1
- name: Extra tests
uses: ./.github/actions/extra-tests
- name: Verify generated files are up to date
@@ -282,22 +282,19 @@ jobs:
- name: Test Tracing JIT
uses: ./.github/actions/test-linux
with:
enableOpcache: true
jitType: tracing
runTestsParameters: >-
-d opcache.enable_cli=1
- name: Test OpCache
if: ${{ inputs.all_variations }}
uses: ./.github/actions/test-linux
with:
runTestsParameters: >-
-d opcache.enable_cli=1
enableOpcache: true
- name: Test Function JIT
if: ${{ inputs.all_variations }}
uses: ./.github/actions/test-linux
with:
enableOpcache: true
jitType: function
runTestsParameters: >-
-d opcache.enable_cli=1
- name: Extra tests
uses: ./.github/actions/extra-tests
MACOS:
@@ -340,22 +337,19 @@ jobs:
if: ${{ matrix.arch == 'X64' || !matrix.zts }}
uses: ./.github/actions/test-macos
with:
enableOpcache: true
jitType: tracing
runTestsParameters: >-
-d opcache.enable_cli=1
- name: Test OpCache
if: ${{ inputs.all_variations || (matrix.arch == 'ARM64' && matrix.zts) }}
uses: ./.github/actions/test-macos
with:
runTestsParameters: >-
-d opcache.enable_cli=1
enableOpcache: true
- name: Test Function JIT
if: ${{ inputs.all_variations && (matrix.arch == 'X64' || !matrix.zts) }}
uses: ./.github/actions/test-macos
with:
enableOpcache: true
jitType: function
runTestsParameters: >-
-d opcache.enable_cli=1
- name: Extra tests
uses: ./.github/actions/extra-tests
- name: Verify generated files are up to date
@@ -411,9 +405,8 @@ jobs:
- name: Test OpCache
uses: ./.github/actions/test-linux
with:
enableOpcache: true
jitType: tracing
runTestsParameters: >-
-d opcache.enable_cli=1
- uses: codecov/codecov-action@v5
if: ${{ !cancelled() }}
with:
@@ -655,34 +648,34 @@ jobs:
- name: Test File Cache (prime shm)
uses: ./.github/actions/test-linux
with:
enableOpcache: true
runTestsParameters: >-
-d opcache.enable_cli=1
--file-cache-prime
- name: Test File Cache (prime shm, use shm)
uses: ./.github/actions/test-linux
with:
enableOpcache: true
runTestsParameters: >-
-d opcache.enable_cli=1
--file-cache-use
- name: Test File Cache (prime shm, use file)
uses: ./.github/actions/test-linux
with:
enableOpcache: true
runTestsParameters: >-
-d opcache.enable_cli=1
--file-cache-use
-d opcache.file_cache_only=1
- name: Test File Cache Only (prime)
uses: ./.github/actions/test-linux
with:
enableOpcache: true
runTestsParameters: >-
-d opcache.enable_cli=1
--file-cache-prime
-d opcache.file_cache_only=1
- name: Test File Cache Only (use)
uses: ./.github/actions/test-linux
with:
enableOpcache: true
runTestsParameters: >-
-d opcache.enable_cli=1
--file-cache-use
-d opcache.file_cache_only=1
- name: Verify generated files are up to date
@@ -769,9 +762,9 @@ jobs:
- name: Test Opcache
uses: ./.github/actions/test-linux
with:
enableOpcache: true
runTestsParameters: >-
--msan
-d opcache.enable_cli=1
- name: Verify generated files are up to date
uses: ./.github/actions/verify-generated-files
LIBMYSQLCLIENT: