[FRAM-212] New pheanstalk compatibility #108
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build | |
| on: | |
| push: | |
| branches: [ '[1-9].[0-9]+' ] | |
| pull_request: | |
| branches: [ '[1-9].[0-9]+' ] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| php-versions: ['7.4', '8.0', '8.1', '8.2', '8.3', '8.4'] | |
| name: PHP ${{ matrix.php-versions }} | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - name: Set Timezone | |
| uses: szenius/set-timezone@v1.0 | |
| with: | |
| timezoneLinux: "Europe/Paris" | |
| - name: Install PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: ${{ matrix.php-versions }} | |
| extensions: json | |
| ini-values: date.timezone=Europe/Paris | |
| - name: Check PHP Version | |
| run: php -v | |
| - name: Validate composer.json and composer.lock | |
| run: composer validate --strict | |
| - name: Install dependencies | |
| run: composer install --prefer-dist --no-progress | |
| - name: Run test suite | |
| run: composer run-script tests | |
| pheanstalk_compatibility: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| pheanstalk-versions: ['3.2.1'] | |
| name: Pheanstalk ${{ matrix.pheanstalk-versions }} | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - name: Set Timezone | |
| uses: szenius/set-timezone@v1.0 | |
| with: | |
| timezoneLinux: "Europe/Paris" | |
| - name: Install PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: 8.4 | |
| extensions: json | |
| ini-values: date.timezone=Europe/Paris | |
| - name: Install & run Beanstalkd | |
| run: | | |
| sudo apt-get install -y beanstalkd | |
| sudo service beanstalkd start | |
| - name: Install dependencies | |
| run: composer install --prefer-dist --no-progress | |
| - name: Require Pheanstalk version | |
| run: composer require --dev "pda/pheanstalk:~${{ matrix.pheanstalk-versions }}" | |
| - name: Run test suite | |
| run: composer run-script tests | |
| analysis: | |
| name: Analysis | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - name: Set Timezone | |
| uses: szenius/set-timezone@v1.0 | |
| with: | |
| timezoneLinux: "Europe/Paris" | |
| - name: Install gearman PECL | |
| run: sudo apt-get install -y libgearman-dev | |
| - name: Install PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: 7.4 | |
| extensions: json, gearman, redis | |
| ini-values: date.timezone=Europe/Paris | |
| - name: Validate composer.json and composer.lock | |
| run: composer validate --strict | |
| - name: Install dependencies | |
| run: composer install --prefer-dist --no-progress | |
| - name: Install kafka stubs | |
| run: composer require --ignore-platform-req=ext-rdkafka "kwn/php-rdkafka-stubs:~2.0" | |
| - name: Run type coverage | |
| run: composer run-script psalm | |
| coverage: | |
| name: Code Coverage | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v2 | |
| - name: Set Timezone | |
| uses: szenius/set-timezone@v1.0 | |
| with: | |
| timezoneLinux: "Europe/Paris" | |
| - name: Install PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: 7.4 | |
| extensions: json, redis | |
| ini-values: date.timezone=Europe/Paris | |
| - name: Install dependencies | |
| run: composer install --prefer-dist --no-progress | |
| - name: Run test coverage | |
| run: ./vendor/bin/phpunit --coverage-clover=coverage.xml | |
| - name: Upload coverage to Codecov | |
| uses: codecov/codecov-action@v3 | |
| with: | |
| files: coverage.xml |