-
-
Notifications
You must be signed in to change notification settings - Fork 266
127 lines (109 loc) · 3.8 KB
/
test.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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
name: 'Tests'
on:
push:
branches:
- '6.x'
- '7.x'
pull_request:
schedule:
- cron: '30 8 * * 1'
jobs:
tests:
name: 'Tests'
strategy:
fail-fast: false
matrix:
include:
# Latest librdkafka 2.x with memcheck
- php: '8.3.0'
librdkafka: 'v2.6.0'
memcheck: '1'
- php: '8.2.0'
librdkafka: 'v2.6.0'
memcheck: '1'
- php: '8.1.0'
librdkafka: 'v2.6.0'
memcheck: '1'
# Latest librdkafka 1.x with memcheck
- php: '8.3.0'
librdkafka: 'v1.9.2'
memcheck: '1'
- php: '8.2.0'
librdkafka: 'v1.9.2'
memcheck: '1'
- php: '8.1.0'
librdkafka: 'v1.9.2'
memcheck: '1'
# X32
- php: '8.3.0'
librdkafka: 'v2.6.0'
arch: 'X32'
# Latest librdkafka 2.x
- php: '8.3.0'
librdkafka: 'v2.6.0'
- php: '8.2.0'
librdkafka: 'v2.6.0'
- php: '8.1.0'
librdkafka: 'v2.6.0'
# Latest librdkafka 1.x
- php: '8.3.0'
librdkafka: 'v1.9.2'
- php: '8.2.0'
librdkafka: 'v1.9.2'
- php: '8.1.0'
librdkafka: 'v1.9.2'
# librdkafka 1.7.0
- php: '8.3.0'
librdkafka: 'v1.7.0'
- php: '8.2.0'
librdkafka: 'v1.7.0'
- php: '8.1.0'
librdkafka: 'v1.7.0'
# librdkafka 1.6.1
- php: '8.1.0'
librdkafka: 'v1.6.1'
# librdkafka master (experimental, does not block PRs)
- php: '8.3.0'
librdkafka: 'master'
experimental: true
- php: '8.2.0'
librdkafka: 'master'
experimental: true
- php: '8.1.0'
librdkafka: 'master'
experimental: true
runs-on: 'ubuntu-20.04'
continue-on-error: ${{ !!matrix.experimental }}
env:
PHP_VERSION: ${{ matrix.php }}
LIBRDKAFKA_VERSION: ${{ matrix.librdkafka }}
MEMORY_CHECK: ${{ matrix.memcheck }}
SKIP_OAUTH: ${{ matrix.skipoauth }}
TEST_KAFKA_BROKERS: kafka:9092
TEST_KAFKA_BROKER_VERSION: 2.6
ARCH: ${{ matrix.arch }}
steps:
- name: 'Check out repository'
uses: 'actions/checkout@v2'
with:
path: 'php-rdkafka'
- uses: actions/cache@v2
with:
path: ~/build-cache/php
key: ${{ runner.os }}-${{ matrix.arch }}-${{ matrix.php }}-${{ matrix.memcheck }}
- uses: actions/cache@v2
with:
path: ~/build-cache/librdkafka
key: ${{ runner.os }}-${{ matrix.arch }}-${{ matrix.librdkafka }}
- name: 'Install dependencies'
run: './php-rdkafka/.github/workflows/test/install-dependencies.sh'
- name: 'Build librdkafka'
run: './php-rdkafka/.github/workflows/test/build-librdkafka.sh'
- name: 'Build PHP'
run: './php-rdkafka/.github/workflows/test/build-php.sh'
- name: 'Build php-rdkafka'
run: './php-rdkafka/.github/workflows/test/build-php-rdkafka.sh'
- name: 'Start Kafka'
run: './php-rdkafka/.github/workflows/test/start-kafka.sh'
- name: 'Run tests'
run: './php-rdkafka/.github/workflows/test/tests.sh'