Ensure downgrade works in CI

Merge multiple composer steps into one to circumvent mixed up state.
Otherwise some versions might be locked, preventing downgrades.
Also should save bandwidth and time by only installing dependencies once.
This commit is contained in:
Daniel Siepmann 2021-09-17 09:25:55 +02:00
parent 85eab43131
commit 5ca8721abb

View file

@ -66,14 +66,8 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-composer- ${{ runner.os }}-composer-
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress --no-plugins run: composer require --prefer-dist --no-progress --no-plugins "maglnet/composer-require-checker" "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Install dependency checker
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "maglnet/composer-require-checker"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Missing composer requirements - name: Missing composer requirements
run: ./vendor/bin/composer-require-checker check --config-file dependency-checker.json run: ./vendor/bin/composer-require-checker check --config-file dependency-checker.json
@ -111,14 +105,8 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-composer- ${{ runner.os }}-composer-
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress --no-plugins run: composer require --prefer-dist --no-progress --no-plugins "maglnet/composer-require-checker" "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Install dependency checker
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "maglnet/composer-require-checker"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --no-plugins --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Missing composer requirements - name: Missing composer requirements
run: ./vendor/bin/composer-require-checker check --config-file dependency-checker.json run: ./vendor/bin/composer-require-checker check --config-file dependency-checker.json
@ -228,11 +216,8 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-composer- ${{ runner.os }}-composer-
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress run: composer require --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: PHPUnit Tests - name: PHPUnit Tests
run: ./vendor/bin/phpunit --testdox run: ./vendor/bin/phpunit --testdox
@ -271,11 +256,8 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-composer- ${{ runner.os }}-composer-
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress run: composer require --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: PHPUnit Tests - name: PHPUnit Tests
run: ./vendor/bin/phpunit --testdox run: ./vendor/bin/phpunit --testdox
@ -324,11 +306,8 @@ jobs:
mysql database: 'typo3' mysql database: 'typo3'
mysql root password: 'root' mysql root password: 'root'
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress run: composer require --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: PHPUnit Tests - name: PHPUnit Tests
run: |- run: |-
@ -381,11 +360,8 @@ jobs:
mysql database: 'typo3' mysql database: 'typo3'
mysql root password: 'root' mysql root password: 'root'
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress run: composer require --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: PHPUnit Tests - name: PHPUnit Tests
run: |- run: |-
@ -439,11 +415,8 @@ jobs:
mysql database: 'typo3' mysql database: 'typo3'
mysql root password: 'root' mysql root password: 'root'
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress run: composer require --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: PHPUnit Tests - name: PHPUnit Tests
run: |- run: |-
@ -487,11 +460,8 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-composer- ${{ runner.os }}-composer-
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress run: composer require --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Code Quality (by PHPStan) - name: Code Quality (by PHPStan)
run: ./vendor/bin/phpstan analyse run: ./vendor/bin/phpstan analyse
@ -529,11 +499,8 @@ jobs:
restore-keys: | restore-keys: |
${{ runner.os }}-composer- ${{ runner.os }}-composer-
- name: Install dependencies - name: Install dependencies with expected TYPO3 version
run: composer install --prefer-dist --no-progress run: composer require --prefer-dist --no-progress "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Switch to expected TYPO3 Version
run: composer require --prefer-dist --no-progress --update-with-all-dependencies "typo3/cms-backend:${{ matrix.typo3-version }}" "typo3/cms-core:${{ matrix.typo3-version }}" "typo3/cms-dashboard:${{ matrix.typo3-version }}"
- name: Code Quality (by PHPStan) - name: Code Quality (by PHPStan)
run: ./vendor/bin/phpstan analyse run: ./vendor/bin/phpstan analyse