Make ready for v14 #3213
This file contains hidden or 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
| # Configuration for running GitHub actions | |
| # based on EXT:enetcache: .github/workflows/tests.yml.not-used-yet | |
| # https://github.com/lolli42/enetcache/blob/master/.github/workflows/tests.yml | |
| # see https://docs.github.com/en/actions/guides/setting-up-continuous-integration-using-workflow-templates | |
| # current support is: | |
| # - TYPO3 v12 | |
| # - TYPO3 v13 | |
| # - PHP 8.1-8.4 (for TYPO3 v12) | |
| # - PHP 8.2-8.5 (for TYPO3 v13) | |
| # PHP support in TYPO3: | |
| # - TYPO3 v12 : PHP 8.1 - 8.4 | |
| # - TYPO3 v13 : PHP 8.2 - 8.5 | |
| # always force TYPO3 version, also for latest to make sure it runs with latest version | |
| name: CI | |
| on: | |
| push: | |
| pull_request: | |
| schedule: | |
| - cron: '42 5 * * 1' | |
| jobs: | |
| static: | |
| # only run jobs via scheduled workflow in main repo, not in forks | |
| if: (github.event_name == 'schedule' && github.repository == 'sypets/brofix') || (github.event_name != 'schedule') | |
| name: "static" | |
| runs-on: ubuntu-latest | |
| strategy: | |
| # This prevents cancellation of matrix job runs, if one/two already failed and let the | |
| # rest matrix jobs be be executed anyway. | |
| fail-fast: true | |
| matrix: | |
| php: [ '8.5' ] | |
| minMax: [ 'composerInstallMax' ] | |
| steps: | |
| - name: "Checkout" | |
| uses: actions/checkout@v2 | |
| - name: "show php version" | |
| run: php --version | |
| # This must be checked before core version select is run, as this would write this | |
| # and than the check would fail - obiously. | |
| - name: "Check if typo3/minimal has been pushed in composer.json" | |
| run: Build/Scripts/checkComposerJsonForPushedMinimalPackage.sh | |
| #- name: "Set Typo3 core version" | |
| # run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -t "^11.5" -s composerCoreVersion | |
| - name: "Composer" | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s ${{ matrix.minMax }} | |
| - name: "cgl" | |
| if: ${{ matrix.php != '8.1' }} | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s cgl -v -n | |
| - name: "Composer validate" | |
| if: always() | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s composerValidate | |
| # v13 / run only with latest PHP version | |
| all_core_v13-lastest-php: | |
| # only run jobs via scheduled workflow in main repo, not in forks | |
| if: (github.event_name == 'schedule' && github.repository == 'sypets/brofix') || (github.event_name != 'schedule') | |
| name: "TYPO3 v13 / only latest PHP: rector" | |
| runs-on: ubuntu-latest | |
| strategy: | |
| # This prevents cancellation of matrix job runs, if one/two already failed and let the | |
| # rest matrix jobs be be executed anyway. | |
| fail-fast: true | |
| matrix: | |
| # only testing with highest | |
| php: [ '8.5' ] | |
| minMax: [ 'composerInstallMax' ] | |
| steps: | |
| - name: "Checkout" | |
| uses: actions/checkout@v2 | |
| - name: "show php version" | |
| run: php --version | |
| - name: "Set Typo3 core version" | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -t "^13.4" -s composerCoreVersion | |
| - name: "Composer" | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s ${{ matrix.minMax }} | |
| - name: "rector (apply v12 rules)" | |
| run: Build/Scripts/runTests.sh -s rector:check -p 8.5 | |
| # v13 | |
| all_core_v13: | |
| # only run jobs via scheduled workflow in main repo, not in forks | |
| if: (github.event_name == 'schedule' && github.repository == 'sypets/brofix') || (github.event_name != 'schedule') | |
| name: "all core v13" | |
| runs-on: ubuntu-latest | |
| strategy: | |
| # This prevents cancellation of matrix job runs, if one/two already failed and let the | |
| # rest matrix jobs be be executed anyway. | |
| fail-fast: true | |
| matrix: | |
| # only testing with highest and lowest | |
| php: [ '8.2', '8.5' ] | |
| minMax: [ 'composerInstallMax' ] | |
| steps: | |
| - name: "Checkout" | |
| uses: actions/checkout@v2 | |
| - name: "show php version" | |
| run: php --version | |
| - name: "Set Typo3 core version" | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -t "^13.4" -s composerCoreVersion | |
| - name: "Composer" | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s ${{ matrix.minMax }} | |
| - name: "Lint PHP" | |
| if: always() | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s lint | |
| - name: "phpstan" | |
| if: ${{ always() && matrix.minMax == 'composerInstallMax' }} | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s phpstan -e "--error-format=github" -v | |
| - name: "Unit tests" | |
| if: always() | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s unit -v | |
| - name: "Functional tests with mariadb" | |
| if: always() | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -d mariadb -s functional -v | |
| - name: "Functional tests with sqlite (nightly or pull_request)" | |
| if: ${{ always() && (github.event_name == 'schedule' || github.event_name == 'pull_request' ) }} | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -d sqlite -s functional | |
| - name: "Functional tests with postgres (nightly or pull_request)" | |
| if: ${{ always() && (github.event_name == 'schedule' || github.event_name == 'pull_request' ) }} | |
| run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -d postgres -s functional | |
| # v12 | |
| #all_core_v12: | |
| # # only run jobs via scheduled workflow in main repo, not in forks | |
| # if: (github.event_name == 'schedule' && github.repository == 'sypets/brofix') || (github.event_name != 'schedule') | |
| # name: "all core-v12" | |
| # runs-on: ubuntu-latest | |
| # strategy: | |
| # # This prevents cancellation of matrix job runs, if one/two already failed and let the | |
| # # rest matrix jobs be be executed anyway. | |
| # fail-fast: true | |
| # matrix: | |
| # # only testing with highest and lowest | |
| # php: [ '8.1', '8.4' ] | |
| # minMax: [ 'composerInstallMax' ] | |
| # steps: | |
| # - name: "Checkout" | |
| # uses: actions/checkout@v2 | |
| # | |
| # - name: "show php version" | |
| # run: php --version | |
| # | |
| # - name: "Set Typo3 core version" | |
| # run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -t "^12.4" -s composerCoreVersion | |
| # | |
| # - name: "Composer" | |
| # run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s ${{ matrix.minMax }} | |
| # | |
| # - name: "phpstan" | |
| # if: ${{ always() && matrix.minMax == 'composerInstallMax' }} | |
| # run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s phpstan -e "--error-format=github -c Build/phpstan/phpstan_v12.neon" -v | |
| # | |
| # - name: "Unit tests" | |
| # if: always() | |
| # run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -s unit -v | |
| # | |
| # - name: "Functional tests with mariadb" | |
| # if: always() | |
| # run: Build/Scripts/runTests.sh -p ${{ matrix.php }} -d mariadb -s functional -v |