|
1 | | -# Adapted from https://github.com/TYPO3GmbH/blog/blob/master/.github/workflows/ci.yml |
2 | | -name: CI |
| 1 | +name: Tests |
3 | 2 |
|
4 | | -on: [pull_request] |
| 3 | +on: |
| 4 | + push: |
| 5 | + pull_request: |
5 | 6 |
|
6 | 7 | jobs: |
7 | | - build: |
| 8 | + testing: |
| 9 | + name: Testing |
| 10 | + |
8 | 11 | runs-on: ubuntu-latest |
9 | 12 |
|
10 | 13 | strategy: |
| 14 | + # This prevents cancellation of matrix job runs, if one or more already failed |
| 15 | + # and let the remaining matrix jobs be executed anyway. |
11 | 16 | fail-fast: false |
| 17 | + |
12 | 18 | matrix: |
13 | | - typo3: [^10.4, ^11.5] |
14 | | - php: ['7.4'] |
15 | | - include: |
16 | | - - typo3: ^11.5 |
17 | | - php: '8.0' |
| 19 | + php: |
| 20 | + - '8.2' |
| 21 | + - '8.3' |
| 22 | + - '8.4' |
18 | 23 |
|
19 | 24 | steps: |
20 | | - - name: Checkout |
21 | | - uses: actions/checkout@v2 |
22 | | - |
23 | | - - name: Setup PHP ${{ matrix.php }}, with composer and extensions |
24 | | - uses: shivammathur/setup-php@v2 |
25 | | - with: |
26 | | - php-version: ${{ matrix.php }} |
27 | | - extensions: mbstring, dom, zip, mysql |
28 | | - |
29 | | - - name: Validate composer.json and composer.lock |
30 | | - run: composer validate |
31 | | - |
32 | | - - name: Get composer cache directory |
33 | | - id: composer-cache |
34 | | - run: echo "::set-output name=dir::$(composer config cache-files-dir)" |
35 | | - |
36 | | - - name: Cache composer dependencies |
37 | | - uses: actions/cache@v2 |
38 | | - with: |
39 | | - path: ${{ steps.composer-cache.outputs.dir }} |
40 | | - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }} |
41 | | - restore-keys: ${{ runner.os }}-composer- |
42 | | - |
43 | | - - name: Install dependencies with typo3/cms-core:${{ matrix.typo3 }} |
44 | | - run: | |
45 | | - composer require typo3/cms-core:${{ matrix.typo3 }} --no-progress |
46 | | - git checkout composer.json |
47 | | -
|
48 | | - - name: php-cs-fixer |
49 | | - run: composer ci:php:fixer |
50 | | - |
51 | | - - name: Lint PHP |
52 | | - run: composer ci:php:lint |
| 25 | + - name: 'Checkout' |
| 26 | + uses: actions/checkout@v4 |
| 27 | + |
| 28 | + - name: 'Lint PHP' |
| 29 | + run: Build/Scripts/runTests.sh -b podman -p ${{ matrix.php }} -s lint |
| 30 | + |
| 31 | + - name: 'Install testing system' |
| 32 | + run: Build/Scripts/runTests.sh -b podman -p ${{ matrix.php }} -s composerUpdate |
| 33 | + |
| 34 | + - name: 'Composer validate' |
| 35 | + run: Build/Scripts/runTests.sh -b podman -p ${{ matrix.php }} -s composerValidate |
| 36 | + |
| 37 | + - name: 'Composer normalize' |
| 38 | + run: Build/Scripts/runTests.sh -b podman -p ${{ matrix.php }} -s composerNormalize -n |
| 39 | + |
| 40 | + - name: 'CGL' |
| 41 | + if: ${{ matrix.php <= '8.3' }} |
| 42 | + run: Build/Scripts/runTests.sh -b podman -n -p ${{ matrix.php }} -s cgl |
0 commit comments