Skip to content

Commit b702023

Browse files
committed
Migrate CI to GitHub actions
1 parent 05023a2 commit b702023

File tree

15 files changed

+922
-0
lines changed

15 files changed

+922
-0
lines changed

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

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: apt
2+
runs:
3+
using: composite
4+
steps:
5+
- shell: bash
6+
run: |
7+
sudo dpkg --add-architecture i386
8+
sudo apt-get update -y | true
9+
sudo apt-get install -y gcc-multilib
10+
sudo apt-get install -y g++-multilib
11+
sudo apt-get purge -y libxml2
12+
# TODO: Reenable postgresql + postgresql-contrib packages once they work again.
13+
sudo apt-get purge -y libpq5
14+
sudo apt-get install -y libc6:i386
15+
sudo apt-get install -y bison \
16+
re2c \
17+
locales \
18+
language-pack-de \
19+
libssl-dev:i386 \
20+
zlib1g-dev:i386 \
21+
libxml2-dev:i386 \
22+
libgmp-dev:i386 \
23+
libicu-dev:i386 \
24+
libtidy-dev:i386 \
25+
libaspell-dev:i386 \
26+
libpspell-dev:i386 \
27+
libsasl2-dev:i386 \
28+
libxpm-dev:i386 \
29+
libjpeg-dev:i386 \
30+
libpng-dev:i386 \
31+
libzip-dev:i386 \
32+
libbz2-dev:i386 \
33+
libsqlite3-dev:i386 \
34+
libwebp-dev:i386 \
35+
libonig-dev:i386 \
36+
libkrb5-dev:i386 \
37+
libgssapi-krb5-2:i386 \
38+
libcurl4-openssl-dev:i386 \
39+
libxml2-dev:i386 \
40+
libxslt1-dev:i386 \
41+
libpq-dev:i386 \
42+
libreadline-dev:i386 \
43+
libffi-dev:i386 \
44+
libfreetype6-dev:i386 \
45+
libsodium-dev:i386

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

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
name: apt
2+
runs:
3+
using: composite
4+
steps:
5+
- shell: bash
6+
run: |
7+
sudo apt install bison \
8+
re2c \
9+
locales \
10+
ldap-utils \
11+
openssl \
12+
slapd \
13+
language-pack-de \
14+
libgmp-dev \
15+
libicu-dev \
16+
libtidy-dev \
17+
libenchant-dev \
18+
libaspell-dev \
19+
libpspell-dev \
20+
libsasl2-dev \
21+
libxpm-dev \
22+
libzip-dev \
23+
libsqlite3-dev \
24+
libwebp-dev \
25+
libonig-dev \
26+
libkrb5-dev \
27+
libgssapi-krb5-2 \
28+
libcurl4-openssl-dev \
29+
libxml2-dev \
30+
libxslt1-dev \
31+
libpq-dev \
32+
libreadline-dev \
33+
libldap2-dev \
34+
libsodium-dev \
35+
libargon2-0-dev \
36+
libmm-dev \
37+
libsnmp-dev \
38+
postgresql \
39+
postgresql-contrib \
40+
snmpd \
41+
snmp-mibs-downloader \
42+
freetds-dev \
43+
unixodbc-dev \
44+
llvm \
45+
libc-client-dev \
46+
dovecot-core \
47+
dovecot-pop3d \
48+
dovecot-imapd \
49+
sendmail \
50+
firebird-dev \
51+
liblmdb-dev \
52+
libtokyocabinet-dev \
53+
libdb-dev \
54+
libqdbm-dev \
55+
libjpeg-dev \
56+
libpng-dev \
57+
libfreetype6-dev
58+
mkdir /opt/oracle
59+
wget https://download.oracle.com/otn_software/linux/instantclient/instantclient-basiclite-linuxx64.zip
60+
unzip instantclient-basiclite-linuxx64.zip
61+
wget https://download.oracle.com/otn_software/linux/instantclient/instantclient-sdk-linuxx64.zip
62+
unzip instantclient-sdk-linuxx64.zip
63+
mv instantclient_*_* /opt/oracle/instantclient
64+
# Interferes with libldap2 headers.
65+
rm /opt/oracle/instantclient/sdk/include/ldap.h

.github/actions/brew/action.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: brew
2+
runs:
3+
using: composite
4+
steps:
5+
- shell: bash
6+
run: |
7+
brew install pkg-config \
8+
autoconf \
9+
bison \
10+
re2c
11+
brew install openssl@1.1 \
12+
krb5 \
13+
bzip2 \
14+
enchant \
15+
libffi \
16+
libpng \
17+
webp \
18+
freetype \
19+
intltool \
20+
icu4c \
21+
libiconv \
22+
zlib \
23+
t1lib \
24+
gd \
25+
libzip \
26+
gmp \
27+
tidyp \
28+
libxml2 \
29+
libxslt \
30+
postgresql
31+
brew link icu4c gettext --force
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
name: ./configure
2+
inputs:
3+
configurationParameters:
4+
default: ''
5+
required: false
6+
runs:
7+
using: composite
8+
steps:
9+
- shell: bash
10+
run: |
11+
./buildconf --force
12+
export CFLAGS="-m32 -msse2"
13+
export CXXFLAGS="-m32 -msse2"
14+
export LDFLAGS=-L/usr/lib/i386-linux-gnu
15+
export PKG_CONFIG=/usr/bin/i686-linux-gnu-pkg-config
16+
./configure \
17+
--enable-option-checking=fatal \
18+
--build=i686-pc-linux-gnu \
19+
--prefix=/usr \
20+
--enable-phpdbg \
21+
--enable-fpm \
22+
--enable-intl \
23+
--with-pdo-mysql=mysqlnd \
24+
--with-mysqli=mysqlnd \
25+
--with-pgsql \
26+
--with-pdo-pgsql \
27+
--with-pdo-sqlite \
28+
--without-pear \
29+
--enable-gd \
30+
--with-jpeg \
31+
--with-webp \
32+
--with-freetype \
33+
--with-xpm \
34+
--enable-exif \
35+
--with-zip \
36+
--with-zlib \
37+
--with-zlib-dir=/usr \
38+
--enable-soap \
39+
--enable-xmlreader \
40+
--with-xsl \
41+
--with-tidy \
42+
--enable-sysvsem \
43+
--enable-sysvshm \
44+
--enable-shmop \
45+
--enable-pcntl \
46+
--with-readline \
47+
--enable-mbstring \
48+
--with-curl \
49+
--with-gettext \
50+
--enable-sockets \
51+
--with-bz2 \
52+
--with-openssl \
53+
--with-gmp \
54+
--enable-bcmath \
55+
--enable-calendar \
56+
--enable-ftp \
57+
--with-pspell=/usr \
58+
--with-kerberos \
59+
--enable-sysvmsg \
60+
--with-ffi \
61+
--enable-zend-test \
62+
--with-mhash \
63+
--with-sodium \
64+
--enable-dba \
65+
--enable-werror \
66+
--with-config-file-path=/etc \
67+
--with-config-file-scan-dir=/etc/php.d \
68+
${{ inputs.configurationParameters }}
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
name: ./configure
2+
inputs:
3+
configurationParameters:
4+
default: ''
5+
required: false
6+
runs:
7+
using: composite
8+
steps:
9+
- shell: bash
10+
run: |
11+
export PATH="/usr/local/opt/bison/bin:$PATH"
12+
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/openssl@1.1/lib/pkgconfig"
13+
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/krb5/lib/pkgconfig"
14+
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/libffi/lib/pkgconfig"
15+
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/libxml2/lib/pkgconfig"
16+
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/libxslt/lib/pkgconfig"
17+
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/zlib/lib/pkgconfig"
18+
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/local/opt/icu4c/lib/pkgconfig"
19+
./buildconf --force
20+
./configure \
21+
--enable-option-checking=fatal \
22+
--prefix=/usr/local \
23+
--enable-fpm \
24+
--with-pdo-mysql=mysqlnd \
25+
--with-mysqli=mysqlnd \
26+
--with-pgsql=/usr/local/opt/libpq \
27+
--with-pdo-pgsql=/usr/local/opt/libpq \
28+
--with-pdo-sqlite \
29+
--without-pear \
30+
--enable-gd \
31+
--with-jpeg \
32+
--with-webp \
33+
--with-freetype \
34+
--enable-exif \
35+
--with-zip \
36+
--with-zlib \
37+
--enable-soap \
38+
--enable-xmlreader \
39+
--with-xsl \
40+
--with-tidy=/usr/local/opt/tidyp \
41+
--with-libxml \
42+
--enable-sysvsem \
43+
--enable-sysvshm \
44+
--enable-shmop \
45+
--enable-pcntl \
46+
--with-readline=/usr/local/opt/readline \
47+
--enable-mbstring \
48+
--with-curl \
49+
--with-gettext=/usr/local/opt/gettext \
50+
--enable-sockets \
51+
--with-bz2=/usr/local/opt/bzip2 \
52+
--with-openssl \
53+
--with-gmp=/usr/local/opt/gmp \
54+
--with-iconv=/usr/local/opt/libiconv \
55+
--enable-bcmath \
56+
--enable-calendar \
57+
--enable-ftp \
58+
--with-pspell=/usr/local/opt/aspell \
59+
--with-kerberos \
60+
--enable-sysvmsg \
61+
--with-ffi \
62+
--enable-zend-test \
63+
--enable-intl \
64+
--with-mhash \
65+
--with-sodium \
66+
--enable-dba \
67+
--enable-werror \
68+
--with-config-file-path=/etc \
69+
--with-config-file-scan-dir=/etc/php.d \
70+
${{ inputs.configurationParameters }}
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
name: ./configure
2+
inputs:
3+
configurationParameters:
4+
default: ''
5+
required: false
6+
runs:
7+
using: composite
8+
steps:
9+
- shell: bash
10+
run: |
11+
./buildconf --force
12+
./configure \
13+
--enable-option-checking=fatal \
14+
--prefix=/usr \
15+
--enable-phpdbg \
16+
--enable-fpm \
17+
--with-pdo-mysql=mysqlnd \
18+
--with-mysqli=mysqlnd \
19+
--with-pgsql \
20+
--with-pdo-pgsql \
21+
--with-pdo-sqlite \
22+
--enable-intl \
23+
--without-pear \
24+
--enable-gd \
25+
--with-jpeg \
26+
--with-webp \
27+
--with-freetype \
28+
--with-xpm \
29+
--enable-exif \
30+
--with-zip \
31+
--with-zlib \
32+
--with-zlib-dir=/usr \
33+
--enable-soap \
34+
--enable-xmlreader \
35+
--with-xsl \
36+
--with-tidy \
37+
--enable-sysvsem \
38+
--enable-sysvshm \
39+
--enable-shmop \
40+
--enable-pcntl \
41+
--with-readline \
42+
--enable-mbstring \
43+
--with-curl \
44+
--with-gettext \
45+
--enable-sockets \
46+
--with-bz2 \
47+
--with-openssl \
48+
--with-gmp \
49+
--enable-bcmath \
50+
--enable-calendar \
51+
--enable-ftp \
52+
--with-pspell=/usr \
53+
--with-enchant=/usr \
54+
--with-kerberos \
55+
--enable-sysvmsg \
56+
--with-ffi \
57+
--enable-zend-test \
58+
--with-ldap \
59+
--with-ldap-sasl \
60+
--with-password-argon2 \
61+
--with-mhash \
62+
--with-sodium \
63+
--enable-dba \
64+
--with-cdb \
65+
--enable-flatfile \
66+
--enable-inifile \
67+
--with-tcadb \
68+
--with-lmdb \
69+
--with-qdbm \
70+
--with-snmp \
71+
--with-unixODBC \
72+
--with-imap \
73+
--with-kerberos \
74+
--with-imap-ssl \
75+
--with-pdo-odbc=unixODBC,/usr \
76+
--with-pdo-firebird \
77+
--with-pdo-dblib \
78+
--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient \
79+
--with-oci8=shared,instantclient,/opt/oracle/instantclient \
80+
--enable-werror \
81+
--with-config-file-path=/etc \
82+
--with-config-file-scan-dir=/etc/php.d \
83+
${{ inputs.configurationParameters }}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
name: Install
2+
runs:
3+
using: composite
4+
steps:
5+
- shell: bash
6+
run: |
7+
set -e
8+
sudo make install
9+
sudo mkdir /etc/php.d
10+
sudo chmod 777 /etc/php.d
11+
echo mysqli.default_socket=/var/run/mysqld/mysqld.sock > /etc/php.d/mysqli.ini
12+
echo pdo_mysql.default_socket=/var/run/mysqld/mysqld.sock > /etc/php.d/pdo_mysql.ini
13+
echo opcache.enable_cli=1 >> /etc/php.d/opcache.ini
14+
echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini

.github/actions/mssql/action.yml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: Create mssql container
2+
runs:
3+
using: composite
4+
steps:
5+
- shell: bash
6+
run: |
7+
docker run \
8+
-e "ACCEPT_EULA=Y" \
9+
-e "SA_PASSWORD=<YourStrong@Passw0rd>" \
10+
-p 1433:1433 \
11+
--name sql1 \
12+
-h sql1 \
13+
-d mcr.microsoft.com/mssql/server:2019-CU8-ubuntu-16.04

0 commit comments

Comments
 (0)