mirror of
https://github.com/FriendsOfTYPO3/tea.git
synced 2024-11-10 04:56:12 +01:00
75ae59b28a
Now that Composer 2.4 has had its first point release, we can safely upgrade from 2.3 to 2.4 in the DDEV configuration and the CI pipeline.
70 lines
2.7 KiB
YAML
70 lines
2.7 KiB
YAML
---
|
|
# This GitHub Actions workflow calculates the code coverage of the extension and uploads it to coveralls.io.
|
|
name: Code coverage
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
jobs:
|
|
code-coverage:
|
|
name: "Calculate code coverage"
|
|
runs-on: ubuntu-18.04
|
|
steps:
|
|
- name: "Checkout"
|
|
uses: actions/checkout@v3
|
|
- name: "Install PHP"
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: "${{ matrix.php-version }}"
|
|
tools: composer:v2.4
|
|
extensions: xdebug, mysqli
|
|
coverage: xdebug
|
|
- name: "Show Composer version"
|
|
run: composer --version
|
|
- name: "Cache dependencies installed with composer"
|
|
uses: actions/cache@v3
|
|
with:
|
|
key: "php${{ matrix.php-version }}-typo3${{ matrix.typo3-version }}-${{ matrix.composer-dependencies }}-composer-${{ hashFiles('**/composer.json') }}"
|
|
path: ~/.cache/composer
|
|
restore-keys: "php${{ matrix.php-version }}-typo3${{ matrix.typo3-version }}-${{ matrix.composer-dependencies }}-composer-\n"
|
|
- name: "Install TYPO3 Core"
|
|
env:
|
|
TYPO3: "${{ matrix.typo3-version }}"
|
|
run: |
|
|
composer require --no-ansi --no-interaction --no-progress --no-install typo3/minimal:"$TYPO3"
|
|
composer show
|
|
- name: "Install lowest dependencies with composer"
|
|
if: "matrix.composer-dependencies == 'lowest'"
|
|
run: |
|
|
composer update --no-ansi --no-interaction --no-progress --with-dependencies --prefer-lowest
|
|
composer show
|
|
- name: "Install highest dependencies with composer"
|
|
if: "matrix.composer-dependencies == 'highest'"
|
|
run: |
|
|
composer update --no-ansi --no-interaction --no-progress --with-dependencies
|
|
composer show
|
|
- name: "Start MySQL"
|
|
run: "sudo /etc/init.d/mysql start"
|
|
- name: "Run unit tests with coverage"
|
|
run: composer ci:coverage:unit
|
|
- name: "Run functional tests with coverage"
|
|
run: |
|
|
export typo3DatabaseName="typo3";
|
|
export typo3DatabaseHost="127.0.0.1";
|
|
export typo3DatabaseUsername="root";
|
|
export typo3DatabasePassword="root";
|
|
composer ci:coverage:functional
|
|
- name: "Merge coverage results"
|
|
run: composer ci:coverage:merge
|
|
- name: "Upload coverage results to Coveralls"
|
|
env:
|
|
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
run: ./.Build/vendor/bin/php-coveralls --coverage_clover=build/logs/clover.xml -v
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- typo3-version: "^11.5"
|
|
php-version: "7.4"
|
|
composer-dependencies: highest
|