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.3 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 libcurl4-openssl-dev \ 57 libxml2-dev \ 58 libxslt1-dev \ 59 libpq-dev \ 60 libreadline-dev \ 61 libldap2-dev \ 62 libsodium-dev \ 63 libargon2-0-dev \ 64 libmm-dev \ 65 libsnmp-dev \ 66 snmpd \ 67 `#snmp-mibs-downloader` \ 68 freetds-dev \ 69 `#unixodbc-dev` \ 70 dovecot-core \ 71 dovecot-pop3d \ 72 dovecot-imapd \ 73 sendmail \ 74 firebird-dev \ 75 liblmdb-dev \ 76 libtokyocabinet-dev \ 77 libdb-dev \ 78 libqdbm-dev \ 79 libjpeg-dev \ 80 libpng-dev \ 81 libfreetype6-dev 82 - run: 83 name: ./configure 84 command: | 85 ./buildconf -f 86 ./configure \ 87 --enable-debug \ 88 --enable-zts \ 89 --enable-option-checking=fatal \ 90 --prefix=/usr \ 91 --enable-phpdbg \ 92 --enable-fpm \ 93 --enable-opcache \ 94 --with-pdo-mysql=mysqlnd \ 95 --with-mysqli=mysqlnd \ 96 --with-pgsql \ 97 --with-pdo-pgsql \ 98 --with-pdo-sqlite \ 99 --enable-intl \ 100 --without-pear \ 101 --enable-gd \ 102 --with-jpeg \ 103 --with-webp \ 104 --with-freetype \ 105 --with-xpm \ 106 --enable-exif \ 107 --with-zip \ 108 --with-zlib \ 109 --enable-soap \ 110 --enable-xmlreader \ 111 --with-xsl \ 112 --with-tidy \ 113 --enable-sysvsem \ 114 --enable-sysvshm \ 115 --enable-shmop \ 116 --enable-pcntl \ 117 --with-readline \ 118 --enable-mbstring \ 119 --with-curl \ 120 --with-gettext \ 121 --enable-sockets \ 122 --with-bz2 \ 123 --with-openssl \ 124 --with-gmp \ 125 --enable-bcmath \ 126 --enable-calendar \ 127 --enable-ftp \ 128 --with-enchant=/usr \ 129 --enable-sysvmsg \ 130 --with-ffi \ 131 --enable-zend-test \ 132 --enable-dl-test=shared \ 133 --with-ldap \ 134 --with-ldap-sasl \ 135 --with-password-argon2 \ 136 --with-mhash \ 137 --with-sodium \ 138 --enable-dba \ 139 --with-cdb \ 140 --enable-flatfile \ 141 --enable-inifile \ 142 --with-tcadb \ 143 --with-lmdb \ 144 --with-qdbm \ 145 --with-snmp \ 146 `#--with-unixODBC` \ 147 `#--with-pdo-odbc=unixODBC,/usr` \ 148 --with-config-file-path=/etc \ 149 --with-config-file-scan-dir=/etc/php.d \ 150 --with-pdo-firebird \ 151 `#--with-pdo-dblib` \ 152 --disable-phpdbg \ 153 `#--enable-werror` 154 - run: 155 name: make 156 command: make -j2 > /dev/null 157 - run: 158 name: make install 159 command: | 160 sudo make install 161 sudo mkdir -p /etc/php.d 162 sudo chmod 777 /etc/php.d 163 echo opcache.enable_cli=1 > /etc/php.d/opcache.ini 164 echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini 165 - run: 166 name: Test 167 no_output_timeout: 30m 168 command: | 169 sapi/cli/php run-tests.php \ 170 -d zend_extension=opcache.so \ 171 -d opcache.enable_cli=1 \ 172 -d opcache.jit_buffer_size=64M \ 173 -d opcache.jit=tracing \ 174 -d zend_test.observer.enabled=1 \ 175 -d zend_test.observer.show_output=0 \ 176 -P -q -x -j2 \ 177 -g FAIL,BORK,LEAK,XLEAK \ 178 --no-progress \ 179 --offline \ 180 --show-diff \ 181 --show-slow 1000 \ 182 --set-timeout 120 \ 183 --repeat 2 184 185workflows: 186 push-workflow: 187 jobs: 188 - arm 189