mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2025-10-16 12:05:38 +00:00
On TravisCI, old branches still receiving security updates were tested on a regular basis. This ensured tests continued to pass as time passed even if updates were not made to these branches. On GitHub Actions, there is no interface to configure this (TravisCI had a UI), but there is a `schedule` event that can trigger workflow runs on cron that can be used to accomplish the same thing. This introduces a workflow file that runs twice a month (on the 1st and 15th) to verify the tests within older branches. Because the `schedule` event only runs within the primary branch, the appropriate workflows in each old branch will be triggered manually through the `workflow_dispatch` trigger using the GitHub REST API. `workflow_dispatch` will need to be added to all workflows in all old branches in order for the event to dispatch successfully. Fixes #52653. git-svn-id: https://develop.svn.wordpress.org/trunk@50590 602fd350-edb4-49c9-b593-d223f7449a82
80 lines
2.4 KiB
YAML
80 lines
2.4 KiB
YAML
name: PHP Compatibility
|
|
|
|
on:
|
|
# PHP compatibility testing was introduced in WordPress 5.5.
|
|
push:
|
|
branches:
|
|
- master
|
|
- trunk
|
|
- '5.[5-9]'
|
|
- '[6-9].[0-9]'
|
|
tags:
|
|
- '5.[5-9]*'
|
|
- '[6-9].[0-9]*'
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
- trunk
|
|
- '5.[5-9]'
|
|
- '[6-9].[0-9]'
|
|
paths:
|
|
# This workflow only scans PHP files.
|
|
- '**.php'
|
|
# These files configure Composer. Changes could affect the outcome.
|
|
- 'composer.*'
|
|
# This file configures PHP Compatibility scanning. Changes could affect the outcome.
|
|
- 'phpcompat.xml.dist'
|
|
# Changes to workflow files should always verify all workflows are successful.
|
|
- '.github/workflows/*.yml'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
|
|
# Runs PHP compatibility testing.
|
|
#
|
|
# Violations are reported inline with annotations.
|
|
#
|
|
# Performs the following steps:
|
|
# - Checks out the repository.
|
|
# - Sets up PHP.
|
|
# - Logs debug information about the runner container.
|
|
# - Installs Composer dependencies (use cache if possible).
|
|
# - Make Composer packages available globally.
|
|
# - Logs PHP_CodeSniffer debug information.
|
|
# - Runs the PHP compatibility tests.
|
|
# - todo: Configure Slack notifications for failing scans.
|
|
php-comatibility:
|
|
name: Check PHP compatibility
|
|
runs-on: ubuntu-latest
|
|
if: ${{ github.repository == 'WordPress/wordpress-develop' || github.event_name == 'pull_request' }}
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
|
|
|
|
- name: Set up PHP
|
|
uses: shivammathur/setup-php@afefcaf556d98dc7896cca380e181decb609ca44 # v2.10.0
|
|
with:
|
|
php-version: '7.4'
|
|
coverage: none
|
|
tools: composer, cs2pr
|
|
|
|
- name: Log debug information
|
|
run: |
|
|
php --version
|
|
composer --version
|
|
|
|
- name: Install Composer dependencies
|
|
uses: ramsey/composer-install@92a7904348d4ad30236f3611e33b7f0c6f9edd70 # v1.1.0
|
|
with:
|
|
composer-options: "--no-progress --no-ansi --no-interaction"
|
|
|
|
- name: Make Composer packages available globally
|
|
run: echo "${PWD}/vendor/bin" >> $GITHUB_PATH
|
|
|
|
- name: Log PHPCS debug information
|
|
run: phpcs -i
|
|
|
|
- name: Run PHP compatibility tests
|
|
run: phpcs --standard=phpcompat.xml.dist -q --report=checkstyle | cs2pr
|