diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 8b596656..edf32434 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -5,112 +5,10 @@ on: pull_request: workflow_dispatch: -env: - COMPOSER_FLAGS: "--ansi --no-interaction --no-progress --prefer-dist" - COMPOSER_UPDATE_FLAGS: "" - jobs: - phpunit: - name: PHPUnit - runs-on: ubuntu-latest - continue-on-error: ${{ matrix.experimental }} - strategy: - matrix: - php-version: - - '7.2' - - '7.3' - - '7.4' - - '8.0' - - '8.1' - dependencies: [highest] - os: [ubuntu-latest] - experimental: [false] - include: - - php-version: "7.2" - dependencies: lowest - os: ubuntu-latest - experimental: false - - php-version: "7.3" - dependencies: lowest - os: ubuntu-latest - experimental: false - - php-version: "7.4" - dependencies: lowest - os: ubuntu-latest - experimental: false - - php-version: "8.0" - dependencies: lowest - os: ubuntu-latest - experimental: false - - php-version: "8.1" - dependencies: lowest - os: ubuntu-latest - experimental: false - - php-version: "8.1" - os: windows-latest - dependencies: highest - experimental: false - - php-version: "8.1" - os: macos-latest - dependencies: highest - experimental: false - - php-version: "8.2" - dependencies: lowest-ignore - os: ubuntu-latest - experimental: true - - php-version: "8.2" - dependencies: highest-ignore - os: ubuntu-latest - experimental: true - - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Setup PHP ${{ matrix.php-version }} - uses: shivammathur/setup-php@v2 - with: - php-version: ${{ matrix.php-version }} - coverage: pcov - ini-values: zend.assertions=1 - - - name: Get composer cache directory - id: composer-cache - run: echo "::set-output name=dir::$(composer config cache-files-dir)" - - - name: Cache dependencies - uses: actions/cache@v2 - with: - path: ${{ steps.composer-cache.outputs.dir }} - key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} - restore-keys: ${{ runner.os }}-composer- - - - name: Handle lowest dependencies update - if: contains(matrix.dependencies, 'lowest') - run: echo COMPOSER_UPDATE_FLAGS=$COMPOSER_UPDATE_FLAGS --prefer-lowest >> $GITHUB_ENV - - - name: Handle ignore-platform-reqs dependencies update - if: contains(matrix.dependencies, 'ignore') - run: echo COMPOSER_FLAGS=$COMPOSER_FLAGS --ignore-platform-req=php >> $GITHUB_ENV - - - name: Remove platform config to get latest dependencies for current PHP version - if: contains(matrix.dependencies, 'highest') || contains(matrix.dependencies, 'lowest') - run: composer config platform --unset - - - name: Allow alpha releases for latest-deps builds to catch problems earlier - if: contains(matrix.dependencies, 'ignore') - run: composer config minimum-stability alpha - - - name: Update dependencies - run: composer update ${{ env.COMPOSER_UPDATE_FLAGS }} ${{ env.COMPOSER_FLAGS }} - - - name: Run test suite - run: ./vendor/bin/phpunit --coverage-clover=coverage.xml - - - name: Upload coverage report - uses: codecov/codecov-action@v2 - with: - file: ./coverage.xml - - - name: Run Demo - run: php demo/run.php + ci: + uses: ray-di/.github/.github/workflows/continuous-integration.yml + with: + old_stable: '["7.2", "7.3", "7.4", "8.0", "8.1"]' + current_stable: 8.2 + script: demo/run.php