Skip to content

WebSocketHandeShakeException is deprecated, please use WebSocketHandShakeException instead. #9171

WebSocketHandeShakeException is deprecated, please use WebSocketHandShakeException instead.

WebSocketHandeShakeException is deprecated, please use WebSocketHandShakeException instead. #9171

Workflow file for this run

name: Test for Hyperf Components
on:
push:
pull_request:
schedule:
- cron: '0 2 * * *'
env:
SW_VERSION: 'v5.1.2'
jobs:
database:
name: Test for Database
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
php-version: [ '8.3', '8.2', '8.1' ]
mysql-version: [ '5.7', '8.0' ]
max-parallel: 2
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
extensions: redis, pdo, pdo_mysql, bcmath, swoole
ini-values: opcache.enable_cli=1
coverage: none
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Setup Packages
run: ./.travis/requirement.install.sh
- name: Setup Services
run: |
docker run --name mysql -p 3306:3306 -e MYSQL_ALLOW_EMPTY_PASSWORD=true -d mysql:${{ matrix.mysql-version }} --bind-address=0.0.0.0 --default-authentication-plugin=mysql_native_password
sleep 20
- name: Setup Mysql
run: export TRAVIS_BUILD_DIR=$(pwd) && bash ./.travis/setup.mysql.sh
- name: Run Test Cases
run: |
composer test src/database -- --exclude-group NonCoroutine
vendor/bin/phpunit src/database --group NonCoroutine
filesystem:
name: Test for Filesystem
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
version: [ '^1.0', '^2.0', '^3.0' ]
php-version: [ '8.3', '8.2', '8.1' ]
max-parallel: 2
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
extensions: swoole
ini-values: opcache.enable_cli=1
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Setup Packages
run: composer require "league/flysystem:${{ matrix.version }}" --dev -o -W
- name: Setup Flysystem(v1.0) Adapters
if: ${{ matrix.version == '^1.0' }}
run: |
composer require xxtime/flysystem-aliyun-oss -W
composer require "overtrue/flysystem-cos:^3.0" -W
composer require "overtrue/flysystem-qiniu:^1.0" -W
- name: Setup Flysystem(v2.0) Adapters
if: ${{ matrix.version == '^2.0' }}
run: |
composer require hyperf/flysystem-oss -W
composer require "league/flysystem-ftp:^3.0" -W
composer require "overtrue/flysystem-cos:^4.0" -W
composer require "overtrue/flysystem-qiniu:^2.0" -W
- name: Setup Flysystem(v3.0) Adapters
if: ${{ matrix.version == '^3.0' }}
run: |
composer require hyperf/flysystem-oss -W
composer require league/flysystem-ftp -W
composer require "overtrue/flysystem-cos:^5.0" -W
composer require "overtrue/flysystem-qiniu:^3.0" -W
- name: Run Test Cases
run: |
./.travis/requirement.install.sh
composer test src/filesystem -- --exclude-group NonCoroutine
phar:
name: Test for Building PHAR
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
no-dev: [ '--no-dev', '' ]
php-version: [ '8.1' ]
max-parallel: 2
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
extensions: redis, swoole
ini-values: opcache.enable_cli=0, phar.readonly='Off'
coverage: none
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Build phar tester
run: |
git clone https://github.com/limingxinleo/hyperf-phar-tester.git
cd hyperf-phar-tester
git checkout 3.1
composer update -o ${{ matrix.no-dev }}
rm -rf vendor/hyperf/phar
cp -rf ../src/phar vendor/hyperf/phar
composer dump-autoload -o
- name: Test
run: |
sudo rm -rf /etc/php/${{ matrix.php-version }}/cli/conf.d/20-xdebug.ini
php -v
php -m
php --ri swoole
cd hyperf-phar-tester
php bin/hyperf.php
php bin/hyperf.php phar:build --name no_env.phar
php no_env.phar show:name -N null
php no_env.phar read:vendor-bin
cp .env.example .env
php bin/hyperf.php phar:build --name default_env.phar
php default_env.phar show:name -N hyperf-phar-tester
php bin/hyperf.php phar:build --name link_env.phar -M .env.link:.env
echo APP_NAME=helloworld > .env.link
php link_env.phar show:name -N helloworld
sudo chmod u+x link_env.phar
./link_env.phar show:name -N helloworld
container:
name: Test for Psr Container V1.0 ~ V2.0
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
php-version: [ '8.3', '8.2', '8.1' ]
version: [ '^1.0', '^2.0' ]
max-parallel: 6
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
extensions: swoole
ini-values: opcache.enable_cli=0
coverage: none
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Setup Packages
run: |
cp .travis/.env.example .env
./.travis/requirement.install.sh
composer remove friendsofphp/php-cs-fixer --dev -W
composer remove symfony/console --dev -W
composer require "psr/container:${{ matrix.version }}"
composer update -oW
- name: Run Test Cases
run: |
composer analyse src/di
vendor/bin/phpunit src/di
http-message:
name: Test for Http Message V1.0 ~ V2.0
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
php-version: [ '8.3', '8.2', '8.1' ]
version: [ '^1.0', '^2.0' ]
max-parallel: 6
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
extensions: swoole
ini-values: opcache.enable_cli=0
coverage: none
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Setup Packages
run: |
cp .travis/.env.example .env
./.travis/requirement.install.sh
composer remove swow/swow --dev -W
composer remove league/flysystem-memory --dev -W
composer remove league/flysystem-aws-s3-v3 --dev -W
composer remove league/flysystem --dev -W
composer remove aws/aws-sdk-php --dev -W
composer remove influxdb/influxdb-php --dev -W
composer remove guzzlehttp/guzzle --dev -W
composer remove jcchavezs/zipkin-opentracing -W --dev
composer require "psr/http-message:${{ matrix.version }}" -W
composer update -oW
- name: Run Test Cases
run: |
composer analyse src/http-message
composer analyse src/http-server
vendor/bin/phpunit src/http-message
log:
name: Test for Psr Log V1.0 ~ V3.0
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
php-version: [ '8.3', '8.2', '8.1' ]
log-version: [ '^1.0', '^2.0', '^3.0' ]
exclude:
- php-version: '8.1'
log-version: '^1.0'
- php-version: '8.2'
log-version: '^1.0'
max-parallel: 5
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
extensions: swoole
ini-values: opcache.enable_cli=0
coverage: none
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Removed conflict Packages
run: |
composer remove elasticsearch/elasticsearch --dev -W
composer remove jonahgeorge/jaeger-client-php --dev -W
composer remove bandwidth-throttle/token-bucket --dev -W
composer remove friendsofphp/php-cs-fixer --dev -W
composer remove zircote/swagger-php --dev -W
composer remove "symfony/*" --dev -W
- name: Run Test Cases
run: |
./.travis/requirement.install.sh
if [ ${{ matrix.log-version }} == '^1.0' ]
then
composer require "monolog/monolog:^2.0"
fi
composer require "psr/log:${{ matrix.log-version }}"
if [ ${{ matrix.log-version }} == '^3.0' ]
then
composer require "symfony/console:^6.0" --dev -W
else
composer require "symfony/console:^5.0" --dev -W
fi
composer require symfony/event-dispatcher --dev -W
composer update -oW
composer analyse src/framework
composer analyse src/server/src/Entry/Logger.php
composer analyse src/logger
composer test src/framework
composer test src/logger
composer info | grep psr/log
simple-cache:
name: Test for Psr SimpleCache V1.0 ~ V3.0
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
php-version: [ '8.3', '8.2', '8.1' ]
psr-version: [ '^1.0', '^2.0', '^3.0' ]
max-parallel: 3
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
ini-values: opcache.enable_cli=0
extensions: redis, pdo, pdo_mysql, bcmath, swoole
coverage: none
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Setup Services
run: |
docker run --name mysql -p 3306:3306 -e MYSQL_ALLOW_EMPTY_PASSWORD=true -d mysql:8.0 --bind-address=0.0.0.0 --default-authentication-plugin=mysql_native_password
docker run --name redis -p 6379:6379 -d redis
sleep 20
- name: Setup Mysql
run: export TRAVIS_BUILD_DIR=$(pwd) && bash ./.travis/setup.mysql.sh
- name: Run Test Cases
run: |
./.travis/requirement.install.sh
composer require "psr/simple-cache:${{ matrix.psr-version }}"
composer update -oW
composer analyse src/cache
composer test src/cache
composer analyse src/model-cache
composer test src/model-cache
composer info | grep psr/simple-cache
ext-redis:
name: Test for Redis Module
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
php-version: [ '8.3', '8.2', '8.1' ]
redis: [ 'redis', 'redis-5.3.7' ]
max-parallel: 2
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
extensions: ${{ matrix.redis }}, swoole
ini-values: opcache.enable_cli=1
coverage: none
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Setup Packages
run: ./.travis/requirement.install.sh
- name: Setup Services
run: |
docker run --name redis -p 6379:6379 -d redis
sleep 20
- name: Run Test Cases
run: |
composer test src/redis
symfony:
name: Test for Symfony
runs-on: 'ubuntu-latest'
env:
PHP_VERSION: ${{ matrix.php-version }}
strategy:
matrix:
php-version: [ '8.3', '8.2', '8.1' ]
symfony-version: [ '^6.0', '^7.0' ]
exclude:
- php-version: '8.1'
symfony-version: '^7.0'
max-parallel: 2
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: phpize
extensions: ${{ matrix.redis }}, swoole
ini-values: opcache.enable_cli=1
coverage: none
- name: Setup Swoole
run: ./.travis/swoole.install.sh
- name: Setup Packages
run: |
composer remove friendsofphp/php-cs-fixer --dev --no-update
for package in `cat composer.json|grep "symfony/"| awk -F '"' '{print $2}'`; do composer require "${package}:${{ matrix.symfony-version }}" --dev --no-update; done
./.travis/requirement.install.sh
- name: Run Test Cases
run: |
cp .travis/.env.example .env
composer analyse src/command
composer test src/command
composer analyse src/config
composer test src/config
composer analyse src/di
vendor/bin/phpunit src/di
composer analyse src/framework
composer test src/framework
composer analyse src/server
composer test src/server
# composer analyse src/serializer
# composer test src/serializer
# composer analyse src/task
# composer test src/task