Changeset 58626
- Timestamp:
- 07/02/2024 07:43:50 PM (3 months ago)
- Location:
- branches/5.1
- Files:
-
- 2 added
- 1 deleted
- 10 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
branches/5.1
- Property svn:mergeinfo changed
/trunk merged: 49264,51673,52179,53552,53895,56464,57124-57125,57249,57918,58157
- Property svn:mergeinfo changed
-
branches/5.1/.github/workflows/coding-standards.yml
r55524 r58626 41 41 cancel-in-progress: true 42 42 43 # Disable permissions for all available scopes by default. 44 # Any needed permissions should be configured at the job level. 45 permissions: {} 46 43 47 jobs: 44 48 # Runs PHP coding standards checks. 45 #46 # Violations are reported inline with annotations.47 #48 # Performs the following steps:49 # - Checks out the repository.50 # - Sets up PHP.51 # - Logs debug information.52 # - Installs Composer dependencies (use cache if possible).53 # - Make Composer packages available globally.54 # - Logs PHP_CodeSniffer debug information.55 # - Runs PHPCS on the full codebase with warnings suppressed.56 # - Runs PHPCS on the `tests` directory without warnings suppressed.57 49 phpcs: 58 50 name: PHP coding standards 59 runs-on: ubuntu-latest 51 uses: WordPress/wordpress-develop/.github/workflows/reusable-coding-standards-php.yml@trunk 52 permissions: 53 contents: read 60 54 if: ${{ github.repository == 'WordPress/wordpress-develop' || github.event_name == 'pull_request' }} 61 62 steps: 63 - name: Checkout repository 64 uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 65 66 - name: Set up PHP 67 uses: shivammathur/setup-php@d30ad8b1843ace22e6698ab99bbafaa747b6bd0d # v2.24.0 68 with: 69 php-version: '7.2' 70 coverage: none 71 tools: composer, cs2pr 72 73 - name: Log debug information 74 run: | 75 php --version 76 composer --version 77 78 - name: Install Composer dependencies 79 uses: ramsey/composer-install@83af392bf5f031813d25e6fe4cd626cdba9a2df6 # v2.2.0 80 with: 81 composer-options: "--no-progress --no-ansi" 82 83 - name: Make Composer packages available globally 84 run: echo "${PWD}/vendor/bin" >> $GITHUB_PATH 85 86 - name: Log PHPCS debug information 87 run: phpcs -i 88 89 - name: Run PHPCBF on all Core files 90 run: phpcbf 55 with: 56 php-version: '7.2' 57 old-branch: true 91 58 92 59 # Runs the JavaScript coding standards checks. 93 #94 # JSHint violations are not currently reported inline with annotations.95 #96 # Performs the following steps:97 # - Checks out the repository.98 # - Logs debug information about the GitHub Action runner.99 # - Installs NodeJS.100 # - Logs updated debug information.101 # _ Installs npm dependencies.102 # - Run the WordPress JSHint checks.103 60 jshint: 104 61 name: JavaScript coding standards 105 runs-on: ubuntu-latest 106 timeout-minutes: 20 62 uses: WordPress/wordpress-develop/.github/workflows/reusable-coding-standards-javascript.yml@trunk 63 permissions: 64 contents: read 107 65 if: ${{ github.repository == 'WordPress/wordpress-develop' || github.event_name == 'pull_request' }} 108 env:109 PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: ${{ true }}110 111 steps:112 - name: Checkout repository113 uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0114 115 - name: Log debug information116 run: |117 npm --version118 node --version119 git --version120 svn --version121 122 - name: Set up Node.js123 uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0124 with:125 node-version-file: '.nvmrc'126 cache: npm127 128 - name: Log debug information129 run: |130 npm --version131 node --version132 133 - name: Install Dependencies134 run: npm ci135 136 - name: Run JSHint137 run: npm run grunt jshint138 66 139 67 slack-notifications: 140 68 name: Slack Notifications 141 69 uses: WordPress/wordpress-develop/.github/workflows/slack-notifications.yml@trunk 70 permissions: 71 actions: read 72 contents: read 142 73 needs: [ phpcs, jshint ] 143 74 if: ${{ github.repository == 'WordPress/wordpress-develop' && github.event_name != 'pull_request' && always() }} … … 153 84 name: Failed workflow tasks 154 85 runs-on: ubuntu-latest 86 permissions: 87 actions: write 155 88 needs: [ phpcs, jshint, slack-notifications ] 156 89 if: | … … 166 99 steps: 167 100 - name: Dispatch workflow run 168 uses: actions/github-script@ 98814c53be79b1d30f795b907e553d8679345975 # v6.4.0101 uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 169 102 with: 170 103 retries: 2 -
branches/5.1/.github/workflows/javascript-tests.yml
r55524 r58626 39 39 cancel-in-progress: true 40 40 41 # Disable permissions for all available scopes by default. 42 # Any needed permissions should be configured at the job level. 43 permissions: {} 44 41 45 jobs: 42 # Runs the QUnit tests for WordPress. 43 # 44 # Performs the following steps: 45 # - Checks out the repository. 46 # - Logs debug information about the GitHub Action runner. 47 # - Installs NodeJS. 48 # - Logs updated debug information. 49 # _ Installs npm dependencies. 50 # - Run the WordPress QUnit tests. 46 # Runs the WordPress Core JavaScript tests. 51 47 test-js: 52 48 name: QUnit Tests 53 runs-on: ubuntu-latest 54 timeout-minutes: 20 49 uses: WordPress/wordpress-develop/.github/workflows/reusable-javascript-tests.yml@trunk 50 permissions: 51 contents: read 55 52 if: ${{ github.repository == 'WordPress/wordpress-develop' || github.event_name == 'pull_request' }} 56 57 steps:58 - name: Checkout repository59 uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.060 61 - name: Log debug information62 run: |63 npm --version64 node --version65 git --version66 svn --version67 68 - name: Set up Node.js69 uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.070 with:71 node-version-file: '.nvmrc'72 cache: npm73 74 - name: Log debug information75 run: |76 npm --version77 node --version78 79 - name: Install Dependencies80 run: npm ci81 82 - name: Run QUnit tests83 run: npm run grunt qunit:compiled84 53 85 54 slack-notifications: 86 55 name: Slack Notifications 87 56 uses: WordPress/wordpress-develop/.github/workflows/slack-notifications.yml@trunk 57 permissions: 58 actions: read 59 contents: read 88 60 needs: [ test-js ] 89 61 if: ${{ github.repository == 'WordPress/wordpress-develop' && github.event_name != 'pull_request' && always() }} 90 62 with: 91 calling_status: ${{ needs.test-js.result == 'success' && 'success' || needs.test-js.result == 'cancelled' && 'cancelled' || 'failure' }}63 calling_status: ${{ contains( needs.*.result, 'cancelled' ) && 'cancelled' || contains( needs.*.result, 'failure' ) && 'failure' || 'success' }} 92 64 secrets: 93 65 SLACK_GHA_SUCCESS_WEBHOOK: ${{ secrets.SLACK_GHA_SUCCESS_WEBHOOK }} … … 99 71 name: Failed workflow tasks 100 72 runs-on: ubuntu-latest 101 needs: [ test-js, slack-notifications ] 73 permissions: 74 actions: write 75 needs: [ slack-notifications ] 102 76 if: | 103 77 always() && … … 106 80 github.run_attempt < 2 && 107 81 ( 108 needs.test-js.result == 'cancelled' || needs.test-js.result == 'failure' 82 contains( needs.*.result, 'cancelled' ) || 83 contains( needs.*.result, 'failure' ) 109 84 ) 110 85 111 86 steps: 112 87 - name: Dispatch workflow run 113 uses: actions/github-script@ 98814c53be79b1d30f795b907e553d8679345975 # v6.4.088 uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 114 89 with: 115 90 retries: 2 -
branches/5.1/.github/workflows/phpunit-tests.yml
r55524 r58626 22 22 # Cancels all previous workflow runs for pull requests that have not completed. 23 23 concurrency: 24 25 24 # The concurrency group contains the workflow name and the branch name for pull requests 25 # or the commit hash for any other events. 26 26 group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} 27 27 cancel-in-progress: true 28 28 29 env: 30 LOCAL_DIR: build 31 PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: ${{ true }} 32 COMPOSER_INSTALL: ${{ false }} 33 # Controls which npm script to use for running PHPUnit tests. Options ar `php` and `php-composer`. 34 PHPUNIT_SCRIPT: php 35 LOCAL_PHP_MEMCACHED: ${{ false }} 36 SLOW_TESTS: 'external-http,media,restapi' 29 # Disable permissions for all available scopes by default. 30 # Any needed permissions should be configured at the job level. 31 permissions: {} 37 32 38 33 jobs: 39 # Sets up WordPress for testing or development use.40 34 # 41 # Performs the following steps: 42 # - Cancels all previous workflow runs for pull requests that have not completed. 43 # - Checks out the repository. 44 # - Logs debug information about the GitHub Action runner. 45 # - Installs NodeJS. 46 # _ Installs npm dependencies. 47 # - Builds WordPress to run from the `build` directory. 48 # - Creates a ZIP file of compiled WordPress. 49 # - Uploads ZIP file as an artifact. 50 setup-wordpress: 51 name: Setup WordPress 52 runs-on: ubuntu-latest 35 # Creates a PHPUnit test job for each PHP combination. 36 # 37 test-php: 38 name: PHP ${{ matrix.php }} 39 uses: WordPress/wordpress-develop/.github/workflows/reusable-phpunit-tests-v1.yml@trunk 40 permissions: 41 contents: read 42 secrets: inherit 53 43 if: ${{ github.repository == 'WordPress/wordpress-develop' || github.event_name == 'pull_request' }} 54 55 steps:56 - name: Checkout repository57 uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.058 59 - name: Log debug information60 run: |61 echo "$GITHUB_REF"62 echo "$GITHUB_EVENT_NAME"63 npm --version64 node --version65 curl --version66 git --version67 svn --version68 php --version69 php -i70 locale -a71 72 - name: Set up Node.js73 uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.074 with:75 node-version-file: '.nvmrc'76 cache: npm77 78 - name: Install Dependencies79 run: npm ci80 81 - name: Build WordPress82 run: npm run build83 84 - name: Create ZIP artifact85 uses: thedoctor0/zip-release@a24011d8d445e4da5935a7e73c1f98e22a439464 # v0.7.186 with:87 filename: built-wp-${{ github.sha }}.zip88 exclusions: '*.git* /*node_modules/* packagehash.txt'89 90 - name: Upload build artifact91 uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.292 with:93 name: built-wp-${{ github.sha }}94 path: built-wp-${{ github.sha }}.zip95 if-no-files-found: error96 97 # Runs the PHPUnit tests for WordPress.98 #99 # Performs the following steps:100 # - Sets environment variables.101 # - Sets up the environment variables needed for testing with memcached (if desired).102 # - Downloads the built WordPress artifact from the previous job.103 # - Unzips the artifact.104 # - Installs NodeJS.105 # _ Installs npm dependencies.106 # - Configures caching for Composer.107 # _ Installs Composer dependencies (if desired).108 # - Logs Docker debug information (about the Docker installation within the runner).109 # - Starts the WordPress Docker container.110 # - Starts the Memcached server after the Docker network has been created (if desired).111 # - Logs general debug information about the runner.112 # - Logs the running Docker containers.113 # - Logs debug information from inside the WordPress Docker container.114 # - Logs debug information about what's installed within the WordPress Docker containers.115 # - Install WordPress within the Docker container.116 # - Run the PHPUnit tests.117 # - Checks out the WordPress Test reporter repository.118 # - Reconnect the directory to the Git repository.119 # - Submit the test results to the WordPress.org host test results.120 test-php:121 name: ${{ matrix.php }}${{ matrix.multisite && ' multisite' || '' }}${{ matrix.split_slow && ' slow tests' || '' }}${{ matrix.memcached && ' with memcached' || '' }} on ${{ matrix.os }}122 needs: setup-wordpress123 runs-on: ${{ matrix.os }}124 timeout-minutes: 20125 44 strategy: 126 45 fail-fast: false 127 46 matrix: 47 os: [ ubuntu-latest ] 128 48 php: [ '5.3', '5.4', '5.5', '7.1', '7.2', '7.3' ] 129 os: [ ubuntu-latest ]130 memcached: [ false ]131 49 split_slow: [ false ] 132 50 multisite: [ false, true ] 51 memcached: [ false ] 52 133 53 include: 134 54 # Include jobs for PHP 7.3 with memcached. … … 143 63 split_slow: false 144 64 multisite: true 145 # Include jobs when specific PHPUnit versions are required.65 # Include jobs that require specific versions of PHPUnit. 146 66 - php: '7.0' 147 67 phpunit: '6-php-7.0' 148 68 os: ubuntu-latest 149 69 memcached: false 70 split_slow: false 150 71 multisite: false 151 72 - php: '7.0' … … 153 74 os: ubuntu-latest 154 75 memcached: false 76 split_slow: false 155 77 multisite: true 156 78 - php: '5.6' … … 158 80 os: ubuntu-latest 159 81 memcached: false 82 split_slow: false 160 83 multisite: false 161 84 - php: '5.6' … … 163 86 os: ubuntu-latest 164 87 memcached: false 88 split_slow: false 165 89 multisite: true 166 90 # Additional "slow" jobs for PHP <= 5.6. … … 207 131 split_slow: true 208 132 multisite: true 209 210 env: 211 LOCAL_PHP: ${{ matrix.php }}-fpm 212 LOCAL_PHPUNIT: ${{ matrix.phpunit && matrix.phpunit || matrix.php }}-fpm 213 LOCAL_PHP_MEMCACHED: ${{ matrix.memcached }} 214 PHPUNIT_CONFIG: ${{ matrix.multisite && 'tests/phpunit/multisite.xml' || 'phpunit.xml.dist' }} 215 216 steps: 217 - name: Configure environment variables 218 run: | 219 echo "PHP_FPM_UID=$(id -u)" >> $GITHUB_ENV 220 echo "PHP_FPM_GID=$(id -g)" >> $GITHUB_ENV 221 222 - name: Download the built WordPress artifact 223 uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3.0.2 224 with: 225 name: built-wp-${{ github.sha }} 226 227 - name: Unzip built artifact 228 run: unzip built-wp-${{ github.sha }}.zip 229 230 - name: Set up Node.js 231 uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 232 with: 233 node-version-file: '.nvmrc' 234 cache: npm 235 236 - name: Install Dependencies 237 run: npm ci 238 239 - name: Cache Composer dependencies 240 if: ${{ env.COMPOSER_INSTALL == true }} 241 uses: actions/cache@69d9d449aced6a2ede0bc19182fadc3a0a42d2b0 # v3.2.6 242 env: 243 cache-name: cache-composer-dependencies 244 with: 245 path: ${{ steps.composer-cache.outputs.dir }} 246 key: ${{ runner.os }}-php-${{ matrix.php }}-composer-${{ hashFiles('**/composer.lock') }} 247 248 - name: Install Composer dependencies 249 if: ${{ env.COMPOSER_INSTALL == true }} 250 run: | 251 docker-compose run --rm php composer --version 252 docker-compose run --rm php composer install 253 254 - name: Docker debug information 255 run: | 256 docker -v 257 docker-compose -v 258 259 - name: Start Docker environment 260 run: | 261 npm run env:start 262 263 # The memcached server needs to start after the Docker network has been set up with `npm run env:start`. 264 - name: Start the Memcached server. 265 if: ${{ matrix.memcached }} 266 run: | 267 cp tests/phpunit/includes/object-cache.php build/wp-content/object-cache.php 268 docker run --name memcached --net $(basename "$PWD")_wpdevnet -d memcached 269 270 - name: General debug information 271 run: | 272 npm --version 273 node --version 274 curl --version 275 git --version 276 svn --version 277 278 - name: Log running Docker containers 279 run: docker ps -a 280 281 - name: WordPress Docker container debug information 282 run: | 283 docker-compose run --rm mysql mysql --version 284 docker-compose run --rm php php --version 285 docker-compose run --rm php php -m 286 docker-compose run --rm php php -i 287 docker-compose run --rm php locale -a 288 289 - name: Install WordPress 290 run: npm run env:install 291 292 - name: Run slow PHPUnit tests 293 if: ${{ matrix.split_slow }} 294 run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} --group ${{ env.SLOW_TESTS }} 295 296 - name: Run PHPUnit tests for single site excluding slow tests 297 if: ${{ matrix.php < '7.0' && ! matrix.split_slow && ! matrix.multisite }} 298 run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} --exclude-group ${{ env.SLOW_TESTS }},ajax,ms-files,ms-required 299 300 - name: Run PHPUnit tests for Multisite excluding slow tests 301 if: ${{ matrix.php < '7.0' && ! matrix.split_slow && matrix.multisite }} 302 run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} --exclude-group ${{ env.SLOW_TESTS }},ajax,ms-files,ms-excluded,oembed-headers 303 304 - name: Run PHPUnit tests 305 if: ${{ matrix.php >= '7.0' }} 306 run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} 307 308 - name: Run AJAX tests 309 if: ${{ ! matrix.multisite && ! matrix.split_slow }} 310 run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c ${{ env.PHPUNIT_CONFIG }} --group ajax 311 312 - name: Run ms-files tests as a multisite install 313 if: ${{ matrix.multisite && ! matrix.split_slow }} 314 run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c tests/phpunit/multisite.xml --group ms-files 315 316 - name: Run external HTTP tests 317 if: ${{ ! matrix.multisite && ! matrix.split_slow }} 318 run: npm run test:${{ env.PHPUNIT_SCRIPT }} -- --verbose -c phpunit.xml.dist --group external-http 319 320 - name: Checkout the WordPress Test Reporter 321 if: ${{ github.repository == 'WordPress/wordpress-develop' && github.ref == 'refs/heads/trunk' && matrix.report }} 322 uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 323 with: 324 repository: 'WordPress/phpunit-test-runner' 325 path: 'test-runner' 326 327 - name: Set up the Git repository 328 if: ${{ github.repository == 'WordPress/wordpress-develop' && github.ref == 'refs/heads/trunk' && matrix.report }} 329 run: | 330 git init 331 git remote add origin https://github.com/WordPress/wordpress-develop.git 332 git fetch 333 git reset origin/trunk 334 335 - name: Submit test results to the WordPress.org host test results 336 if: ${{ github.repository == 'WordPress/wordpress-develop' && github.ref == 'refs/heads/trunk' && matrix.report }} 337 env: 338 WPT_REPORT_API_KEY: "${{ secrets.WPT_REPORT_API_KEY }}" 339 run: docker-compose run --rm -e WPT_REPORT_API_KEY -e WPT_PREPARE_DIR=/var/www -e WPT_TEST_DIR=/var/www php php test-runner/report.php 133 with: 134 os: ${{ matrix.os }} 135 php: ${{ matrix.php }} 136 phpunit: ${{ matrix.phpunit && matrix.phpunit || matrix.php }} 137 multisite: ${{ matrix.multisite }} 138 split_slow: ${{ matrix.split_slow }} 139 memcached: ${{ matrix.memcached }} 140 phpunit-config: ${{ matrix.multisite && 'tests/phpunit/multisite.xml' || 'phpunit.xml.dist' }} 340 141 341 142 slack-notifications: 342 143 name: Slack Notifications 343 144 uses: WordPress/wordpress-develop/.github/workflows/slack-notifications.yml@trunk 344 needs: [ setup-wordpress, test-php ] 145 permissions: 146 actions: read 147 contents: read 148 needs: [ test-php ] 345 149 if: ${{ github.repository == 'WordPress/wordpress-develop' && github.event_name != 'pull_request' && always() }} 346 150 with: … … 355 159 name: Failed workflow tasks 356 160 runs-on: ubuntu-latest 161 permissions: 162 actions: write 357 163 needs: [ test-php, slack-notifications ] 358 164 if: | … … 367 173 steps: 368 174 - name: Dispatch workflow run 369 uses: actions/github-script@ 98814c53be79b1d30f795b907e553d8679345975 # v6.4.0175 uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 370 176 with: 371 177 retries: 2 -
branches/5.1/.github/workflows/test-build-processes.yml
r58625 r58626 1 name: Test npm1 name: Test Build Processes 2 2 3 3 on: … … 34 34 cancel-in-progress: true 35 35 36 env: 37 PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: ${{ true }} 36 # Disable permissions for all available scopes by default. 37 # Any needed permissions should be configured at the job level. 38 permissions: {} 38 39 39 40 jobs: 40 # Verifies that installing npm dependencies and building WordPress works as expected. 41 # 42 # Performs the following steps: 43 # - Checks out the repository. 44 # - Logs debug information about the GitHub Action runner. 45 # - Installs NodeJS. 46 # _ Installs npm dependencies. 47 # - Builds WordPress to run from the `build` directory. 48 # - Cleans up after building WordPress to the `build` directory. 49 # - Builds WordPress to run from the `src` directory. 50 # - Cleans up after building WordPress to the `src` directory. 51 test-npm: 52 name: Test npm on ${{ matrix.os }} 53 runs-on: ${{ matrix.os }} 54 timeout-minutes: 20 41 # Tests the WordPress Core build process on multiple operating systems. 42 test-core-build-process: 43 name: Core running from ${{ matrix.directory }} 44 uses: WordPress/wordpress-develop/.github/workflows/reusable-test-core-build-process.yml@trunk 45 permissions: 46 contents: read 55 47 if: ${{ github.repository == 'WordPress/wordpress-develop' || github.event_name == 'pull_request' }} 56 48 strategy: … … 58 50 matrix: 59 51 os: [ ubuntu-latest, windows-latest ] 52 directory: [ 'build' ] 53 include: 54 # Only prepare artifacts once. 55 - os: ubuntu-latest 56 directory: 'build' 57 prepare-playground: true 58 with: 59 os: ${{ matrix.os }} 60 directory: ${{ matrix.directory }} 61 prepare-playground: ${{ matrix.prepare-playground && matrix.prepare-playground || false }} 62 test-emoji: false 60 63 61 steps: 62 - name: Checkout repository 63 uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 64 65 - name: Log debug information 66 run: | 67 npm --version 68 node --version 69 curl --version 70 git --version 71 svn --version 72 73 - name: Set up Node.js 74 uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 75 with: 76 node-version-file: '.nvmrc' 77 cache: npm 78 79 - name: Install Dependencies 80 run: npm ci 81 82 - name: Build WordPress 83 run: npm run build 84 85 - name: Clean after building 86 run: npm run grunt clean 87 88 - name: Build WordPress in /src 89 run: npm run build:dev 90 91 - name: Clean after building in /src 92 run: npm run grunt clean -- --dev 93 94 # Verifies that installing npm dependencies and building WordPress works as expected on MacOS. 64 # Tests the WordPress Core build process on MacOS. 95 65 # 96 # This is separate from the job above in order to use stricter conditions aboutwhen to run.66 # This is separate from the job above in order to use stricter conditions when determining when to run. 97 67 # This avoids unintentionally consuming excessive minutes, as MacOS jobs consume minutes at a 10x rate. 98 68 # … … 100 70 # currently no way to determine the OS being used on a given job. 101 71 # See https://docs.github.com/en/actions/learn-github-actions/contexts#context-availability. 102 # 103 # Performs the following steps: 104 # - Checks out the repository. 105 # - Logs debug information about the GitHub Action runner. 106 # - Installs NodeJS. 107 # _ Installs npm dependencies. 108 # - Builds WordPress to run from the `build` directory. 109 # - Cleans up after building WordPress to the `build` directory. 110 # - Builds WordPress to run from the `src` directory. 111 # - Cleans up after building WordPress to the `src` directory. 112 test-npm-macos: 113 name: Test npm on MacOS 114 runs-on: macos-latest 115 timeout-minutes: 30 72 test-core-build-process-macos: 73 name: Core running from ${{ matrix.directory }} 74 uses: WordPress/wordpress-develop/.github/workflows/reusable-test-core-build-process.yml@trunk 75 permissions: 76 contents: read 116 77 if: ${{ github.repository == 'WordPress/wordpress-develop' }} 117 steps: 118 - name: Checkout repository 119 uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0 120 121 - name: Log debug information 122 run: | 123 npm --version 124 node --version 125 curl --version 126 git --version 127 svn --version 128 129 - name: Set up Node.js 130 uses: actions/setup-node@64ed1c7eab4cce3362f8c340dee64e5eaeef8f7c # v3.6.0 131 with: 132 node-version-file: '.nvmrc' 133 cache: npm 134 135 - name: Install Dependencies 136 run: npm ci 137 138 - name: Build WordPress 139 run: npm run build 140 141 - name: Clean after building 142 run: npm run grunt clean 143 144 - name: Build WordPress in /src 145 run: npm run build:dev 146 147 - name: Clean after building in /src 148 run: npm run grunt clean -- --dev 78 strategy: 79 fail-fast: false 80 matrix: 81 os: [ macos-13 ] 82 directory: [ 'build' ] 83 with: 84 os: ${{ matrix.os }} 85 directory: ${{ matrix.directory }} 86 test-emoji: false 149 87 150 88 slack-notifications: 151 89 name: Slack Notifications 152 90 uses: WordPress/wordpress-develop/.github/workflows/slack-notifications.yml@trunk 153 needs: [ test-npm, test-npm-macos ] 91 permissions: 92 actions: read 93 contents: read 94 needs: [ test-core-build-process, test-core-build-process-macos ] 154 95 if: ${{ github.repository == 'WordPress/wordpress-develop' && github.event_name != 'pull_request' && always() }} 155 96 with: 156 calling_status: ${{ needs.test-npm.result == 'success' && needs.test-npm-macos.result == 'success' && 'success' || ( needs.test-npm.result == 'cancelled' || needs.test-npm-macos.result == 'cancelled' ) && 'cancelled' || 'failure' }}97 calling_status: ${{ contains( needs.*.result, 'cancelled' ) && 'cancelled' || contains( needs.*.result, 'failure' ) && 'failure' || 'success' }} 157 98 secrets: 158 99 SLACK_GHA_SUCCESS_WEBHOOK: ${{ secrets.SLACK_GHA_SUCCESS_WEBHOOK }} … … 164 105 name: Failed workflow tasks 165 106 runs-on: ubuntu-latest 166 needs: [ test-npm, test-npm-macos, slack-notifications ] 107 permissions: 108 actions: write 109 needs: [ slack-notifications ] 167 110 if: | 168 111 always() && … … 171 114 github.run_attempt < 2 && 172 115 ( 173 needs.test-npm.result == 'cancelled' || needs.test-npm.result == 'failure'||174 needs.test-npm-macos.result == 'cancelled' || needs.test-npm-macos.result == 'failure'116 contains( needs.*.result, 'cancelled' ) || 117 contains( needs.*.result, 'failure' ) 175 118 ) 176 119 177 120 steps: 178 121 - name: Dispatch workflow run 179 uses: actions/github-script@ 98814c53be79b1d30f795b907e553d8679345975 # v6.4.0122 uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 180 123 with: 181 124 retries: 2 -
branches/5.1/.gitignore
r44517 r58626 10 10 /.phpcs.xml 11 11 /phpcs.xml 12 .cache/* 12 13 /tests/phpunit/data/plugins/wordpress-importer 13 14 /tests/phpunit/data/.trac-ticket-cache* -
branches/5.1/docker-compose.yml
r55524 r58626 1 version: '3.7'2 3 1 services: 4 2 … … 26 24 27 25 depends_on: 28 - php 26 php: 27 condition: service_started 28 mysql: 29 condition: service_healthy 29 30 30 31 ## … … 38 39 39 40 environment: 40 LOCAL_PHP_XDEBUG:${LOCAL_PHP_XDEBUG-false}41 LOCAL_PHP_MEMCACHED:${LOCAL_PHP_MEMCACHED-false}42 PHP_FPM_UID:${PHP_FPM_UID-1000}43 PHP_FPM_GID:${PHP_FPM_GID-1000}41 - LOCAL_PHP_XDEBUG+${LOCAL_PHP_XDEBUG-false} 42 - LOCAL_PHP_MEMCACHED=${LOCAL_PHP_MEMCACHED-false} 43 - PHP_FPM_UID=${PHP_FPM_UID-1000} 44 - PHP_FPM_GID=${PHP_FPM_GID-1000} 44 45 45 46 volumes: … … 47 48 - ./:/var/www 48 49 49 depends_on:50 - mysql50 # The init directive ensures the command runs with a PID > 1, so Ctrl+C works correctly. 51 init: true 51 52 52 53 ## … … 54 55 ## 55 56 mysql: 56 image: amd64/${LOCAL_DB_TYPE-mysql}:${LOCAL_DB_VERSION-5.7} 57 image: ${LOCAL_DB_TYPE-mysql}:${LOCAL_DB_VERSION-5.7} 58 platform: linux/amd64 57 59 58 60 networks: … … 72 74 command: --default-authentication-plugin=mysql_native_password 73 75 76 healthcheck: 77 test: [ "CMD-SHELL", "if [ \"$LOCAL_DB_TYPE\" = \"mariadb\" ]; then mariadb-admin ping -h localhost; else mysqladmin ping -h localhost; fi" ] 78 timeout: 5s 79 interval: 5s 80 retries: 10 81 74 82 ## 75 83 # The WP CLI container. … … 82 90 83 91 environment: 84 LOCAL_PHP_XDEBUG:${LOCAL_PHP_XDEBUG-false}85 LOCAL_PHP_MEMCACHED:${LOCAL_PHP_MEMCACHED-false}86 PHP_FPM_UID:${PHP_FPM_UID-1000}87 PHP_FPM_GID:${PHP_FPM_GID-1000}92 - LOCAL_PHP_XDEBUG=${LOCAL_PHP_XDEBUG-false} 93 - LOCAL_PHP_MEMCACHED=${LOCAL_PHP_MEMCACHED-false} 94 - PHP_FPM_UID=${PHP_FPM_UID-1000} 95 - PHP_FPM_GID=${PHP_FPM_GID-1000} 88 96 89 97 volumes: … … 92 100 # The init directive ensures the command runs with a PID > 1, so Ctrl+C works correctly. 93 101 init: true 102 103 depends_on: 104 php: 105 condition: service_started 106 mysql: 107 condition: service_healthy 94 108 95 109 ## … … 103 117 104 118 environment: 105 LOCAL_PHP_XDEBUG:${LOCAL_PHP_XDEBUG-false}106 LOCAL_PHP_MEMCACHED:${LOCAL_PHP_MEMCACHED-false}107 LOCAL_DIR:${LOCAL_DIR-src}108 WP_MULTISITE:${WP_MULTISITE-false}109 PHP_FPM_UID:${PHP_FPM_UID-1000}110 PHP_FPM_GID:${PHP_FPM_GID-1000}111 TRAVIS_BRANCH:${TRAVIS_BRANCH-false}112 TRAVIS_PULL_REQUEST:${TRAVIS_PULL_REQUEST-false}113 GITHUB_REF:${GITHUB_REF-false}114 GITHUB_EVENT_NAME:${GITHUB_EVENT_NAME-false}119 - LOCAL_PHP_XDEBUG=${LOCAL_PHP_XDEBUG-false} 120 - LOCAL_PHP_MEMCACHED=${LOCAL_PHP_MEMCACHED-false} 121 - LOCAL_DIR=${LOCAL_DIR-src} 122 - WP_MULTISITE=${WP_MULTISITE-false} 123 - PHP_FPM_UID=${PHP_FPM_UID-1000} 124 - PHP_FPM_GID=${PHP_FPM_GID-1000} 125 - TRAVIS_BRANCH=${TRAVIS_BRANCH-false} 126 - TRAVIS_PULL_REQUEST=${TRAVIS_PULL_REQUEST-false} 127 - GITHUB_REF=${GITHUB_REF-false} 128 - GITHUB_EVENT_NAME=${GITHUB_EVENT_NAME-false} 115 129 116 130 volumes: -
branches/5.1/phpcs.xml.dist
r44574 r58626 2 2 <ruleset name="WordPress Coding Standards"> 3 3 <description>Apply WordPress Coding Standards to all Core files</description> 4 5 <arg name="cache" value=".cache/phpcs.json"/> 4 6 5 7 <rule ref="WordPress-Core"/> -
branches/5.1/tools/local-env/scripts/docker.js
r49528 r58626 5 5 dotenvExpand( dotenv.config() ); 6 6 7 // Execute any docker -compose command passed to this script.8 execSync( 'docker -compose ' + process.argv.slice( 2 ).join( ' ' ), { stdio: 'inherit' } );7 // Execute any docker compose command passed to this script. 8 execSync( 'docker compose ' + process.argv.slice( 2 ).join( ' ' ), { stdio: 'inherit' } ); -
branches/5.1/tools/local-env/scripts/install.js
r50306 r58626 46 46 */ 47 47 function wp_cli( cmd ) { 48 execSync( `docker -compose run --rm cli ${cmd}`, { stdio: 'inherit' } );48 execSync( `docker compose run --rm cli ${cmd}`, { stdio: 'inherit' } ); 49 49 } 50 50 … … 55 55 const test_plugin_directory = 'tests/phpunit/data/plugins/wordpress-importer'; 56 56 57 execSync( `docker -compose exec -T php rm -rf ${test_plugin_directory} && svn checkout -r ${process.env.WP_IMPORTER_REVISION} https://plugins.svn.wordpress.org/wordpress-importer/trunk/ ${test_plugin_directory}`, { stdio: 'inherit' } );57 execSync( `docker compose exec -T php rm -rf ${test_plugin_directory} && svn checkout -r ${process.env.WP_IMPORTER_REVISION} https://plugins.svn.wordpress.org/wordpress-importer/trunk/ ${test_plugin_directory}`, { stdio: 'inherit' } ); 58 58 } -
branches/5.1/tools/local-env/scripts/start.js
r49528 r58626 6 6 7 7 // Start the local-env containers. 8 execSync( 'docker -compose up -d wordpress-develop', { stdio: 'inherit' } );8 execSync( 'docker compose up -d wordpress-develop', { stdio: 'inherit' } ); 9 9 10 10 // If Docker Toolbox is being used, we need to manually forward LOCAL_PORT to the Docker VM.
Note: See TracChangeset
for help on using the changeset viewer.