Skip to content

[TASK] Update v12 and (hopefully) to v13 #4

[TASK] Update v12 and (hopefully) to v13

[TASK] Update v12 and (hopefully) to v13 #4

Workflow file for this run

name: tests core 12
on:
pull_request:
workflow_dispatch:
jobs:
code-quality:
name: "code quality with core v12"
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
php-version: [ '8.1']
permissions:
# actions: read|write|none
actions: none
# checks: read|write|none
checks: none
# contents: read|write|none
contents: read
# deployments: read|write|none
deployments: none
# id-token: read|write|none
id-token: none
# issues: read|write|none
issues: none
# discussions: read|write|none
discussions: none
# packages: read|write|none
packages: read
# pages: read|write|none
pages: none
# pull-requests: read|write|none
pull-requests: none
# repository-projects: read|write|none
repository-projects: read
# security-events: read|write|none
security-events: none
# statuses: read|write|none
statuses: none
steps:
- name: "Checkout"
uses: actions/checkout@v4
- name: "Prepare dependencies for TYPO3 v12"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s composer require typo3/cms-core:^12.4 -W"
# Disabled, as latest installable version of TypoScript linter does not support the TYPO3 backend layout
# override syntax in PageTSConfig files.
# @see https://docs.typo3.org/c/typo3/cms-core/main/en-us/Changelog/12.0/Feature-96812-OverrideBackendTemplatesWithTSconfig.html
# - name: "Run TypoScript lint"
# run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s lintTypoScript"
- name: "Run PHP lint"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s lintPhp"
- name: "Validate CGL"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s cgl"
- name: "Ensure tests methods do not start with \"test\""
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s checkTestMethodsPrefix"
- name: "Ensure UTF-8 files do not contain BOM"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s checkBom"
# Disabled until documentation is added
# - name: "Test .rst files for integrity"
# run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s checkRst"
- name: "Find duplicate exception codes"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s checkExceptionCodes"
- name: "Run PHPStan"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s phpstan"
typoscript:
name: "Linting TypoScript and TSConfig files"
runs-on: ubuntu-24.04
permissions:
# actions: read|write|none
actions: none
# checks: read|write|none
checks: none
# contents: read|write|none
contents: read
# deployments: read|write|none
deployments: none
# id-token: read|write|none
id-token: none
# issues: read|write|none
issues: none
# discussions: read|write|none
discussions: none
# packages: read|write|none
packages: read
# pages: read|write|none
pages: none
# pull-requests: read|write|none
pull-requests: none
# repository-projects: read|write|none
repository-projects: read
# security-events: read|write|none
security-events: none
# statuses: read|write|none
statuses: none
steps:
- name: "Checkout"
uses: actions/checkout@v4
- name: "Prepare dependencies for TYPO3 v12"
run: "Build/Scripts/runTests.sh -t 12 -p 8.1 -s composerUpdate"
testsuite:
name: all tests with core v12
runs-on: ubuntu-24.04
needs:
- code-quality
- typoscript
strategy:
fail-fast: false
matrix:
php-version: [ '8.1', '8.2', '8.3', '8.4' ]
permissions:
# actions: read|write|none
actions: none
# checks: read|write|none
checks: none
# contents: read|write|none
contents: read
# deployments: read|write|none
deployments: none
# id-token: read|write|none
id-token: none
# issues: read|write|none
issues: none
# discussions: read|write|none
discussions: none
# packages: read|write|none
packages: read
# pages: read|write|none
pages: none
# pull-requests: read|write|none
pull-requests: none
# repository-projects: read|write|none
repository-projects: read
# security-events: read|write|none
security-events: none
# statuses: read|write|none
statuses: none
steps:
- name: "Checkout"
uses: actions/checkout@v4
- name: "Prepare dependencies for TYPO3 v12"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s composer require typo3/cms-core:^12.4 -W"
- name: "Unit"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s unit"
- name: "Functional SQLite"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s functional -d sqlite"
- name: "Functional MariaDB 10.5 mysqli"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s functional -d mariadb -a mysqli"
- name: "Functional MariaDB 10.5 pdo_mysql"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s functional -d mariadb -a pdo_mysql"
- name: "Functional MySQL 8.0 mysqli"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s functional -d mariadb -a mysqli"
- name: "Functional MySQL 8.0 pdo_mysql"
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s functional -d mariadb -a pdo_mysql"
- name: "Functional PostgresSQL 10"
# v12 postgres functional disabled with PHP 8.2 since https://github.com/doctrine/dbal/commit/73eec6d882b99e1e2d2d937accca89c1bd91b2d7
# is not fixed in doctrine core v12 doctrine 2.13.9
if: ${{ matrix.php <= '8.1' }}
run: "Build/Scripts/runTests.sh -t 12 -p ${{ matrix.php-version }} -s functional -d postgres"