Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cassandra_nodetool/tests/compose/config/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ARG CASSANDRA_VERSION
ARG CASSANDRA_VERSION=2.1.14
FROM cassandra:${CASSANDRA_VERSION}
COPY jmxremote.password /etc/cassandra/jmxremote.password
RUN chown cassandra:cassandra /etc/cassandra/jmxremote.password
Expand Down
14 changes: 14 additions & 0 deletions cassandra_nodetool/tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,20 @@ def dd_environment():
else:
log_patterns = ['Starting listening for CQL clients', 'All sessions completed']

# Workaround for Docker 29.1.x issues with old images
# 1. Pre-pull base image with explicit platform to avoid multi-arch issues
subprocess.run(
['docker', 'pull', '--platform', 'linux/amd64', f"cassandra:{env['CASSANDRA_VERSION']}"],
check=False, # Don't fail if pull has issues, let build try
capture_output=True,
)

# 2. Disable BuildKit to use legacy builder (BuildKit has cache validation bug)
env['DOCKER_BUILDKIT'] = '0'

# 3. Force legacy builder to use specific platform
env['DOCKER_DEFAULT_PLATFORM'] = 'linux/amd64'

with docker_run(
compose_file,
service_name=common.CASSANDRA_CONTAINER_NAME,
Expand Down
Loading