Skip to content

Commit 48fc885

Browse files
committed
Add Solaris to Github CI
1 parent a4bb5b9 commit 48fc885

File tree

4 files changed

+128
-0
lines changed

4 files changed

+128
-0
lines changed

.github/actions/solaris/action.yml

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
name: Solaris
2+
inputs:
3+
configurationParameters:
4+
default: ''
5+
required: false
6+
runExtraTests:
7+
default: false
8+
required: false
9+
runs:
10+
using: composite
11+
steps:
12+
- name: Solaris
13+
uses: vmactions/solaris-vm@v1
14+
with:
15+
release: "11.4-gcc"
16+
usesh: true
17+
copyback: false
18+
# Temporarily disable sqlite, as FreeBSD ships it with disabled double quotes. We'll need to fix our tests.
19+
# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269889
20+
prepare: |
21+
cd $GITHUB_WORKSPACE
22+
23+
OPCACHE_TLS_TESTS_DEPS="gcc"
24+
25+
./buildconf -f
26+
CC=gcc CXX=g++ \
27+
./configure \
28+
--prefix=/usr/local \
29+
--enable-debug \
30+
--enable-option-checking=fatal \
31+
--enable-fpm \
32+
`#--with-pdo-sqlite` \
33+
--without-sqlite3 \
34+
--without-pdo-sqlite \
35+
--without-pear \
36+
--with-bz2 \
37+
--with-avif \
38+
--with-jpeg \
39+
--with-webp \
40+
--with-freetype \
41+
--enable-gd \
42+
--enable-exif \
43+
--with-zip \
44+
--with-zlib \
45+
--enable-soap \
46+
--enable-xmlreader \
47+
--with-xsl \
48+
--with-libxml \
49+
--enable-shmop \
50+
--enable-pcntl \
51+
--enable-mbstring \
52+
--with-curl \
53+
--enable-sockets \
54+
--with-openssl \
55+
--with-iconv=/usr/local \
56+
--enable-bcmath \
57+
--enable-calendar \
58+
--enable-ftp \
59+
--with-ffi \
60+
--enable-zend-test \
61+
--enable-dl-test=shared \
62+
--enable-intl \
63+
--with-mhash \
64+
--with-sodium \
65+
--enable-werror \
66+
--with-config-file-path=/etc \
67+
--with-config-file-scan-dir=/etc/php.d \
68+
${{ inputs.configurationParameters }}
69+
70+
gmake -j2
71+
mkdir /etc/php.d
72+
gmake install > /dev/null
73+
echo opcache.enable_cli=1 > /etc/php.d/opcache.ini
74+
echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini
75+
echo opcache.preload_user=root >> /etc/php.d/opcache.ini
76+
run: |
77+
cd $GITHUB_WORKSPACE
78+
79+
export SKIP_IO_CAPTURE_TESTS=1
80+
export CI_NO_IPV6=1
81+
export STACK_LIMIT_DEFAULTS_CHECK=1
82+
sapi/cli/php run-tests.php \
83+
-P -q -j2 \
84+
-g FAIL,BORK,LEAK,XLEAK \
85+
--no-progress \
86+
--offline \
87+
--show-diff \
88+
--show-slow 1000 \
89+
--set-timeout 120
90+
91+
if test "${{ inputs.runExtraTests }}" = "true"; then
92+
sapi/cli/php run-extra-tests.php
93+
fi

.github/workflows/nightly.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,9 @@ on:
2626
run_freebsd_zts:
2727
required: true
2828
type: boolean
29+
run_solaris_zts:
30+
required: true
31+
type: boolean
2932
ubuntu_version:
3033
required: true
3134
type: string
@@ -1080,3 +1083,24 @@ jobs:
10801083
configurationParameters: >-
10811084
--${{ matrix.zts && 'enable' || 'disable' }}-zts
10821085
runExtraTests: true
1086+
SOLARIS:
1087+
strategy:
1088+
fail-fast: false
1089+
matrix:
1090+
zts: [true, false]
1091+
exclude:
1092+
- zts: ${{ !inputs.run_solaris_zts && true || '*never*' }}
1093+
name: "FREEBSD_${{ matrix.zts && 'ZTS' || 'NTS' }}"
1094+
runs-on: ubuntu-latest
1095+
timeout-minutes: 50
1096+
steps:
1097+
- name: git checkout
1098+
uses: actions/checkout@v5
1099+
with:
1100+
ref: ${{ inputs.branch }}
1101+
- name: FreeBSD
1102+
uses: ./.github/actions/solaris
1103+
with:
1104+
configurationParameters: >-
1105+
--${{ matrix.zts && 'enable' || 'disable' }}-zts
1106+
runExtraTests: true

.github/workflows/push.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,3 +373,13 @@ jobs:
373373
uses: actions/checkout@v5
374374
- name: FreeBSD
375375
uses: ./.github/actions/freebsd
376+
SOLARIS:
377+
if: github.repository == 'php/php-src' || github.event_name == 'pull_request'
378+
name: SOLARIS
379+
runs-on: ubuntu-latest
380+
timeout-minutes: 50
381+
steps:
382+
- name: git checkout
383+
uses: actions/checkout@v5
384+
- name: Solaris
385+
uses: ./.github/actions/solaris

.github/workflows/root.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ jobs:
5656
run_linux_ppc64: ${{ (matrix.branch.version[0] == 8 && matrix.branch.version[1] >= 4) || matrix.branch.version[0] >= 9 }}
5757
run_macos_arm64: ${{ (matrix.branch.version[0] == 8 && matrix.branch.version[1] >= 4) || matrix.branch.version[0] >= 9 }}
5858
run_freebsd_zts: ${{ (matrix.branch.version[0] == 8 && matrix.branch.version[1] >= 3) || matrix.branch.version[0] >= 9 }}
59+
run_solaris_zts: ${{ (matrix.branch.version[0] == 8 && matrix.branch.version[1] >= 3) || matrix.branch.version[0] >= 9 }}
5960
ubuntu_version: ${{
6061
(((matrix.branch.version[0] == 8 && matrix.branch.version[1] >= 5) || matrix.branch.version[0] >= 9) && '24.04')
6162
|| '22.04' }}

0 commit comments

Comments
 (0)