Skip to content

Commit 9f77ee2

Browse files
authored
Merge pull request #6755 from paulbalandan/oracle-image
Streamline Oracle docker image
2 parents e358932 + cf2ce4c commit 9f77ee2

File tree

2 files changed

+14
-26
lines changed

2 files changed

+14
-26
lines changed

.github/workflows/test-phpunit.yml

Lines changed: 13 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ concurrency:
3333

3434
env:
3535
COVERAGE_PHP_VERSION: '8.1'
36+
NLS_LANG: 'AMERICAN_AMERICA.UTF8'
37+
NLS_DATE_FORMAT: 'YYYY-MM-DD HH24:MI:SS'
38+
NLS_TIMESTAMP_FORMAT: 'YYYY-MM-DD HH24:MI:SS'
39+
NLS_TIMESTAMP_TZ_FORMAT: 'YYYY-MM-DD HH24:MI:SS'
3640

3741
jobs:
3842
tests:
@@ -82,12 +86,18 @@ jobs:
8286
options: --health-cmd="/opt/mssql-tools/bin/sqlcmd -S 127.0.0.1 -U sa -P 1Secure*Password1 -Q 'SELECT @@VERSION'" --health-interval=10s --health-timeout=5s --health-retries=3
8387

8488
oracle:
85-
image: quillbuilduser/oracle-18-xe
89+
image: gvenzl/oracle-xe:21
8690
env:
87-
ORACLE_ALLOW_REMOTE: true
91+
ORACLE_RANDOM_PASSWORD: true
92+
APP_USER: ORACLE
93+
APP_USER_PASSWORD: ORACLE
8894
ports:
8995
- 1521:1521
90-
options: --health-cmd="/opt/oracle/product/18c/dbhomeXE/bin/sqlplus -s sys/Oracle18@oracledbxe/XE as sysdba <<< 'SELECT 1 FROM DUAL'" --health-interval=10s --health-timeout=5s --health-retries=3
96+
options: >-
97+
--health-cmd healthcheck.sh
98+
--health-interval 20s
99+
--health-timeout 10s
100+
--health-retries 10
91101
92102
redis:
93103
image: redis
@@ -105,28 +115,6 @@ jobs:
105115
if: matrix.db-platforms == 'SQLSRV'
106116
run: sqlcmd -S 127.0.0.1 -U sa -P 1Secure*Password1 -Q "CREATE DATABASE test"
107117

108-
- name: Install Oracle InstantClient
109-
if: matrix.db-platforms == 'OCI8'
110-
run: |
111-
sudo apt-get install wget libaio1 alien
112-
sudo wget https://download.oracle.com/otn_software/linux/instantclient/185000/oracle-instantclient18.5-basic-18.5.0.0.0-3.x86_64.rpm
113-
sudo wget https://download.oracle.com/otn_software/linux/instantclient/185000/oracle-instantclient18.5-devel-18.5.0.0.0-3.x86_64.rpm
114-
sudo wget https://download.oracle.com/otn_software/linux/instantclient/185000/oracle-instantclient18.5-sqlplus-18.5.0.0.0-3.x86_64.rpm
115-
sudo alien oracle-instantclient18.5-basic-18.5.0.0.0-3.x86_64.rpm
116-
sudo alien oracle-instantclient18.5-devel-18.5.0.0.0-3.x86_64.rpm
117-
sudo alien oracle-instantclient18.5-sqlplus-18.5.0.0.0-3.x86_64.rpm
118-
sudo dpkg -i oracle-instantclient18.5-basic_18.5.0.0.0-4_amd64.deb oracle-instantclient18.5-devel_18.5.0.0.0-4_amd64.deb oracle-instantclient18.5-sqlplus_18.5.0.0.0-4_amd64.deb
119-
echo "LD_LIBRARY_PATH=/lib/oracle/18.5/client64/lib/" >> $GITHUB_ENV
120-
echo "NLS_LANG=AMERICAN_AMERICA.UTF8" >> $GITHUB_ENV
121-
echo "C_INCLUDE_PATH=/usr/include/oracle/18.5/client64" >> $GITHUB_ENV
122-
echo 'NLS_DATE_FORMAT=YYYY-MM-DD HH24:MI:SS' >> $GITHUB_ENV
123-
echo 'NLS_TIMESTAMP_FORMAT=YYYY-MM-DD HH24:MI:SS' >> $GITHUB_ENV
124-
echo 'NLS_TIMESTAMP_TZ_FORMAT=YYYY-MM-DD HH24:MI:SS' >> $GITHUB_ENV
125-
126-
- name: Create database for Oracle Database
127-
if: matrix.db-platforms == 'OCI8'
128-
run: echo -e "ALTER SESSION SET CONTAINER = XEPDB1;\nCREATE BIGFILE TABLESPACE \"TEST\" DATAFILE '/opt/oracle/product/18c/dbhomeXE/dbs/TEST' SIZE 10M AUTOEXTEND ON MAXSIZE UNLIMITED SEGMENT SPACE MANAGEMENT AUTO EXTENT MANAGEMENT LOCAL AUTOALLOCATE;\nCREATE USER \"ORACLE\" IDENTIFIED BY \"ORACLE\" DEFAULT TABLESPACE \"TEST\" TEMPORARY TABLESPACE TEMP QUOTA UNLIMITED ON \"TEST\";\nGRANT CONNECT,RESOURCE TO \"ORACLE\";\nexit;" | /lib/oracle/18.5/client64/bin/sqlplus -s sys/Oracle18@localhost:1521/XE as sysdba
129-
130118
- name: Checkout
131119
uses: actions/checkout@v3
132120

tests/_support/Database/Seeds/CITestSeeder.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ public function run()
167167
}
168168

169169
if ($this->db->DBDriver === 'OCI8') {
170-
$this->db->query('alter session set NLS_DATE_FORMAT=?', ['YYYY/MM/DD HH24:MI:SS']);
170+
$this->db->query('alter session set NLS_DATE_FORMAT=?', ['YYYY-MM-DD HH24:MI:SS']);
171171
$data['type_test'][0]['type_time'] = '2020-07-18 15:22:00';
172172
$data['type_test'][0]['type_date'] = '2020-01-11 22:11:00';
173173
$data['type_test'][0]['type_time'] = '2020-07-18 15:22:00';

0 commit comments

Comments
 (0)