From 83d52ddb7b5176ce74b36969ffdc3fb98a55cbff Mon Sep 17 00:00:00 2001 From: Ilija Tovilo Date: Tue, 10 Oct 2023 13:06:10 +0200 Subject: [PATCH] Move ARM build to CircleCI --- .circleci/config.yml | 197 +++++++++++++++++ .cirrus.yml | 200 ------------------ .github/workflows/push.yml | 2 + .../tests/pdo_mysql___construct.phpt | 2 +- ext/standard/tests/file/bug52820.phpt | 2 +- 5 files changed, 201 insertions(+), 202 deletions(-) create mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000000000..2320d2baca9c2 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,197 @@ +version: 2.1 + +jobs: + arm: + resource_class: arm.medium + docker: + - image: cimg/base:current-22.04 + - image: mysql:8 + environment: + MYSQL_ALLOW_EMPTY_PASSWORD: true + MYSQL_ROOT_PASSWORD: '' + MYSQL_DATABASE: test + - image: postgres:16 + environment: + POSTGRES_PASSWORD: postgres + POSTGRES_DB: test + environment: + LANGUAGE: '' + LANG: en_US.UTF-8 + MYSQL_TEST_HOST: '127.0.0.1' + MYSQL_TEST_PASSWD: '' + MYSQL_TEST_USER: root + PDO_MYSQL_TEST_DSN: 'mysql:host=127.0.0.1;dbname=test' + PDO_MYSQL_TEST_PASS: '' + PDO_MYSQL_TEST_USER: root + PDO_PGSQL_TEST_DSN: 'pgsql:host=127.0.0.1 port=5432 dbname=test user=postgres password=postgres' + steps: + - checkout + - run: + name: apt + command: | + export DEBIAN_FRONTEND=noninteractive + sudo apt-get update -y + sudo apt-get install -y \ + gcc \ + g++ \ + autoconf \ + bison \ + re2c \ + locales \ + locales-all \ + ldap-utils \ + openssl \ + slapd \ + libgmp-dev \ + libicu-dev \ + libtidy-dev \ + libenchant-2-dev \ + libaspell-dev \ + libpspell-dev \ + libsasl2-dev \ + libxpm-dev \ + libzip-dev \ + libbz2-dev \ + libsqlite3-dev \ + libwebp-dev \ + libonig-dev \ + libkrb5-dev \ + libgssapi-krb5-2 \ + libcurl4-openssl-dev \ + libxml2-dev \ + libxslt1-dev \ + libpq-dev \ + libreadline-dev \ + libldap2-dev \ + libsodium-dev \ + libargon2-0-dev \ + libmm-dev \ + libsnmp-dev \ + snmpd \ + `#snmp-mibs-downloader` \ + freetds-dev \ + `#unixodbc-dev` \ + libc-client-dev \ + dovecot-core \ + dovecot-pop3d \ + dovecot-imapd \ + sendmail \ + firebird-dev \ + liblmdb-dev \ + libtokyocabinet-dev \ + libdb-dev \ + libqdbm-dev \ + libjpeg-dev \ + libpng-dev \ + libfreetype6-dev + - run: + name: ./configure + command: | + ./buildconf -f + ./configure \ + --enable-debug \ + --enable-zts \ + --enable-option-checking=fatal \ + --prefix=/usr \ + --enable-phpdbg \ + --enable-fpm \ + --enable-opcache \ + --with-pdo-mysql=mysqlnd \ + --with-mysqli=mysqlnd \ + --with-pgsql \ + --with-pdo-pgsql \ + --with-pdo-sqlite \ + --enable-intl \ + --without-pear \ + --enable-gd \ + --with-jpeg \ + --with-webp \ + --with-freetype \ + --with-xpm \ + --enable-exif \ + --with-zip \ + --with-zlib \ + --with-zlib-dir=/usr \ + --enable-soap \ + --enable-xmlreader \ + --with-xsl \ + --with-tidy \ + --enable-sysvsem \ + --enable-sysvshm \ + --enable-shmop \ + --enable-pcntl \ + --with-readline \ + --enable-mbstring \ + --with-curl \ + --with-gettext \ + --enable-sockets \ + --with-bz2 \ + --with-openssl \ + --with-gmp \ + --enable-bcmath \ + --enable-calendar \ + --enable-ftp \ + --with-pspell=/usr \ + --with-enchant=/usr \ + --with-kerberos \ + --enable-sysvmsg \ + --with-ffi \ + --enable-zend-test \ + --enable-dl-test=shared \ + --with-ldap \ + --with-ldap-sasl \ + --with-password-argon2 \ + --with-mhash \ + --with-sodium \ + --enable-dba \ + --with-cdb \ + --enable-flatfile \ + --enable-inifile \ + --with-tcadb \ + --with-lmdb \ + --with-qdbm \ + --with-snmp \ + `#--with-unixODBC` \ + --with-imap \ + --with-kerberos \ + --with-imap-ssl \ + `#--with-pdo-odbc=unixODBC,/usr` \ + `#--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient` \ + `#--with-oci8=shared,instantclient,/opt/oracle/instantclient` \ + --with-config-file-path=/etc \ + --with-config-file-scan-dir=/etc/php.d \ + --with-pdo-firebird \ + `#--with-pdo-dblib` \ + --disable-phpdbg \ + `#--enable-werror` + - run: + name: make + command: make -j2 > /dev/null + - run: + name: make install + command: | + sudo make install + sudo mkdir -p /etc/php.d + sudo chmod 777 /etc/php.d + echo opcache.enable_cli=1 > /etc/php.d/opcache.ini + echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini + - run: + name: Test + command: | + sapi/cli/php run-tests.php \ + -d zend_extension=opcache.so \ + -d opcache.enable_cli=1 \ + -d opcache.jit_buffer_size=16M \ + -d opcache.jit=tracing \ + -P -q -x -j2 \ + -g FAIL,BORK,LEAK,XLEAK \ + --offline \ + --show-diff \ + --show-slow 1000 \ + --set-timeout 120 \ + --repeat 2 + +workflows: + push-workflow: + jobs: + - arm diff --git a/.cirrus.yml b/.cirrus.yml index 9ef70fb59191c..dc66631d98072 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -27,203 +27,3 @@ freebsd_task: - export SKIP_IO_CAPTURE_TESTS=1 - export CI_NO_IPV6=1 - sapi/cli/php run-tests.php -P -q -j2 -g FAIL,XFAIL,BORK,WARN,LEAK,XLEAK,SKIP --offline --show-diff --show-slow 1000 --set-timeout 120 -d zend_extension=opcache.so - -arm_task: - name: ARM_DEBUG_NTS - only_if: $CIRRUS_CRON == 'nightly' || $CIRRUS_CHANGE_TITLE =~ '.*\[ci arm\].*' - arm_container: - image: debian:11 - additional_containers: - - name: mysql - image: mysql:8 - port: 3306 - cpu: 1.0 - memory: 1G - env: - MYSQL_ALLOW_EMPTY_PASSWORD: true - MYSQL_ROOT_PASSWORD: "" - MYSQL_DATABASE: "test" - - name: postgres - image: postgres:latest - port: 5432 - env: - POSTGRES_PASSWORD: "postgres" - POSTGRES_DB: "test" - install_script: - - export DEBIAN_FRONTEND=noninteractive - - apt-get update -y - - >- - apt-get install -y - gcc - g++ - autoconf - bison - re2c - locales - locales-all - ldap-utils - openssl - slapd - libgmp-dev - libicu-dev - libtidy-dev - libenchant-2-dev - libaspell-dev - libpspell-dev - libsasl2-dev - libxpm-dev - libzip-dev - libbz2-dev - libsqlite3-dev - libwebp-dev - libonig-dev - libkrb5-dev - libgssapi-krb5-2 - libcurl4-openssl-dev - libxml2-dev - libxslt1-dev - libpq-dev - libreadline-dev - libldap2-dev - libsodium-dev - libargon2-0-dev - libmm-dev - libsnmp-dev - snmpd - `#snmp-mibs-downloader` - freetds-dev - `#unixodbc-dev` - libc-client-dev - dovecot-core - dovecot-pop3d - dovecot-imapd - sendmail - firebird-dev - liblmdb-dev - libtokyocabinet-dev - libdb-dev - libqdbm-dev - libjpeg-dev - libpng-dev - libfreetype6-dev - build_script: - - ./buildconf -f - - >- - ./configure - --enable-debug - --enable-zts - --enable-option-checking=fatal - --prefix=/usr - --enable-phpdbg - --enable-fpm - --enable-opcache - --with-pdo-mysql=mysqlnd - --with-mysqli=mysqlnd - --with-pgsql - --with-pdo-pgsql - --with-pdo-sqlite - --enable-intl - --without-pear - --enable-gd - --with-jpeg - --with-webp - --with-freetype - --with-xpm - --enable-exif - --with-zip - --with-zlib - --with-zlib-dir=/usr - --enable-soap - --enable-xmlreader - --with-xsl - --with-tidy - --enable-sysvsem - --enable-sysvshm - --enable-shmop - --enable-pcntl - --with-readline - --enable-mbstring - --with-curl - --with-gettext - --enable-sockets - --with-bz2 - --with-openssl - --with-gmp - --enable-bcmath - --enable-calendar - --enable-ftp - --with-pspell=/usr - --with-enchant=/usr - --with-kerberos - --enable-sysvmsg - --with-ffi - --enable-zend-test - --enable-dl-test=shared - --with-ldap - --with-ldap-sasl - --with-password-argon2 - --with-mhash - --with-sodium - --enable-dba - --with-cdb - --enable-flatfile - --enable-inifile - --with-tcadb - --with-lmdb - --with-qdbm - --with-snmp - `#--with-unixODBC` - --with-imap - --with-kerberos - --with-imap-ssl - `#--with-pdo-odbc=unixODBC,/usr` - `#--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient` - `#--with-oci8=shared,instantclient,/opt/oracle/instantclient` - --with-config-file-path=/etc - --with-config-file-scan-dir=/etc/php.d - --with-pdo-firebird - `#--with-pdo-dblib` - --disable-phpdbg - `#--enable-werror` - - make -j2 > /dev/null - - make install - - mkdir -p /etc/php.d - - echo opcache.enable_cli=1 > /etc/php.d/opcache.ini - - echo opcache.protect_memory=1 >> /etc/php.d/opcache.ini - # Specify opcache.preload_user as we're running as root. - - echo opcache.preload_user=root >> /etc/php.d/opcache.ini - tests_script: - - export SKIP_IO_CAPTURE_TESTS=1 - - export CI_NO_IPV6=1 - - export MYSQL_TEST_HOST=127.0.0.1 - - export MYSQL_TEST_USER=root - - export MYSQL_TEST_PASSWD= - - export PDO_MYSQL_TEST_DSN="mysql:host=127.0.0.1;dbname=test" - - export PDO_MYSQL_TEST_USER=root - - export PDO_MYSQL_TEST_PASS= - - export PDO_PGSQL_TEST_DSN="pgsql:host=127.0.0.1 port=5432 dbname=test user=postgres password=postgres" - - >- - sapi/cli/php run-tests.php - -d zend_extension=opcache.so - -d opcache.enable_cli=1 - -d opcache.jit_buffer_size=16M - -d opcache.jit=function - -P -q -x -j2 - -g FAIL,BORK,LEAK,XLEAK - --offline - --show-diff - --show-slow 1000 - --set-timeout 120 - - >- - sapi/cli/php run-tests.php - -d zend_extension=opcache.so - -d opcache.enable_cli=1 - -d opcache.jit_buffer_size=16M - -d opcache.jit=tracing - -P -q -x -j2 - -g FAIL,BORK,LEAK,XLEAK - --offline - --show-diff - --show-slow 1000 - --set-timeout 120 - --repeat 2 diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index 37bdccd884a90..3cd2fbad0f73e 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -12,6 +12,7 @@ on: - .cirrus.yml - .travis.yml - travis/* + - .circleci/* branches: - PHP-7.4 - PHP-8.0 @@ -29,6 +30,7 @@ on: - .cirrus.yml - .travis.yml - travis/* + - .circleci/* branches: - '**' concurrency: diff --git a/ext/pdo_mysql/tests/pdo_mysql___construct.phpt b/ext/pdo_mysql/tests/pdo_mysql___construct.phpt index 1f009185267c5..aa52764dea2c7 100644 --- a/ext/pdo_mysql/tests/pdo_mysql___construct.phpt +++ b/ext/pdo_mysql/tests/pdo_mysql___construct.phpt @@ -6,7 +6,7 @@ pdo_mysql --FILE-- --FILE--