|
12 | 12 |
|
13 | 13 | strategy:
|
14 | 14 | matrix:
|
15 |
| - php: ['7.1', '7.4'] |
| 15 | + php: ['7.2', '7.4'] |
16 | 16 |
|
17 | 17 | services:
|
18 | 18 | redis:
|
@@ -40,19 +40,69 @@ jobs:
|
40 | 40 | image: rabbitmq:3.8.3
|
41 | 41 | ports:
|
42 | 42 | - 5672:5672
|
| 43 | + mongodb: |
| 44 | + image: mongo |
| 45 | + ports: |
| 46 | + - 27017:27017 |
| 47 | + couchbase: |
| 48 | + image: couchbase:6.5.1 |
| 49 | + ports: |
| 50 | + - 8091:8091 |
| 51 | + - 8092:8092 |
| 52 | + - 8093:8093 |
| 53 | + - 8094:8094 |
| 54 | + - 11210:11210 |
| 55 | + sqs: |
| 56 | + image: asyncaws/testing-sqs |
| 57 | + ports: |
| 58 | + - 9494:9494 |
| 59 | + zookeeper: |
| 60 | + image: wurstmeister/zookeeper:3.4.6 |
| 61 | + kafka: |
| 62 | + image: wurstmeister/kafka:2.12-2.4.1 |
| 63 | + ports: |
| 64 | + - 9092:9092 |
| 65 | + env: |
| 66 | + KAFKA_AUTO_CREATE_TOPICS_ENABLE: false |
| 67 | + KAFKA_CREATE_TOPICS: 'test-topic:1:1:compact' |
| 68 | + KAFKA_ADVERTISED_HOST_NAME: localhost |
| 69 | + KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181' |
| 70 | + KAFKA_ADVERTISED_PORT: 9092 |
43 | 71 |
|
44 | 72 | steps:
|
45 | 73 | - name: Checkout
|
46 | 74 | uses: actions/checkout@v2
|
47 | 75 |
|
| 76 | + - name: Install system dependencies |
| 77 | + run: | |
| 78 | + echo "::group::add apt sources" |
| 79 | + sudo wget -O - http://packages.couchbase.com/ubuntu/couchbase.key | sudo apt-key add - |
| 80 | + echo "deb http://packages.couchbase.com/ubuntu bionic bionic/main" | sudo tee /etc/apt/sources.list.d/couchbase.list |
| 81 | + echo "::endgroup::" |
| 82 | +
|
| 83 | + echo "::group::apt-get update" |
| 84 | + sudo apt-get update |
| 85 | + echo "::endgroup::" |
| 86 | +
|
| 87 | + echo "::group::install tools & libraries" |
| 88 | + sudo apt-get install libcouchbase-dev librdkafka-dev |
| 89 | + echo "::endgroup::" |
| 90 | +
|
| 91 | + - name: Configure Couchbase |
| 92 | + run: | |
| 93 | + curl -s -u 'username=Administrator&password=111111' -X POST http://localhost:8091/node/controller/setupServices -d 'services=kv%2Cn1ql%2Cindex%2Cfts' |
| 94 | + curl -s -X POST http://localhost:8091/settings/web -d 'username=Administrator&password=111111&port=SAME' |
| 95 | + curl -s -u Administrator:111111 -X POST http://localhost:8091/pools/default/buckets -d 'ramQuotaMB=100&bucketType=ephemeral&name=cache' |
| 96 | + curl -s -u Administrator:111111 -X POST http://localhost:8091/pools/default -d 'memoryQuota=256' |
| 97 | +
|
48 | 98 | - name: Setup PHP
|
49 | 99 | uses: shivammathur/setup-php@v2
|
50 | 100 | with:
|
51 | 101 | coverage: "none"
|
52 |
| - extensions: "memcached,redis,xsl" |
| 102 | + extensions: "json,couchbase,memcached,mongodb,redis,rdkafka,xsl" |
53 | 103 | ini-values: "memory_limit=-1"
|
54 | 104 | php-version: "${{ matrix.php }}"
|
55 |
| - tools: flex |
| 105 | + tools: flex,pecl |
56 | 106 |
|
57 | 107 | - name: Configure composer
|
58 | 108 | run: |
|
@@ -89,7 +139,11 @@ jobs:
|
89 | 139 | REDIS_CLUSTER_HOSTS: 'localhost:7000 localhost:7001 localhost:7002 localhost:7003 localhost:7004 localhost:7005'
|
90 | 140 | MESSENGER_REDIS_DSN: redis://127.0.0.1:7006/messages
|
91 | 141 | MESSENGER_AMQP_DSN: amqp://localhost/%2f/messages
|
| 142 | + MESSENGER_SQS_DSN: "sqs://localhost:9494/messages?sslmode=disable&poll_timeout=0.01" |
| 143 | + MESSENGER_SQS_FIFO_QUEUE_DSN: "sqs://localhost:9494/messages.fifo?sslmode=disable&poll_timeout=0.01" |
92 | 144 | MEMCACHED_HOST: localhost
|
| 145 | + MONGODB_HOST: localhost |
| 146 | + KAFKA_BROKER: localhost:9092 |
93 | 147 |
|
94 | 148 | - name: Run HTTP push tests
|
95 | 149 | if: matrix.php == '7.4'
|
|
0 commit comments