diff --git a/.github/workflows/run-static-analysis.yml b/.github/workflows/run-static-analysis.yml new file mode 100644 index 0000000..bd25c7b --- /dev/null +++ b/.github/workflows/run-static-analysis.yml @@ -0,0 +1,52 @@ +name: Static Analysis + +on: + push: + branches: + - master + pull_request: + branches: + - "*" + schedule: + - cron: '0 0 * * *' + +jobs: + php-tests: + runs-on: ubuntu-latest + + timeout-minutes: 15 + + env: + COMPOSER_NO_INTERACTION: 1 + + strategy: + fail-fast: false + matrix: + php: [8.1, 8.2, 8.3] + laravel: [10.*, 11.*] + dependency-version: [prefer-stable] + exclude: + - laravel: 11.* + php: 8.1 + + name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + coverage: none + extensions: mbstring + + - name: Install dependencies + run: | + composer remove phpro/grumphp --no-update --dev + composer require "laravel/framework:${{ matrix.laravel }}" --no-update --no-progress + composer update --${{ matrix.dependency-version }} --prefer-dist --no-progress + + - name: Run Static Analysis + run: composer phpstan diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 6073cd4..f048c61 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -6,13 +6,13 @@ on: - master pull_request: branches: - - * + - "*" schedule: - cron: '0 0 * * *' jobs: php-tests: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest timeout-minutes: 15 @@ -22,7 +22,7 @@ jobs: strategy: fail-fast: false matrix: - php: [7.2, 7.3, 7.4, 8.0, '8.2'] + php: [7.2, 7.3, 7.4, 8.0, 8.2] laravel: ['6.*', '7.*', '8.*', '11.*'] dependency-version: [prefer-lowest, prefer-stable] include: @@ -53,6 +53,12 @@ jobs: exclude: - laravel: 8.* php: 7.2 + - laravel: 6.* + php: 8.2 + - laravel: 7.* + php: 8.2 + - laravel: 8.* + php: 8.2 - php: 8.0 dependency-version: prefer-lowest - laravel: 11.* @@ -83,8 +89,5 @@ jobs: composer require "laravel/framework:${{ matrix.laravel }}" --no-update --no-progress composer update --${{ matrix.dependency-version }} --prefer-dist --no-progress - - name: Run Static Analysis - run: composer phpstan - - name: Execute Unit Tests run: composer test