Make WordPress Core

Changeset 63894


Ignore:
Timestamp:
09/23/2026 04:20:32 PM (4 weeks ago)
Author:
lancewillett
Message:

Build/Test Tools: Trim PHPUnit runs in 6.8.

Keep boundary PHP versions and a reduced database matrix for routine runs. Restore the full PHP and database lists for dispatched runs and pull requests with the Full PHPUnit Matrix label.

Merges [63584], [63585], and [63779] to the 6.8 branch, adapted to its supported versions and scheduled dispatches.

Developed in: ​https://github.com/WordPress/wordpress-develop/pull/13640

Reviewed by: desrosj.
Props adrianmoldovanwp, desrosj, lucatume.
See #66071.
Fixes #66069.

Location:
branches/6.8
Files:
2 added
2 edited

Legend:

Unmodified
Added
Removed
  • branches/6.8

  • branches/6.8/.github/workflows/phpunit-tests.yml

    r62902 r63894  
    11name: PHPUnit Tests
     2run-name: PHPUnit Tests${{ ( github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || ( github.event_name == 'pull_request' && contains( github.event.pull_request.labels.*.name, 'Full PHPUnit Matrix' ) ) ) && ' (full matrix)' || '' }}
    23
    34on:
    … …  
    1213      - '3.[7-9]'
    1314      - '[4-9].[0-9]'
     15    # Keep these paths in sync with phpunit-tests-full-matrix.yml.
    1416    paths:
    1517      # Any change to a PHP, CSS, JavaScript, JSON, HTML, or otherwise tested file should run checks.
    … …  
    3032      # Confirm any changes to relevant workflow files.
    3133      - '.github/workflows/phpunit-tests.yml'
     34      - '.github/workflows/phpunit-tests-full-matrix.yml'
    3235      - '.github/workflows/reusable-phpunit-tests-*.yml'
    3336  workflow_dispatch:
     37  workflow_call:
     38    secrets:
     39      CODEVITALS_PROJECT_TOKEN:
     40        required: false
     41      CODECOV_TOKEN:
     42        required: false
     43      WPT_REPORT_API_KEY:
     44        required: false
     45      SLACK_GHA_SUCCESS_WEBHOOK:
     46        required: false
     47      SLACK_GHA_CANCELLED_WEBHOOK:
     48        required: false
     49      SLACK_GHA_FIXED_WEBHOOK:
     50        required: false
     51      SLACK_GHA_FAILURE_WEBHOOK:
     52        required: false
    3453  # Once weekly On Sundays at 00:00 UTC.
    3554  schedule:
    … …  
    6281      matrix:
    6382        os: [ ubuntu-24.04 ]
    64         php: [ '7.2', '7.4', '8.0', '8.4' ]
     83        php: [ '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4' ]
    6584        db-type: [ 'mysql' ]
    6685        db-version: [ '5.7', '8.0', '8.4' ]
    … …  
    6887        multisite: [ false, true ]
    6988        memcached: [ false ]
     89        # Dispatched runs and pull requests labeled 'Full PHPUnit Matrix' test every version above.
     90        # Other runs retain boundary PHP versions and the routine database versions below.
     91        full-matrix:
     92          - ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || ( github.event_name == 'pull_request' && contains( github.event.pull_request.labels.*.name, 'Full PHPUnit Matrix' ) ) }}
     93
     94        exclude:
     95          # Outside the full matrix, test the highest and lowest PHP version of each major.
     96          - full-matrix: false
     97            php: '7.3'
     98          - full-matrix: false
     99            php: '8.1'
     100          - full-matrix: false
     101            php: '8.2'
     102          - full-matrix: false
     103            php: '8.3'
    70104
    71105        include:
    … …  
    133167      matrix:
    134168        os: [ ubuntu-24.04 ]
    135         php: [ '7.2', '7.4', '8.0', '8.4' ]
     169        php: [ '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4' ]
    136170        db-type: [ 'mariadb' ]
    137171        db-version: [ '5.5', '10.3', '10.4', '10.5', '10.6', '10.11', '11.4' ]
    138172        multisite: [ false, true ]
    139173        memcached: [ false ]
     174        # Dispatched runs and pull requests labeled 'Full PHPUnit Matrix' test every version above.
     175        # Other runs retain boundary PHP versions and the routine database versions below.
     176        full-matrix:
     177          - ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || ( github.event_name == 'pull_request' && contains( github.event.pull_request.labels.*.name, 'Full PHPUnit Matrix' ) ) }}
     178
     179        exclude:
     180          # Outside the full matrix, test the highest and lowest PHP version of each major.
     181          - full-matrix: false
     182            php: '7.3'
     183          - full-matrix: false
     184            php: '8.1'
     185          - full-matrix: false
     186            php: '8.2'
     187          - full-matrix: false
     188            php: '8.3'
     189          # Keep these database versions in full runs only.
     190          - full-matrix: false
     191            db-version: '10.3'
     192          - full-matrix: false
     193            db-version: '10.4'
     194          - full-matrix: false
     195            db-version: '10.5'
    140196
    141197        include:
    … …  
    183239      matrix:
    184240        os: [ ubuntu-24.04 ]
    185         php: [ '7.2', '7.4', '8.0', '8.4' ]
     241        php: [ '7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4' ]
    186242        db-type: [ 'mysql', 'mariadb' ]
    187243        db-version: [ '9.1', '11.6' ]
    … …  
    189245        memcached: [ false ]
    190246        db-innovation: [ true ]
     247        # Dispatched runs and pull requests labeled 'Full PHPUnit Matrix' test every version above.
     248        # Other runs retain boundary PHP versions and the routine database versions below.
     249        full-matrix:
     250          - ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' || ( github.event_name == 'pull_request' && contains( github.event.pull_request.labels.*.name, 'Full PHPUnit Matrix' ) ) }}
    191251
    192252        exclude:
     253          # Outside the full matrix, test the highest and lowest PHP version of each major.
     254          - full-matrix: false
     255            php: '7.3'
     256          - full-matrix: false
     257            php: '8.1'
     258          - full-matrix: false
     259            php: '8.2'
     260          - full-matrix: false
     261            php: '8.3'
    193262          # MySQL 9.0+ will not work on PHP <= 7.3 because mysql_native_password was removed. See https://core.trac.wordpress.org/ticket/61218.
    194263          - php: '7.2'
     264            db-version: '9.1'
     265          - php: '7.3'
    195266            db-version: '9.1'
    196267          # Exclude version combinations that don't exist.
Note: See TracChangeset for help on using the changeset viewer.