Skip to content

Disable OCI8.properties[:tcp_keepalive_time] feature on macOS arm64 #22

Disable OCI8.properties[:tcp_keepalive_time] feature on macOS arm64

Disable OCI8.properties[:tcp_keepalive_time] feature on macOS arm64 #22

Workflow file for this run

name: Tests
on: [push, pull_request]
jobs:
tests:
continue-on-error: ${{ matrix.experimental }}
strategy:
fail-fast: false
matrix:
ruby: [2.7, '3.0', 3.1, 3.2, 3.3]
experimental: [false]
include:
- ruby: 'truffleruby-head'
experimental: true
runs-on: ubuntu-latest
env:
NLS_LANG: AMERICAN_AMERICA.AL32UTF8
services:
oracle:
image: gvenzl/oracle-free:latest
env:
ORACLE_PASSWORD: sys_passwd
ports:
- 1521:1521
options: >-
--health-cmd healthcheck.sh
--health-interval 10s
--health-timeout 5s
--health-retries 10
steps:
- uses: actions/checkout@v4
- name: Install the latest Oracle instant client
run: |
curl -Lo basic.zip https://download.oracle.com/otn_software/linux/instantclient/instantclient-basic-linuxx64.zip
curl -Lo sqlplus.zip https://download.oracle.com/otn_software/linux/instantclient/instantclient-sqlplus-linuxx64.zip
curl -Lo sdk.zip https://download.oracle.com/otn_software/linux/instantclient/instantclient-sdk-linuxx64.zip
unzip basic.zip -x "META-INF/*"
unzip sqlplus.zip -x "META-INF/*"
unzip sdk.zip -x "META-INF/*"
IC_DIR=$PWD/$(ls -d instantclient*)
echo LD_LIBRARY_PATH=$IC_DIR:$LD_LIBRARY_PATH >> $GITHUB_ENV
echo $IC_DIR >> $GITHUB_PATH
- name: Get the Oracle container IP address
env:
ORACLE_SERVICE_ID: ${{ job.services.oracle.id }}
run: |
ORACLE_IP_ADDRESS=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{println .IPAddress}}{{end}}' $ORACLE_SERVICE_ID)
if test -z "$ORACLE_IP_ADDRESS"; then
echo "Cannot get ORACLE_IP_ADDRESS."
docker inspect $ORACLE_SERVICE_ID
exit 1
fi
echo TWO_TASK=//$ORACLE_IP_ADDRESS:1521/FREEPDB1 >> $GITHUB_ENV
- name: Enable OOB
env:
ORACLE_SERVICE_ID: ${{ job.services.oracle.id }}
run: |
docker exec $ORACLE_SERVICE_ID bash -c 'sed -i "s/^DISABLE_OOB/#DISABLE_OOB/; s/^BREAK_POLL_SKIP=1000/#BREAK_POLL_SKIP=1000/" "${ORACLE_BASE_HOME}/network/admin/sqlnet.ora"'
docker exec $ORACLE_SERVICE_ID lsnrctl reload
- name: Set up ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
- name: Run tests
run: |
echo 'exit' | sqlplus -L -S sys/sys_passwd AS SYSDBA @test/setup.sql
make check