diff --git a/.github/actions/apt-x64/action.yml b/.github/actions/apt-x64/action.yml index a5b0db49e827..abae59c8fdea 100644 --- a/.github/actions/apt-x64/action.yml +++ b/.github/actions/apt-x64/action.yml @@ -5,6 +5,7 @@ runs: - shell: bash run: | set -x + sudo apt-get update sudo apt-get install \ bison \ @@ -58,11 +59,15 @@ runs: libjpeg-dev \ libpng-dev \ libfreetype6-dev + mkdir /opt/oracle wget -nv https://download.oracle.com/otn_software/linux/instantclient/instantclient-basiclite-linuxx64.zip unzip instantclient-basiclite-linuxx64.zip && rm instantclient-basiclite-linuxx64.zip wget -nv https://download.oracle.com/otn_software/linux/instantclient/instantclient-sdk-linuxx64.zip unzip instantclient-sdk-linuxx64.zip && rm instantclient-sdk-linuxx64.zip mv instantclient_*_* /opt/oracle/instantclient - # Interferes with libldap2 headers. + # interferes with libldap2 headers rm /opt/oracle/instantclient/sdk/include/ldap.h + # fix debug build warning: zend_signal: handler was replaced for signal (2) after startup + echo DISABLE_INTERRUPT=on > /opt/oracle/instantclient/network/admin/sqlnet.ora + sudo sh -c 'echo /opt/oracle/instantclient >/etc/ld.so.conf.d/oracle-instantclient.conf && ldconfig' diff --git a/.github/actions/install-linux/action.yml b/.github/actions/install-linux/action.yml index e0f6726dbd1d..7ac2ae4c4fcb 100644 --- a/.github/actions/install-linux/action.yml +++ b/.github/actions/install-linux/action.yml @@ -10,3 +10,5 @@ runs: sudo chmod 777 /etc/php.d echo mysqli.default_socket=/var/run/mysqld/mysqld.sock > /etc/php.d/mysqli.ini echo pdo_mysql.default_socket=/var/run/mysqld/mysqld.sock > /etc/php.d/pdo_mysql.ini + echo extension=oci8.so > /etc/php.d/oci8.ini + echo extension=pdo_oci.so > /etc/php.d/pdo_oci.ini diff --git a/.github/actions/mssql/action.yml b/.github/actions/setup-mssql/action.yml similarity index 91% rename from .github/actions/mssql/action.yml rename to .github/actions/setup-mssql/action.yml index 894380644c1e..c069744a21b5 100644 --- a/.github/actions/mssql/action.yml +++ b/.github/actions/setup-mssql/action.yml @@ -1,4 +1,4 @@ -name: Create mssql container +name: Create MSSQL container runs: using: composite steps: diff --git a/.github/actions/setup-oracle/action.yml b/.github/actions/setup-oracle/action.yml new file mode 100644 index 000000000000..11c16fe93d52 --- /dev/null +++ b/.github/actions/setup-oracle/action.yml @@ -0,0 +1,13 @@ +name: Create Oracle container +runs: + using: composite + steps: + - shell: bash + run: | + set -x + docker run \ + -e "ORACLE_PASSWORD=pass" \ + -p 1521:1521 \ + --name oracle \ + -h oracle \ + -d gvenzl/oracle-xe:slim diff --git a/.github/actions/setup-x64/action.yml b/.github/actions/setup-x64/action.yml index 6cec51d4c807..bb014bfe9de1 100644 --- a/.github/actions/setup-x64/action.yml +++ b/.github/actions/setup-x64/action.yml @@ -17,7 +17,7 @@ runs: docker exec sql1 /opt/mssql-tools/bin/sqlcmd -S 127.0.0.1 -U SA -P "" -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;" sudo locale-gen de_DE - ./.github/scripts/setup-slapd.sh + ./.github/scripts/setup-slapd.sh &>/dev/null sudo cp ext/snmp/tests/snmpd.conf /etc/snmp sudo cp ext/snmp/tests/bigtest /etc/snmp diff --git a/.github/actions/test-linux/action.yml b/.github/actions/test-linux/action.yml index c7dab609820d..7db8fa58900d 100644 --- a/.github/actions/test-linux/action.yml +++ b/.github/actions/test-linux/action.yml @@ -17,6 +17,12 @@ runs: export PDO_DBLIB_TEST_DSN="dblib:host=127.0.0.1;dbname=master;version=7.0" export PDO_DBLIB_TEST_USER="pdo_test" export PDO_DBLIB_TEST_PASS="password" + export PHP_OCI8_TEST_USER="system" + export PHP_OCI8_TEST_PASS="pass" + export PHP_OCI8_TEST_DB="localhost/XEPDB1" + export PDO_OCI_TEST_USER="system" + export PDO_OCI_TEST_PASS="pass" + export PDO_OCI_TEST_DSN="oci:dbname=localhost/XEPDB1;charset=AL32UTF8" export SKIP_IO_CAPTURE_TESTS=1 sapi/cli/php run-tests.php -P -q ${{ inputs.runTestsParameters }} \ -j$(/usr/bin/nproc) \ diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 33c9335ef72d..b5e28b2fdd8f 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -47,8 +47,10 @@ jobs: uses: actions/checkout@v2 with: ref: ${{ matrix.branch.ref }} - - name: Create mssql container - uses: ./.github/actions/mssql + - name: Create MSSQL container + uses: ./.github/actions/setup-mssql + - name: Create Oracle container + uses: ./.github/actions/setup-oracle - name: apt uses: ./.github/actions/apt-x64 - name: ./configure diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index bd05e60d8957..520a701a0de4 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -32,8 +32,10 @@ jobs: steps: - name: git checkout uses: actions/checkout@v2 - - name: Create mssql container - uses: ./.github/actions/mssql + - name: Create MSSQL container + uses: ./.github/actions/setup-mssql + - name: Create Oracle container + uses: ./.github/actions/setup-oracle - name: apt uses: ./.github/actions/apt-x64 - name: ./configure