From 5849a0ea597886c4f86ec8c216bc83e19ff4c95f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Wed, 6 Mar 2019 13:06:59 +0100 Subject: [PATCH] WIP: oracle tests on drone MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- .drone.yml | 7 +++++++ before_install_oracle.sh | 20 ++++++++++++++++++++ tests/drone-server-setup.sh | 9 +++++++++ 3 files changed, 36 insertions(+) create mode 100644 before_install_oracle.sh diff --git a/.drone.yml b/.drone.yml index 670f8442..821f9fe9 100644 --- a/.drone.yml +++ b/.drone.yml @@ -121,6 +121,13 @@ services: when: matrix: DB: postgres + oracle: + image: deepdiver/docker-oracle-xe-11g:2.0 + environment: + - ORACLE_DISABLE_ASYNCH_IO=true + when: + matrix: + DB: oracle matrix: include: diff --git a/before_install_oracle.sh b/before_install_oracle.sh new file mode 100644 index 00000000..81690919 --- /dev/null +++ b/before_install_oracle.sh @@ -0,0 +1,20 @@ +#!/bin/bash +# TODO: Move this to a docker container as installing the oracle client takes quite long + +# build php module +apt-get update && apt-get install -qq --force-yes libaio1 sudo +git clone https://github.com/DeepDiver1975/oracle_instant_client_for_ubuntu_64bit.git instantclient +cd instantclient +bash -c 'printf "\n" | python system_setup.py' + +export ORACLE_HOME=/usr/lib/oracle/11.2/client64 + +mkdir -p /usr/lib/oracle/11.2/client64/rdbms/ +ln -s /usr/include/oracle/11.2/client64/ /usr/lib/oracle/11.2/client64/rdbms/public + +printf "/usr/lib/oracle/11.2/client64\n" | pecl install oci8 + +# TODO: make this work on other php versions +echo "extension=oci8.so" >> /etc/php/7.1/mods-available/oci8.ini +phpenmod oci8 + diff --git a/tests/drone-server-setup.sh b/tests/drone-server-setup.sh index 8d754c65..14d961d0 100644 --- a/tests/drone-server-setup.sh +++ b/tests/drone-server-setup.sh @@ -50,6 +50,15 @@ if [[ "$DB" == "postgres" ]] ; then DB="pgsql" fi +if [ "$DB" == "oracle" ] ; then + export DATABASEHOST="oracle:1521" + + if [ ! -f before_install_oracle.sh ]; then + wget https://raw.githubusercontent.com/nextcloud/travis_ci/master/before_install_oracle.sh + fi + bash ./before_install_oracle.sh +fi + # TODO: oracle export DATABASEHOST="$DATABASEHOST"