diff --git a/.github/workflows/php.yml b/.github/workflows/php.yml index 02f4c4c..2af5d14 100644 --- a/.github/workflows/php.yml +++ b/.github/workflows/php.yml @@ -10,25 +10,30 @@ permissions: contents: read jobs: - build: - - runs-on: ubuntu-latest - + run: + runs-on: ${{ matrix.operating-system }} + strategy: + matrix: + operating-system: [ubuntu-latest, windows-latest, macOS-latest] + php-versions: ['8.1', '8.2', '8.3'] + name: PHP ${{ matrix.php-versions }} Test on ${{ runner.os }} steps: - - uses: actions/checkout@v3 - + - name: Checkout + uses: actions/checkout@v3 + - name: Install PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-versions }} - name: Validate composer.json and composer.lock run: composer validate --strict - - name: Cache Composer packages id: composer-cache uses: actions/cache@v3 with: path: vendor - key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }} + key: ${{ runner.os }}-${{ matrix.php-versions }}-${{ hashFiles('**/composer.lock') }} restore-keys: | - ${{ runner.os }}-php- - + ${{ runner.os }}-${{ matrix.php-versions }}- - name: Install dependencies run: composer install --prefer-dist --no-progress - name: Run test suite