#62221 Test current branch upgrade #18
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Confirms that updating WordPress using WP-CLI works successfully. | |
# | |
# This workflow tests upgrading from a previous version to the current wordpress-develop checkout, not to a version available on WordPress.org. | |
name: Upgrade Develop Version Tests | |
on: | |
push: | |
branches: | |
- trunk | |
- '6.[8-9]' | |
- '[7-9].[0-9]' | |
tags: | |
- '[0-9]+.[0-9]' | |
- '[0-9]+.[0-9].[0-9]+' | |
paths: | |
# Any change to a source PHP file should run checks. | |
- 'src/**.php' | |
# Confirm any changes to relevant workflow files. | |
- '.github/workflows/upgrade-develop-testing.yml' | |
- '.github/workflows/reusable-upgrade-testing.yml' | |
pull_request: | |
branches: | |
- trunk | |
- '6.[8-9]' | |
- '[7-9].[0-9]' | |
paths: | |
# Any change to a source PHP file should run checks. | |
- 'src/**.php' | |
# Confirm any changes to relevant workflow files. | |
- '.github/workflows/upgrade-develop-testing.yml' | |
- '.github/workflows/reusable-upgrade-testing.yml' | |
workflow_dispatch: | |
# Cancels all previous workflow runs for pull requests that have not completed. | |
concurrency: | |
# The concurrency group contains the workflow name and the branch name for pull requests | |
# or the commit hash for any other events. | |
group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.head_ref || github.sha }} | |
cancel-in-progress: true | |
# Disable permissions for all available scopes by default. | |
# Any needed permissions should be configured at the job level. | |
permissions: {} | |
jobs: | |
# Build WordPress from the current branch ready for the upgrade tests. | |
build: | |
name: Build | |
uses: ./.github/workflows/reusable-build-package.yml | |
permissions: | |
contents: read | |
# Run upgrade tests for the current branch. | |
upgrade-tests-develop: | |
name: Upgrade from ${{ matrix.wp }} | |
uses: ./.github/workflows/reusable-upgrade-testing.yml | |
if: ${{ github.repository == 'WordPress/wordpress-develop' || github.event_name == 'pull_request' }} | |
needs: [ build ] | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ 'ubuntu-24.04' ] | |
php: [ '7.2', '8.4' ] | |
db-type: [ 'mysql' ] | |
db-version: [ '5.7', '8.4' ] | |
wp: [ '6.5', '6.6', '6.7' ] | |
multisite: [ false, true ] | |
exclude: | |
# The PHP <= 7.3/MySQL 8.4 jobs currently fail due to mysql_native_password being disabled by default. See https://core.trac.wordpress.org/ticket/61218. | |
- php: '7.2' | |
db-version: '8.4' | |
with: | |
os: ${{ matrix.os }} | |
php: ${{ matrix.php }} | |
db-type: ${{ matrix.db-type }} | |
db-version: ${{ matrix.db-version }} | |
wp: ${{ matrix.wp }} | |
new-version: develop | |
multisite: ${{ matrix.multisite }} | |
slack-notifications: | |
name: Slack Notifications | |
uses: ./.github/workflows/slack-notifications.yml | |
permissions: | |
actions: read | |
contents: read | |
needs: [ upgrade-tests-develop ] | |
if: ${{ github.repository == 'WordPress/wordpress-develop' && github.event_name != 'pull_request' && always() }} | |
with: | |
calling_status: ${{ contains( needs.*.result, 'cancelled' ) && 'cancelled' || contains( needs.*.result, 'failure' ) && 'failure' || 'success' }} | |
secrets: | |
SLACK_GHA_SUCCESS_WEBHOOK: ${{ secrets.SLACK_GHA_SUCCESS_WEBHOOK }} | |
SLACK_GHA_CANCELLED_WEBHOOK: ${{ secrets.SLACK_GHA_CANCELLED_WEBHOOK }} | |
SLACK_GHA_FIXED_WEBHOOK: ${{ secrets.SLACK_GHA_FIXED_WEBHOOK }} | |
SLACK_GHA_FAILURE_WEBHOOK: ${{ secrets.SLACK_GHA_FAILURE_WEBHOOK }} | |
failed-workflow: | |
name: Failed workflow tasks | |
runs-on: ubuntu-24.04 | |
permissions: | |
actions: write | |
needs: [ slack-notifications ] | |
if: | | |
always() && | |
github.repository == 'WordPress/wordpress-develop' && | |
github.event_name != 'pull_request' && | |
github.run_attempt < 2 && | |
( | |
contains( needs.*.result, 'cancelled' ) || | |
contains( needs.*.result, 'failure' ) | |
) | |
steps: | |
- name: Dispatch workflow run | |
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1 | |
with: | |
retries: 2 | |
retry-exempt-status-codes: 418 | |
script: | | |
github.rest.actions.createWorkflowDispatch({ | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
workflow_id: 'failed-workflow.yml', | |
ref: 'trunk', | |
inputs: { | |
run_id: `${context.runId}`, | |
} | |
}); |