Skip to content

Commit 37974f1

Browse files
committed
Add Alpine testing to CI
1 parent bac3628 commit 37974f1

File tree

5 files changed

+126
-89
lines changed

5 files changed

+126
-89
lines changed

.github/actions/apt-x64/action.yml

Lines changed: 89 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -5,59 +5,95 @@ runs:
55
- shell: bash
66
run: |
77
set -x
8-
sudo apt-get update
9-
sudo apt-get install \
10-
bison \
11-
re2c \
12-
locales \
13-
ldap-utils \
14-
openssl \
15-
slapd \
16-
language-pack-de \
17-
libgmp-dev \
18-
libicu-dev \
19-
libtidy-dev \
20-
libenchant-dev \
21-
libaspell-dev \
22-
libpspell-dev \
23-
libsasl2-dev \
24-
libxpm-dev \
25-
libzip-dev \
26-
libsqlite3-dev \
27-
libwebp-dev \
28-
libonig-dev \
29-
libkrb5-dev \
30-
libgssapi-krb5-2 \
31-
libcurl4-openssl-dev \
32-
libxml2-dev \
33-
libxslt1-dev \
34-
libpq-dev \
35-
libreadline-dev \
36-
libldap2-dev \
37-
libsodium-dev \
38-
libargon2-0-dev \
39-
libmm-dev \
40-
libsnmp-dev \
41-
postgresql \
42-
postgresql-contrib \
43-
snmpd \
44-
snmp-mibs-downloader \
45-
freetds-dev \
46-
unixodbc-dev \
47-
llvm \
48-
libc-client-dev \
49-
dovecot-core \
50-
dovecot-pop3d \
51-
dovecot-imapd \
52-
sendmail \
53-
firebird-dev \
54-
liblmdb-dev \
55-
libtokyocabinet-dev \
56-
libdb-dev \
57-
libqdbm-dev \
58-
libjpeg-dev \
59-
libpng-dev \
60-
libfreetype6-dev
8+
9+
if [ -f /etc/alpine-release ]; then
10+
apk update -q
11+
apk add \
12+
build-base \
13+
autoconf \
14+
bison \
15+
re2c \
16+
pkgconf \
17+
aspell-dev \
18+
bzip2-dev \
19+
curl-dev \
20+
freetype-dev \
21+
gettext-dev \
22+
gnu-libiconv-dev \
23+
gmp-dev \
24+
icu-dev \
25+
jpeg-dev \
26+
libffi-dev \
27+
libpng-dev \
28+
libsodium-dev \
29+
libwebp-dev \
30+
libxml2-dev \
31+
libxpm-dev \
32+
libxslt-dev \
33+
libzip-dev \
34+
oniguruma-dev \
35+
openssl-dev \
36+
readline-dev \
37+
sqlite-dev \
38+
tidyhtml-dev \
39+
tzdata
40+
else
41+
export ENV DEBIAN_FRONTEND=noninteractive
42+
apt-get -y -qq update
43+
apt-get install -y -q \
44+
bison \
45+
re2c \
46+
locales \
47+
ldap-utils \
48+
openssl \
49+
slapd \
50+
language-pack-de \
51+
libgmp-dev \
52+
libicu-dev \
53+
libtidy-dev \
54+
libenchant-dev \
55+
libaspell-dev \
56+
libpspell-dev \
57+
libsasl2-dev \
58+
libxpm-dev \
59+
libzip-dev \
60+
libsqlite3-dev \
61+
libwebp-dev \
62+
libonig-dev \
63+
libkrb5-dev \
64+
libgssapi-krb5-2 \
65+
libcurl4-openssl-dev \
66+
libxml2-dev \
67+
libxslt1-dev \
68+
libpq-dev \
69+
libreadline-dev \
70+
libldap2-dev \
71+
libsodium-dev \
72+
libargon2-0-dev \
73+
libmm-dev \
74+
libsnmp-dev \
75+
postgresql \
76+
postgresql-contrib \
77+
snmpd \
78+
snmp-mibs-downloader \
79+
freetds-dev \
80+
unixodbc-dev \
81+
llvm \
82+
libc-client-dev \
83+
dovecot-core \
84+
dovecot-pop3d \
85+
dovecot-imapd \
86+
sendmail \
87+
firebird-dev \
88+
liblmdb-dev \
89+
libtokyocabinet-dev \
90+
libdb-dev \
91+
libqdbm-dev \
92+
libjpeg-dev \
93+
libpng-dev \
94+
libfreetype6-dev
95+
fi
96+
6197
mkdir /opt/oracle
6298
wget -nv https://download.oracle.com/otn_software/linux/instantclient/instantclient-basiclite-linuxx64.zip
6399
unzip instantclient-basiclite-linuxx64.zip && rm instantclient-basiclite-linuxx64.zip

.github/actions/install-linux/action.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ runs:
55
- shell: bash
66
run: |
77
set -x
8-
sudo make install
9-
sudo mkdir /etc/php.d
10-
sudo chmod 777 /etc/php.d
8+
make install
9+
mkdir /etc/php.d
10+
chmod 777 /etc/php.d
1111
echo mysqli.default_socket=/var/run/mysqld/mysqld.sock > /etc/php.d/mysqli.ini
1212
echo pdo_mysql.default_socket=/var/run/mysqld/mysqld.sock > /etc/php.d/pdo_mysql.ini

.github/actions/mssql/action.yml

Lines changed: 0 additions & 14 deletions
This file was deleted.

.github/actions/setup-x64/action.yml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,25 @@ runs:
66
run: |
77
set -x
88
9-
sudo service mysql start
10-
sudo service postgresql start
11-
sudo service slapd start
9+
service mysql start
10+
service postgresql start
11+
service slapd start
1212
mysql -uroot -proot -e "CREATE DATABASE IF NOT EXISTS test"
1313
# Ensure local_infile tests can run.
1414
mysql -uroot -proot -e "SET GLOBAL local_infile = true"
15-
sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"
16-
sudo -u postgres psql -c "CREATE DATABASE test;"
15+
-u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"
16+
-u postgres psql -c "CREATE DATABASE test;"
1717
docker exec sql1 /opt/mssql-tools/bin/sqlcmd -S 127.0.0.1 -U SA -P "<YourStrong@Passw0rd>" -Q "create login pdo_test with password='password', check_policy=off; create user pdo_test for login pdo_test; grant alter, control to pdo_test;"
18-
sudo locale-gen de_DE
18+
locale-gen de_DE
1919
2020
./.github/scripts/setup-slapd.sh
2121
22-
sudo cp ext/snmp/tests/snmpd.conf /etc/snmp
23-
sudo cp ext/snmp/tests/bigtest /etc/snmp
24-
sudo service snmpd restart
22+
cp ext/snmp/tests/snmpd.conf /etc/snmp
23+
cp ext/snmp/tests/bigtest /etc/snmp
24+
service snmpd restart
2525
26-
sudo groupadd -g 5000 vmail
27-
sudo useradd -m -d /var/vmail -s /bin/false -u 5000 -g vmail vmail
28-
sudo cp ext/imap/tests/setup/dovecot.conf /etc/dovecot/dovecot.conf
29-
sudo cp ext/imap/tests/setup/dovecotpass /etc/dovecot/dovecotpass
30-
sudo service dovecot restart
26+
groupadd -g 5000 vmail
27+
useradd -m -d /var/vmail -s /bin/false -u 5000 -g vmail vmail
28+
cp ext/imap/tests/setup/dovecot.conf /etc/dovecot/dovecot.conf
29+
cp ext/imap/tests/setup/dovecotpass /etc/dovecot/dovecotpass
30+
service dovecot restart

.github/workflows/push.yml

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,17 +23,31 @@ jobs:
2323
fail-fast: false
2424
matrix:
2525
include:
26-
- debug: true
26+
- alpine: false
27+
debug: true
2728
zts: false
28-
- debug: false
29+
# - alpine: false
30+
# debug: false
31+
# zts: true
32+
- alpine: true
33+
debug: true
2934
zts: true
30-
name: "LINUX_X64_${{ matrix.debug && 'DEBUG' || 'RELEASE' }}_${{ matrix.zts && 'ZTS' || 'NTS' }}"
35+
name: "${{ matrix.alpine && 'ALPINE' || 'LINUX' }}_X64_${{ matrix.debug && 'DEBUG' || 'RELEASE' }}_${{ matrix.zts && 'ZTS' || 'NTS' }}"
3136
runs-on: ubuntu-20.04
37+
container:
38+
image: "${{ matrix.alpine && 'alpine:3.15' || 'ubuntu:focal' }}"
39+
services:
40+
mssql:
41+
image: mcr.microsoft.com/mssql/server:2019-latest
42+
env:
43+
ACCEPT_EULA: Y
44+
SA_PASSWORD: '<YourStrong@Passw0rd>'
3245
steps:
46+
- name: apt install bash/git
47+
if: matrix.alpine
48+
run: apk update -q && apk add bash git
3349
- name: git checkout
3450
uses: actions/checkout@v2
35-
- name: Create mssql container
36-
uses: ./.github/actions/mssql
3751
- name: apt
3852
uses: ./.github/actions/apt-x64
3953
- name: ./configure
@@ -61,6 +75,7 @@ jobs:
6175
uses: ./.github/actions/verify-generated-files
6276
MACOS_DEBUG_NTS:
6377
runs-on: macos-10.15
78+
if: false
6479
steps:
6580
- name: git checkout
6681
uses: actions/checkout@v2

0 commit comments

Comments
 (0)