Issue #3400984 by andypost, longwave, BramDriesen, catch: Make PHP 8.3 the default environment for gitlab CI runs

merge-requests/5161/merge
catch 2024-03-06 09:57:42 +00:00
parent e8db570e86
commit 1e82784398
1 changed files with 40 additions and 95 deletions

View File

@ -22,7 +22,7 @@
# * etc.
# https://docs.gitlab.com/ee/ci/jobs/job_control.html#specify-when-jobs-run-with-rules
#
# Pipelines can also be configured to run on a schedule,though they still must meet the conditions defined in Workflow and Rules. This can be used, for example, to do nightly regression testing:
# Pipelines can also be configured to run on a schedule,though they still must meet the conditions defined in Workflow and Rules. This can be used, for example, to do nightly regression testing:
# https://gitlab.com/help/ci/pipelines/schedules
################
@ -60,7 +60,7 @@ variables:
CONCURRENCY: 24
GIT_DEPTH: "50"
PARENT_PIPELINE_ID: $CI_PIPELINE_ID
_TARGET_PHP: "8.2"
_TARGET_PHP: "8.3"
#############
# Stages #
@ -139,10 +139,10 @@ default:
allow_failure: true
# Default configuration.
'DEFAULT: PHP 8.2 MySQL 8':
'DEFAULT: PHP 8.3 MySQL 8':
<<: *default-stage
variables:
_TARGET_PHP: "8.2"
_TARGET_PHP: "8.3"
_TARGET_DB: "mysql-8"
PERFORMANCE_TEST: $PERFORMANCE_TEST
OTEL_COLLECTOR: $OTEL_COLLECTOR
@ -157,7 +157,7 @@ default:
- if: $PERFORMANCE_TEST == "1"
# Re-run the pipeline, but with Composer updates.
'DEFAULT: Updated dependencies (PHP 8.2 MySQL 8)':
'DEFAULT: Updated dependencies (PHP 8.3 MySQL 8)':
<<: *default-stage
# Run daily and allow manual runs on MRs.
rules:
@ -172,12 +172,12 @@ default:
include: .gitlab-ci.yml
# Special job for MRs for test-only checks.
'DEFAULT: Test-only (PHP 8.2 MySQL 8)':
'DEFAULT: Test-only (PHP 8.3 MySQL 8)':
<<: [ *default-stage, *with-composer ]
when: manual
allow_failure: true
variables:
_TARGET_PHP: "8.2"
_TARGET_PHP: "8.3"
_TARGET_DB: "mysql-8"
rules:
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
@ -190,41 +190,29 @@ default:
# Main listing of jobs.
# All of these are available on Merge Requests and also work as base jobs for
# on-commit and daily jobs to extend from.
'PHP 8.1 MySQL 5.7':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.1"
_TARGET_DB: "mysql-5.7"
'PHP 8.2 PostgreSQL 14.1':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.2"
_TARGET_DB: "pgsql-14.1"
'PHP 8.2 PostgreSQL 15':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.2"
_TARGET_DB: "pgsql-15"
'PHP 8.2 PostgreSQL 16':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.2"
_TARGET_DB: "pgsql-16"
'PHP 8.2 SQLite 3':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.2"
_TARGET_DB: "sqlite-3"
'PHP 8.3 MySQL 8':
'PHP 8.3 MySQL 5.7':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.3"
_TARGET_DB: "mysql-8"
_TARGET_DB: "mysql-5.7"
'PHP 8.3 MariaDB 10.3.22':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.3"
_TARGET_DB: "mariadb-10.3.22"
'PHP 8.3 PostgreSQL 14.1':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.3"
_TARGET_DB: "pgsql-14.1"
'PHP 8.3 PostgreSQL 15':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.3"
_TARGET_DB: "pgsql-15"
'PHP 8.3 PostgreSQL 16':
<<: [ *default-stage, *run-on-mr ]
@ -235,64 +223,31 @@ default:
'PHP 8.3 SQLite 3':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.3"
_TARGET_DB: "sqlite-3"
'PHP 8.1 MariaDB 10.3.22':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.1"
_TARGET_DB: "mariadb-10.3.22"
'PHP 8.1 PostgreSQL 14.1':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.1"
_TARGET_DB: "pgsql-14.1"
'PHP 8.1 SQLite 3':
<<: [ *default-stage, *run-on-mr ]
variables:
_TARGET_PHP: "8.1"
_TARGET_PHP: "8.2"
_TARGET_DB: "sqlite-3"
# Jobs running on commits.
# The value set in the "needs" property will determine the order in the sequence.
'[Commit] PHP 8.1 MySQL 5.7':
extends: 'PHP 8.1 MySQL 5.7'
needs: [ 'DEFAULT: PHP 8.2 MySQL 8' ]
'[Commit] PHP 8.3 MySQL 5.7':
extends: 'PHP 8.3 MySQL 5.7'
needs: [ 'DEFAULT: PHP 8.3 MySQL 8' ]
<<: [ *run-on-commit ]
'[Commit] PHP 8.2 PostgreSQL 16':
extends: 'PHP 8.2 PostgreSQL 16'
needs: [ '[Commit] PHP 8.1 MySQL 5.7' ]
'[Commit] PHP 8.3 PostgreSQL 16':
extends: 'PHP 8.3 PostgreSQL 16'
needs: [ '[Commit] PHP 8.3 MySQL 5.7' ]
<<: [ *run-on-commit ]
'[Commit] PHP 8.2 SQLite 3':
extends: 'PHP 8.2 SQLite 3'
needs: [ '[Commit] PHP 8.2 PostgreSQL 16' ]
'[Commit] PHP 8.3 SQLite 3':
extends: 'PHP 8.3 SQLite 3'
needs: [ '[Commit] PHP 8.3 PostgreSQL 16' ]
<<: [ *run-on-commit ]
# Jobs running daily.
# The value set in the "needs" property will determine the order in the sequence.
'[Daily] PHP 8.2 PostgreSQL 14.1':
extends: 'PHP 8.2 PostgreSQL 14.1'
needs: [ 'DEFAULT: PHP 8.2 MySQL 8' ]
<<: [ *run-daily ]
'[Daily] PHP 8.2 PostgreSQL 15':
extends: 'PHP 8.2 PostgreSQL 15'
needs: [ '[Daily] PHP 8.2 PostgreSQL 14.1' ]
<<: [ *run-daily ]
'[Daily] PHP 8.3 MySQL 8':
extends: 'PHP 8.3 MySQL 8'
needs: [ '[Daily] PHP 8.2 PostgreSQL 15' ]
<<: [ *run-daily ]
'[Daily] PHP 8.3 PostgreSQL 16':
extends: 'PHP 8.3 PostgreSQL 16'
needs: [ '[Daily] PHP 8.3 MySQL 8' ]
needs: [ 'DEFAULT: PHP 8.3 MySQL 8' ]
<<: [ *run-daily ]
'[Daily] PHP 8.3 SQLite 3':
@ -300,21 +255,11 @@ default:
needs: [ '[Daily] PHP 8.3 PostgreSQL 16' ]
<<: [ *run-daily ]
'[Daily] PHP 8.1 MariaDB 10.3.22':
extends: 'PHP 8.1 MariaDB 10.3.22'
'[Daily] PHP 8.3 MariaDB 10.3.22':
extends: 'PHP 8.3 MariaDB 10.3.22'
needs: [ '[Daily] PHP 8.3 SQLite 3' ]
<<: [ *run-daily ]
'[Daily] PHP 8.1 PostgreSQL 14.1':
extends: 'PHP 8.1 PostgreSQL 14.1'
needs: [ '[Daily] PHP 8.1 MariaDB 10.3.22' ]
<<: [ *run-daily ]
'[Daily] PHP 8.1 SQLite 3':
extends: 'PHP 8.1 SQLite 3'
needs: [ '[Daily] PHP 8.1 PostgreSQL 14.1' ]
<<: [ *run-daily ]
################
# Build Jobs for linting
################