1version: 2.1 2 3jobs: 4 arm: 5 resource_class: arm.medium 6 docker: 7 - image: cimg/base:current-22.04 8 - image: mysql:8 9 environment: 10 MYSQL_ALLOW_EMPTY_PASSWORD: true 11 MYSQL_ROOT_PASSWORD: '' 12 MYSQL_DATABASE: test 13 - image: postgres:16 14 environment: 15 POSTGRES_PASSWORD: postgres 16 POSTGRES_DB: test 17 environment: 18 LANGUAGE: '' 19 LANG: en_US.UTF-8 20 MYSQL_TEST_HOST: '127.0.0.1' 21 MYSQL_TEST_PASSWD: '' 22 MYSQL_TEST_USER: root 23 PDO_MYSQL_TEST_DSN: 'mysql:host=127.0.0.1;dbname=test' 24 PDO_MYSQL_TEST_PASS: '' 25 PDO_MYSQL_TEST_USER: root 26 PDO_PGSQL_TEST_DSN: 'pgsql:host=127.0.0.1 port=5432 dbname=test user=postgres password=postgres' 27 steps: 28 - checkout 29 - run: 30 name: apt 31 command: | 32 export DEBIAN_FRONTEND=noninteractive 33 sudo apt-get update -y 34 sudo apt-get install -y \ 35 gcc \ 36 g++ \ 37 autoconf \ 38 bison \ 39 re2c \ 40 locales \ 41 locales-all \ 42 ldap-utils \ 43 openssl \ 44 slapd \ 45 libgmp-dev \ 46 libicu-dev \ 47 libtidy-dev \ 48 libenchant-2-dev \ 49 libsasl2-dev \ 50 libxpm-dev \ 51 libzip-dev \ 52 libbz2-dev \ 53 libsqlite3-dev \ 54 libwebp-dev \ 55 libonig-dev \ 56 libkrb5-dev \ 57 libgssapi-krb5-2 \ 58 libcurl4-openssl-dev \ 59 libxml2-dev \ 60 libxslt1-dev \ 61 libpq-dev \ 62 libreadline-dev \ 63 libldap2-dev \ 64 libsodium-dev \ 65 libargon2-0-dev \ 66 libmm-dev \ 67 libsnmp-dev \ 68 snmpd \ 69 `#snmp-mibs-downloader` \ 70 freetds-dev \ 71 `#unixodbc-dev` \ 72 libc-client-dev \ 73 dovecot-core \ 74 dovecot-pop3d \ 75 dovecot-imapd \ 76 sendmail \ 77 firebird-dev \ 78 liblmdb-dev \ 79 libtokyocabinet-dev \ 80 libdb-dev \ 81 libqdbm-dev \ 82 libjpeg-dev \ 83 libpng-dev \ 84 libfreetype6-dev 85 - run: 86 name: ./configure 87 command: | 88 ./buildconf -f 89 ./configure \ 90 --enable-debug \ 91 --enable-zts \ 92 --enable-option-checking=fatal \ 93 --prefix=/usr \ 94 --enable-phpdbg \ 95 --enable-fpm \ 96 --enable-opcache \ 97 --with-pdo-mysql=mysqlnd \ 98 --with-mysqli=mysqlnd \ 99 --with-pgsql \ 100 --with-pdo-pgsql \ 101 --with-pdo-sqlite \ 102 --enable-intl \ 103 --without-pear \ 104 --enable-gd \ 105 --with-jpeg \ 106 --with-webp \ 107 --with-freetype \ 108 --with-xpm \ 109 --enable-exif \ 110 --with-zip \ 111 --with-zlib \ 112 --enable-soap \ 113 --enable-xmlreader \ 114 --with-xsl \ 115 --with-tidy \ 116 --enable-sysvsem \ 117 --enable-sysvshm \ 118 --enable-shmop \ 119 --enable-pcntl \ 120 --with-readline \ 121 --enable-mbstring \ 122 --with-curl \ 123 --with-gettext \ 124 --enable-sockets \ 125 --with-bz2 \ 126 --with-openssl \ 127 --with-gmp \ 128 --enable-bcmath \ 129 --enable-calendar \ 130 --enable-ftp \ 131 --with-enchant=/usr \ 132 --with-kerberos \ 133 --enable-sysvmsg \ 134 --with-ffi \ 135 --enable-zend-test \ 136 --enable-dl-test=shared \ 137 --with-ldap \ 138 --with-ldap-sasl \ 139 --with-password-argon2 \ 140 --with-mhash \ 141 --with-sodium \ 142 --enable-dba \ 143 --with-cdb \ 144 --enable-flatfile \ 145 --enable-inifile \ 146 --with-tcadb \ 147 --with-lmdb \ 148 --with-qdbm \ 149 --with-snmp \ 150 `#--with-unixODBC` \ 151 `#--with-pdo-odbc=unixODBC,/usr` \ 152 --with-config-file-path=/etc \ 153 --with-config-file-scan-dir=/etc/php.d \ 154 --with-pdo-firebird \ 155 `#--with-pdo-dblib` \ 156 --disable-phpdbg \ 157 `#--enable-werror` 158 - run: 159 name: make 160 command: make -j2 > /dev/null 161 - run: 162 name: make install 163 command: | 164 sudo make install 165 sudo mkdir -p /etc/php.d 166 sudo chmod 777 /etc/php.d 167 echo opcache.enable_cli=1 > /etc/php.d/opcache.ini 168 echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini 169 - run: 170 name: Test 171 no_output_timeout: 30m 172 command: | 173 sapi/cli/php run-tests.php \ 174 -d zend_extension=opcache.so \ 175 -d opcache.enable_cli=1 \ 176 -d opcache.jit_buffer_size=64M \ 177 -d opcache.jit=tracing \ 178 -P -q -x -j2 \ 179 -g FAIL,BORK,LEAK,XLEAK \ 180 --no-progress \ 181 --offline \ 182 --show-diff \ 183 --show-slow 1000 \ 184 --set-timeout 120 \ 185 --repeat 2 186 187workflows: 188 push-workflow: 189 jobs: 190 - arm 191