| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- name: "Continuous Integration"
- on:
- - push
- - pull_request
- env:
- COMPOSER_FLAGS: "--ansi --no-interaction --no-progress --prefer-dist"
- jobs:
- tests:
- name: "CI"
- runs-on: ubuntu-latest
- strategy:
- matrix:
- php-version:
- - "5.3"
- - "5.4"
- - "5.5"
- - "5.6"
- - "7.0"
- - "7.1"
- - "7.2"
- - "7.3"
- - "7.4"
- # disabled for monolog 1.x as not worth the trouble, people should use monolog 2 anyway
- # - "8.0"
- # disabled for now as it leads to PHPUnit installing in a very old 4.3 version due to phpspec/prophecy not allowing 8.1
- # - "8.1"
- steps:
- - name: "Checkout"
- uses: "actions/checkout@v2"
- - name: "Install PHP 5"
- if: "startsWith(matrix.php-version, '5.')"
- uses: "shivammathur/setup-php@v2"
- with:
- coverage: "none"
- php-version: "${{ matrix.php-version }}"
- extensions: "mongo"
- - name: "Install PHP 7+"
- if: "!startsWith(matrix.php-version, '5.')"
- uses: "shivammathur/setup-php@v2"
- with:
- coverage: "none"
- php-version: "${{ matrix.php-version }}"
- - name: Get composer cache directory
- id: composercache
- run: echo "::set-output name=dir::$(composer config cache-files-dir)"
- - name: Cache dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.composercache.outputs.dir }}
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
- restore-keys: ${{ runner.os }}-composer-
- - name: "Install latest dependencies"
- run: |
- # Remove PHPStan as it requires a newer PHP
- composer remove phpstan/phpstan --dev --no-update
- composer update ${{ env.COMPOSER_FLAGS }}
- - name: "Run tests"
- run: "composer test"
|