Skip to content

Commit 0835636

Browse files
committed
Add windows extension matrix tests
1 parent 687dcf4 commit 0835636

File tree

1 file changed

+120
-0
lines changed

1 file changed

+120
-0
lines changed
Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
name: "Extension matrix tests PHP 8.4 (Windows)"
2+
3+
on:
4+
workflow_dispatch:
5+
schedule:
6+
- cron: "0 1 * * 5"
7+
8+
jobs:
9+
test:
10+
name: "${{ matrix.extension }} (PHP ${{ matrix.php-version }} on ${{ matrix.operating-system }})"
11+
runs-on: ${{ matrix.operating-system }}
12+
strategy:
13+
fail-fast: false
14+
matrix:
15+
extension:
16+
- amqp
17+
- apcu
18+
- bcmath
19+
- bz2
20+
- calendar
21+
- ctype
22+
- curl
23+
- dba
24+
- dom
25+
- ds
26+
- exif
27+
- ffi
28+
- fileinfo
29+
- filter
30+
- ftp
31+
- gd
32+
- iconv
33+
- igbinary
34+
- libxml
35+
- mbregex
36+
- mbstring
37+
- mysqli
38+
- mysqlnd
39+
- opcache
40+
- openssl
41+
- pdo
42+
- pdo_mysql
43+
- pdo_sqlite
44+
- pdo_sqlsrv
45+
- phar
46+
- rar
47+
- redis
48+
- session
49+
- shmop
50+
- simdjson
51+
- simplexml
52+
- soap
53+
- sockets
54+
- sqlite3
55+
- sqlsrv
56+
- ssh2
57+
- sysvshm
58+
- tokenizer
59+
- xml
60+
- xmlreader
61+
- xmlwriter
62+
- yac
63+
- yaml
64+
- zip
65+
- zlib
66+
php-version:
67+
- "8.4"
68+
operating-system:
69+
- "windows-latest"
70+
71+
steps:
72+
- name: "Checkout"
73+
uses: "actions/checkout@v4"
74+
75+
- name: "Checkout remote"
76+
if: github.repository != 'crazywhalecc/static-php-cli'
77+
uses: actions/checkout@v4
78+
with:
79+
repository: crazywhalecc/static-php-cli
80+
ref: main
81+
82+
- name: "Setup PHP"
83+
uses: shivammathur/setup-php@v2
84+
with:
85+
php-version: 8.4
86+
tools: pecl, composer
87+
extensions: curl, openssl, mbstring, filter
88+
ini-values: memory_limit=-1
89+
90+
- name: "Cache composer packages"
91+
id: composer-cache
92+
uses: actions/cache@v4
93+
with:
94+
path: vendor
95+
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
96+
restore-keys: |
97+
${{ runner.os }}-php
98+
99+
- id: cache-download
100+
uses: actions/cache@v4
101+
with:
102+
path: downloads
103+
key: php-${{ matrix.php-version }}-dependencies-for-tests-windows
104+
105+
- name: "Install Dependencies"
106+
run: composer update -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist --no-dev
107+
108+
- name: "Validate SPC powershell script"
109+
run: bin/spc --version
110+
111+
# If there's no dependencies cache, fetch sources
112+
- name: "Download sources"
113+
env:
114+
GITHUB_TOKEN: ${{ secrets.S_GITHUB_TOKEN }}
115+
run: bin/spc download --with-php=${{ matrix.php-version }} --for-extensions=${{ matrix.extension }}
116+
117+
- name: "Build library: ${{ matrix.extension }}"
118+
run: |
119+
bin/spc doctor --auto-fix
120+
bin/spc build --build-cli --build-micro ${{ matrix.extension }} --debug --with-suggested-libs --with-suggested-exts

0 commit comments

Comments
 (0)