-
Notifications
You must be signed in to change notification settings - Fork 56
36 lines (29 loc) · 1.05 KB
/
unit_tests.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
name: Unit Tests
on: [ push, pull_request, workflow_dispatch ]
jobs:
# Run unit tests with Swoole 5.0, Swoole 5.1, and latest code of Swoole.
unit-tests:
runs-on: ubuntu-22.04
strategy:
fail-fast: true
matrix:
php: ["8.0", "8.1", "8.2"]
swoole-prefix: ["5.0-", "5.1-", ""]
name: Run Tests Using Image ${{ matrix.swoole-prefix }}php${{ matrix.php }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Services
run: |
sed -i.bak -e "s/^FROM phpswoole\/swoole.*$/FROM phpswoole\/swoole:${{ matrix.swoole-prefix }}php${{ matrix.php }}/g" ./Dockerfile
docker-compose up -d
docker ps -a
docker-compose exec -T app php -v
docker-compose exec -T app php --ri swoole
docker-compose exec -T app composer install -n -q --no-progress
- name: Run Unit Tests
run: |
sleep 40s
docker-compose exec -T app composer test
- name: Stop and Remove Docker Containers
run: docker-compose down