2 KiB
2 KiB
MinIO ASL Store Adapter
This adapter provides an S3-compatible ASL/1-STORE backend for MinIO. It is
opt-in for conformance runs and does not require MinIO or any external services
at build time.
Required environment
These are required when running conformance against the MinIO backend:
AMDUAT_MINIO_ENDPOINT(e.g.http://localhost:9000)AMDUAT_MINIO_BUCKET(e.g.amduat)AMDUAT_MINIO_ACCESS_KEYAMDUAT_MINIO_SECRET_KEY
Optional configuration:
AMDUAT_MINIO_REGION(default:us-east-1)AMDUAT_MINIO_PREFIX(default:asl)AMDUAT_MINIO_FORCE_PATH_STYLE(default:1)AMDUAT_MINIO_TLS_VERIFY(default:1)AMDUAT_MINIO_TIMEOUT_MS(default:30000)AMDUAT_MINIO_RETRY_MAX(default:3)
Conformance runs
MinIO is skipped unless explicitly enabled.
Example (opt-in conformance run):
AMDUAT_CONFORMANCE_ENABLE_MINIO=1 \
AMDUAT_MINIO_ENDPOINT=http://localhost:9000 \
AMDUAT_MINIO_BUCKET=amduat \
AMDUAT_MINIO_ACCESS_KEY=minioadmin \
AMDUAT_MINIO_SECRET_KEY=minioadmin \
./build/amduat_conformance_run --suite asl --backend minio --workdir /tmp/amduat_conformance
If required environment variables are missing, the backend is reported as
SKIPPED with the missing variable names.
Key layout
Objects are stored under a sharded key derived from the canonical reference hex:
<prefix>/<r0r1>/<r2r3>/<full_reference_hex>
Error mapping
| HTTP/S3 response | Canonical taxonomy | Store error |
|---|---|---|
| 404 | NotFound | AMDUAT_ASL_STORE_ERR_NOT_FOUND |
| 401, 403 | PermissionDenied | AMDUAT_ASL_STORE_ERR_IO |
| 408, 429 | TransientIO | AMDUAT_ASL_STORE_ERR_IO |
| 5xx | TransientIO | AMDUAT_ASL_STORE_ERR_IO |
| 4xx (other) | InvalidArtifact | AMDUAT_ASL_STORE_ERR_INTEGRITY |
| Network/TLS/parse errors | InternalError/TransientIO | AMDUAT_ASL_STORE_ERR_IO |
Limitations
- HTTPS is not supported yet (HTTP-only). Use
http://endpoints for now. - Multipart uploads, streaming artifacts, and very large objects are not implemented in Phase 0.