From c44c08fa318760e724da938db45e58cf9f2f413e Mon Sep 17 00:00:00 2001 From: Rophy Tsai Date: Sat, 23 May 2026 11:43:05 +0000 Subject: [PATCH 1/4] refactor: allow OLR_IMAGE override in docker-compose files --- tests/dbz-twin/docker-compose.yaml | 2 +- tests/environments/enterprise-19/docker-compose.yaml | 2 +- tests/environments/free-23/docker-compose.yaml | 2 +- tests/environments/xe-21-official/docker-compose.yaml | 2 +- tests/environments/xe-21/docker-compose.yaml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/dbz-twin/docker-compose.yaml b/tests/dbz-twin/docker-compose.yaml index 8d5607b7..c6d19801 100644 --- a/tests/dbz-twin/docker-compose.yaml +++ b/tests/dbz-twin/docker-compose.yaml @@ -30,7 +30,7 @@ services: - ./output:/app/output olr: - image: olr-dev:${OLR_IMAGE_TAG:-latest} + image: ${OLR_IMAGE:-olr-dev:latest} container_name: dbz-olr entrypoint: ["/bin/bash", "-c", "mkdir -p /olr-data/checkpoint && exec /opt/OpenLogReplicator/OpenLogReplicator \"$@\"", "--"] command: ["-r", "-f", "/config/olr-config.json"] diff --git a/tests/environments/enterprise-19/docker-compose.yaml b/tests/environments/enterprise-19/docker-compose.yaml index dcfa05b5..9977910c 100644 --- a/tests/environments/enterprise-19/docker-compose.yaml +++ b/tests/environments/enterprise-19/docker-compose.yaml @@ -1,6 +1,6 @@ services: olr: - image: olr-dev:${OLR_IMAGE_TAG:-latest} + image: ${OLR_IMAGE:-olr-dev:latest} entrypoint: [] command: ["sleep", "infinity"] volumes: diff --git a/tests/environments/free-23/docker-compose.yaml b/tests/environments/free-23/docker-compose.yaml index 4a1601e2..ccda4556 100644 --- a/tests/environments/free-23/docker-compose.yaml +++ b/tests/environments/free-23/docker-compose.yaml @@ -1,6 +1,6 @@ services: olr: - image: olr-dev:${OLR_IMAGE_TAG:-latest} + image: ${OLR_IMAGE:-olr-dev:latest} entrypoint: [] command: ["sleep", "infinity"] volumes: diff --git a/tests/environments/xe-21-official/docker-compose.yaml b/tests/environments/xe-21-official/docker-compose.yaml index 8284b0c0..3921f1db 100644 --- a/tests/environments/xe-21-official/docker-compose.yaml +++ b/tests/environments/xe-21-official/docker-compose.yaml @@ -1,6 +1,6 @@ services: olr: - image: olr-dev:${OLR_IMAGE_TAG:-latest} + image: ${OLR_IMAGE:-olr-dev:latest} entrypoint: [] command: ["sleep", "infinity"] volumes: diff --git a/tests/environments/xe-21/docker-compose.yaml b/tests/environments/xe-21/docker-compose.yaml index 7f93a017..631aa45e 100644 --- a/tests/environments/xe-21/docker-compose.yaml +++ b/tests/environments/xe-21/docker-compose.yaml @@ -1,6 +1,6 @@ services: olr: - image: olr-dev:${OLR_IMAGE_TAG:-latest} + image: ${OLR_IMAGE:-olr-dev:latest} entrypoint: [] command: ["sleep", "infinity"] volumes: From 311c04263c18542016f5715120a10447b31f5e93 Mon Sep 17 00:00:00 2001 From: Rophy Tsai Date: Sat, 23 May 2026 11:47:23 +0000 Subject: [PATCH 2/4] fix: add --user to docker run for release image compatibility --- tests/fixtures/test_fixtures.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/fixtures/test_fixtures.py b/tests/fixtures/test_fixtures.py index 6c16b101..e3872f17 100644 --- a/tests/fixtures/test_fixtures.py +++ b/tests/fixtures/test_fixtures.py @@ -24,6 +24,7 @@ def _run_olr(config_path, tmp_dir): return subprocess.run( [ "docker", "run", "--rm", + "--user", f"{os.getuid()}:{os.getgid()}", "-v", f"{tmp_dir}:/olr-work", "-v", f"{TESTS_DIR}:/tests:ro", "--entrypoint", "/opt/OpenLogReplicator/OpenLogReplicator", From e647dc8752a932ac67b257230e727b15beb96917 Mon Sep 17 00:00:00 2001 From: Rophy Tsai Date: Sat, 23 May 2026 11:56:53 +0000 Subject: [PATCH 3/4] fix: add user override to olr compose services for release image compatibility --- tests/dbz-twin/docker-compose.yaml | 1 + tests/environments/enterprise-19/docker-compose.yaml | 1 + tests/environments/free-23/docker-compose.yaml | 1 + tests/environments/xe-21-official/docker-compose.yaml | 1 + tests/environments/xe-21/docker-compose.yaml | 1 + tests/sql/scripts/drivers/base.sh | 4 ++++ 6 files changed, 9 insertions(+) diff --git a/tests/dbz-twin/docker-compose.yaml b/tests/dbz-twin/docker-compose.yaml index c6d19801..b3e88ba9 100644 --- a/tests/dbz-twin/docker-compose.yaml +++ b/tests/dbz-twin/docker-compose.yaml @@ -31,6 +31,7 @@ services: olr: image: ${OLR_IMAGE:-olr-dev:latest} + user: "${OLR_UID:-1000}:${OLR_GID:-1000}" container_name: dbz-olr entrypoint: ["/bin/bash", "-c", "mkdir -p /olr-data/checkpoint && exec /opt/OpenLogReplicator/OpenLogReplicator \"$@\"", "--"] command: ["-r", "-f", "/config/olr-config.json"] diff --git a/tests/environments/enterprise-19/docker-compose.yaml b/tests/environments/enterprise-19/docker-compose.yaml index 9977910c..6cdeb53a 100644 --- a/tests/environments/enterprise-19/docker-compose.yaml +++ b/tests/environments/enterprise-19/docker-compose.yaml @@ -1,6 +1,7 @@ services: olr: image: ${OLR_IMAGE:-olr-dev:latest} + user: "${OLR_UID:-1000}:${OLR_GID:-1000}" entrypoint: [] command: ["sleep", "infinity"] volumes: diff --git a/tests/environments/free-23/docker-compose.yaml b/tests/environments/free-23/docker-compose.yaml index ccda4556..4e22a447 100644 --- a/tests/environments/free-23/docker-compose.yaml +++ b/tests/environments/free-23/docker-compose.yaml @@ -1,6 +1,7 @@ services: olr: image: ${OLR_IMAGE:-olr-dev:latest} + user: "${OLR_UID:-1000}:${OLR_GID:-1000}" entrypoint: [] command: ["sleep", "infinity"] volumes: diff --git a/tests/environments/xe-21-official/docker-compose.yaml b/tests/environments/xe-21-official/docker-compose.yaml index 3921f1db..b985d677 100644 --- a/tests/environments/xe-21-official/docker-compose.yaml +++ b/tests/environments/xe-21-official/docker-compose.yaml @@ -1,6 +1,7 @@ services: olr: image: ${OLR_IMAGE:-olr-dev:latest} + user: "${OLR_UID:-1000}:${OLR_GID:-1000}" entrypoint: [] command: ["sleep", "infinity"] volumes: diff --git a/tests/environments/xe-21/docker-compose.yaml b/tests/environments/xe-21/docker-compose.yaml index 631aa45e..335754c6 100644 --- a/tests/environments/xe-21/docker-compose.yaml +++ b/tests/environments/xe-21/docker-compose.yaml @@ -1,6 +1,7 @@ services: olr: image: ${OLR_IMAGE:-olr-dev:latest} + user: "${OLR_UID:-1000}:${OLR_GID:-1000}" entrypoint: [] command: ["sleep", "infinity"] volumes: diff --git a/tests/sql/scripts/drivers/base.sh b/tests/sql/scripts/drivers/base.sh index 292215b1..8218e9e9 100644 --- a/tests/sql/scripts/drivers/base.sh +++ b/tests/sql/scripts/drivers/base.sh @@ -33,6 +33,10 @@ # Container path prefix — tests/ is mounted here inside OLR container _CONTAINER_TESTS="${_CONTAINER_TESTS:-/opt/OpenLogReplicator-local/tests}" +# Export UID/GID so docker-compose can set user: on the olr service +export OLR_UID="$(id -u)" +export OLR_GID="$(id -g)" + # ---- Overridable hook ---- patch_gencfg() { :; } From 235a00de04453b5fe1e49e9a0227d24e8a53da64 Mon Sep 17 00:00:00 2001 From: Rophy Tsai Date: Sat, 23 May 2026 22:49:00 +0000 Subject: [PATCH 4/4] fix: set NLS_LANG=AL32UTF8 in docker exec for correct Unicode handling --- tests/sql/scripts/drivers/docker.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/sql/scripts/drivers/docker.sh b/tests/sql/scripts/drivers/docker.sh index f8b626fd..9d740657 100755 --- a/tests/sql/scripts/drivers/docker.sh +++ b/tests/sql/scripts/drivers/docker.sh @@ -12,9 +12,9 @@ source "$SCRIPT_DIR/drivers/base.sh" : "${ORACLE_CONTAINER:=oracle}" -_DEXEC="docker exec" +_DEXEC="docker exec -e NLS_LANG=AMERICAN_AMERICA.AL32UTF8" if [[ -n "${DOCKER_EXEC_USER:-}" ]]; then - _DEXEC="docker exec -u $DOCKER_EXEC_USER" + _DEXEC="docker exec -e NLS_LANG=AMERICAN_AMERICA.AL32UTF8 -u $DOCKER_EXEC_USER" fi _OLR_BINARY="/opt/OpenLogReplicator/OpenLogReplicator"