11
11
name : " PHP ${{ matrix.php }} Laravel ${{ matrix.laravel }} MongoDB ${{ matrix.mongodb }} ${{ matrix.mode }}"
12
12
13
13
strategy :
14
- # Tests with Atlas fail randomly
15
- fail-fast : false
16
14
matrix :
17
15
os :
18
16
- " ubuntu-latest"
@@ -21,11 +19,12 @@ jobs:
21
19
- " 5.0"
22
20
- " 6.0"
23
21
- " 7.0"
24
- - " Atlas "
22
+ - " 8.0 "
25
23
php :
26
24
- " 8.1"
27
25
- " 8.2"
28
26
- " 8.3"
27
+ - " 8.4"
29
28
laravel :
30
29
- " 10.*"
31
30
- " 11.*"
38
37
- php : " 8.4"
39
38
laravel : " 11.*"
40
39
mongodb : " 7.0"
41
- mode : " ignore-php-req"
42
40
os : " ubuntu-latest"
43
41
exclude :
44
42
- php : " 8.1"
@@ -48,31 +46,19 @@ jobs:
48
46
- uses : " actions/checkout@v4"
49
47
50
48
- name : " Create MongoDB Replica Set"
51
- if : ${{ matrix.mongodb != 'Atlas' }}
52
49
run : |
53
50
docker run --name mongodb -p 27017:27017 -e MONGO_INITDB_DATABASE=unittest --detach mongo:${{ matrix.mongodb }} mongod --replSet rs --setParameter transactionLifetimeLimitSeconds=5
54
51
55
52
if [ "${{ matrix.mongodb }}" = "4.4" ]; then MONGOSH_BIN="mongo"; else MONGOSH_BIN="mongosh"; fi
56
- until docker exec --tty mongodb $MONGOSH_BIN 127.0.0.1:27017 --eval "db.runCommand({ ping: 1 })"; do
57
- sleep 1
58
- done
59
- sudo docker exec --tty mongodb $MONGOSH_BIN 127.0.0.1:27017 --eval "rs.initiate({\"_id\":\"rs\",\"members\":[{\"_id\":0,\"host\":\"127.0.0.1:27017\" }]})"
60
-
61
- - name : " Create MongoDB Atlas Local"
62
- if : ${{ matrix.mongodb == 'Atlas' }}
63
- run : |
64
- docker run --name mongodb -p 27017:27017 --detach mongodb/mongodb-atlas-local:latest
65
- until docker exec --tty mongodb mongosh 127.0.0.1:27017 --eval "db.runCommand({ ping: 1 })"; do
66
- sleep 1
67
- done
68
- until docker exec --tty mongodb mongosh 127.0.0.1:27017 --eval "db.createCollection('connection_test') && db.getCollection('connection_test').createSearchIndex({mappings:{dynamic: true}})"; do
53
+ until docker exec --tty mongodb $MONGOSH_BIN --eval "db.runCommand({ ping: 1 })"; do
69
54
sleep 1
70
55
done
56
+ sudo docker exec --tty mongodb $MONGOSH_BIN --eval "rs.initiate({\"_id\":\"rs\",\"members\":[{\"_id\":0,\"host\":\"127.0.0.1:27017\" }]})"
71
57
72
58
- name : " Show MongoDB server status"
73
59
run : |
74
60
if [ "${{ matrix.mongodb }}" = "4.4" ]; then MONGOSH_BIN="mongo"; else MONGOSH_BIN="mongosh"; fi
75
- docker exec --tty mongodb $MONGOSH_BIN 127.0.0.1:27017 --eval "db.runCommand({ serverStatus: 1 })"
61
+ docker exec --tty mongodb $MONGOSH_BIN --eval "db.runCommand({ serverStatus: 1 })"
76
62
77
63
- name : " Installing php"
78
64
uses : " shivammathur/setup-php@v2"
107
93
$([[ "${{ matrix.mode }}" == ignore-php-req ]] && echo ' --ignore-platform-req=php+')
108
94
- name : " Run tests"
109
95
run : |
110
- if [ "${{ matrix.mongodb }}" = "Atlas" ]; then
111
- export MONGODB_URI="mongodb://127.0.0.1:27017/"
112
- else
113
- export MONGODB_URI="mongodb://127.0.0.1:27017/?replicaSet=rs"
114
- fi
115
- ./vendor/bin/phpunit --coverage-clover coverage.xml
96
+ export MONGODB_URI="mongodb://127.0.0.1:27017/?replicaSet=rs"
97
+ ./vendor/bin/phpunit --coverage-clover coverage.xml --exclude-group atlas-search
0 commit comments