Skip to content
Merged
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
17 changes: 10 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -175,11 +175,12 @@ jobs:

- name: Start MinIO
run: |
# MinIO deleted its Docker Hub repositories; quay.io is the live source.
docker run -d --name minio \
-p 39000:9000 \
-e MINIO_ROOT_USER=minioadmin \
-e MINIO_ROOT_PASSWORD=minioadmin \
quay.io/minio/minio:latest server /data
quay.io/minio/minio:RELEASE.2025-09-07T16-13-09Z server /data
# Wait for MinIO to be ready
for i in {1..30}; do
curl -sf http://localhost:39000/minio/health/live && break
Expand All @@ -188,12 +189,14 @@ jobs:

- name: Create MinIO bucket
run: |
# Install mc client
curl -sL https://dl.min.io/client/mc/release/linux-arm64/mc -o /tmp/mc
chmod +x /tmp/mc
# Configure and create bucket
/tmp/mc alias set minio http://localhost:39000 minioadmin minioadmin
/tmp/mc mb minio/ducklake --ignore-existing
# dl.min.io returns 410 Gone: MinIO archived the community mc client
# alongside the Docker Hub images. Run mc from its quay.io image
# instead. `--network container:minio` joins MinIO's own namespace,
# so the endpoint is its internal port, not the published one.
docker run --rm --network container:minio \
-e MC_HOST_minio=http://minioadmin:minioadmin@localhost:9000 \
quay.io/minio/mc:RELEASE.2025-08-13T08-35-41Z \
mb minio/ducklake --ignore-existing

- name: Run integration tests
run: just test-integration
Expand Down
6 changes: 4 additions & 2 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ services:
retries: 5

minio:
image: minio/minio:latest
# MinIO deleted its Docker Hub repositories, so pull from quay.io. The tag is a
# dated release rather than `latest` so a rebuild cannot silently change it.
image: quay.io/minio/minio:RELEASE.2025-09-07T16-13-09Z
container_name: ducklake-storage
command: server /data --console-address ":9001"
environment:
Expand All @@ -36,7 +38,7 @@ services:

# Creates the ducklake bucket on startup
minio-init:
image: minio/mc:latest
image: quay.io/minio/mc:RELEASE.2025-08-13T08-35-41Z
container_name: ducklake-storage-init
depends_on:
minio:
Expand Down
4 changes: 3 additions & 1 deletion k8s/local-config-store.compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,9 @@ services:
- /var/lib/postgresql/data

minio:
image: minio/minio:latest
# MinIO deleted its Docker Hub repositories, so pull from quay.io. The tag is a
# dated release rather than `latest` so a rebuild cannot silently change it.
image: quay.io/minio/minio:RELEASE.2025-09-07T16-13-09Z
container_name: duckgres-local-minio
command: server /data --console-address ":9001"
environment:
Expand Down
6 changes: 4 additions & 2 deletions tests/integration/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,9 @@ services:

# MinIO for DuckLake object storage
minio:
image: minio/minio:latest
# MinIO deleted its Docker Hub repositories, so pull from quay.io. The tag is a
# dated release rather than `latest` so a rebuild cannot silently change it.
image: quay.io/minio/minio:RELEASE.2025-09-07T16-13-09Z
container_name: duckgres-test-minio
command: server /data --console-address ":9001"
environment:
Expand All @@ -61,7 +63,7 @@ services:

# Creates the ducklake bucket on startup
minio-init:
image: minio/mc:latest
image: quay.io/minio/mc:RELEASE.2025-08-13T08-35-41Z
container_name: duckgres-test-minio-init
depends_on:
minio:
Expand Down
Loading