1*04fd306cSNickeau# https://help.github.com/en/categories/automating-your-workflow-with-github-actions 2*04fd306cSNickeau 3*04fd306cSNickeauon: 4*04fd306cSNickeau - "pull_request" 5*04fd306cSNickeau - "push" 6*04fd306cSNickeau 7*04fd306cSNickeauname: "CI" 8*04fd306cSNickeau 9*04fd306cSNickeaujobs: 10*04fd306cSNickeau tests: 11*04fd306cSNickeau name: "Tests" 12*04fd306cSNickeau 13*04fd306cSNickeau runs-on: "ubuntu-latest" 14*04fd306cSNickeau 15*04fd306cSNickeau strategy: 16*04fd306cSNickeau fail-fast: false 17*04fd306cSNickeau matrix: 18*04fd306cSNickeau php-version: 19*04fd306cSNickeau - "7.2" 20*04fd306cSNickeau - "7.3" 21*04fd306cSNickeau - "7.4" 22*04fd306cSNickeau - "8.0" 23*04fd306cSNickeau dependencies: 24*04fd306cSNickeau - highest 25*04fd306cSNickeau experimental: 26*04fd306cSNickeau - false 27*04fd306cSNickeau 28*04fd306cSNickeau include: 29*04fd306cSNickeau - php-version: "8.1" 30*04fd306cSNickeau dependencies: highest 31*04fd306cSNickeau experimental: true 32*04fd306cSNickeau 33*04fd306cSNickeau continue-on-error: ${{ matrix.experimental }} 34*04fd306cSNickeau steps: 35*04fd306cSNickeau - name: "Configure git to avoid issues with line endings" 36*04fd306cSNickeau run: "git config --global core.autocrlf false" 37*04fd306cSNickeau 38*04fd306cSNickeau - name: "Checkout" 39*04fd306cSNickeau uses: "actions/checkout@v2" 40*04fd306cSNickeau 41*04fd306cSNickeau - name: "Install PHP with extensions" 42*04fd306cSNickeau uses: "shivammathur/setup-php@v2" 43*04fd306cSNickeau with: 44*04fd306cSNickeau php-version: "${{ matrix.php-version }}" 45*04fd306cSNickeau coverage: "pcov" 46*04fd306cSNickeau 47*04fd306cSNickeau - name: "Cache dependencies" 48*04fd306cSNickeau uses: actions/cache@v2 49*04fd306cSNickeau with: 50*04fd306cSNickeau path: "~/.composer/cache" 51*04fd306cSNickeau key: "php${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-${{ hashFiles('**/composer.json') }}" 52*04fd306cSNickeau restore-keys: "php${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-" 53*04fd306cSNickeau 54*04fd306cSNickeau - name: "Install dependencies" 55*04fd306cSNickeau run: "php tools/composer.phar install --prefer-dist" 56*04fd306cSNickeau 57*04fd306cSNickeau - name: "Run tests with phpunit.phar" 58*04fd306cSNickeau run: "php tools/phpunit.phar --coverage-clover=coverage.xml" 59