Add create_bucket_if_missing: bool = False to MinioConfig, wired to MINIO_CREATE_BUCKET_IF_MISSING.
Change MinioAdapter.connect() to fail fast when the configured bucket is missing unless auto-creation is explicitly enabled.
Extract boolean env parsing into internal env_bool module with dedicated unit tests.
Refactor adapter __init__ validation to use guard-clause style in both MinIO and Redis adapters.
Update README and .env.example to document production vs local dev settings (MINIO_SECURE, MINIO_CREATE_BUCKET_IF_MISSING).
Breaking change:connect() no longer creates the bucket by default. Existing deployments that relied on implicit bucket creation must either provision the bucket beforehand or set MINIO_CREATE_BUCKET_IF_MISSING=true / create_bucket_if_missing=True.
## Summary
- Add `create_bucket_if_missing: bool = False` to `MinioConfig`, wired to `MINIO_CREATE_BUCKET_IF_MISSING`.
- Change `MinioAdapter.connect()` to fail fast when the configured bucket is missing unless auto-creation is explicitly enabled.
- Extract boolean env parsing into internal `env_bool` module with dedicated unit tests.
- Refactor adapter `__init__` validation to use guard-clause style in both MinIO and Redis adapters.
- Update README and `.env.example` to document production vs local dev settings (`MINIO_SECURE`, `MINIO_CREATE_BUCKET_IF_MISSING`).
**Breaking change:** `connect()` no longer creates the bucket by default. Existing deployments that relied on implicit bucket creation must either provision the bucket beforehand or set `MINIO_CREATE_BUCKET_IF_MISSING=true` / `create_bucket_if_missing=True`.
## Test plan
- [x] `pytest tests/unit/env_bool_test.py tests/unit/minio_config_test.py tests/unit/minio_adapter_test.py -v`
- [x] `pytest tests/integration/minio_adapter_test.py -v`
- [x] Pre-commit hooks pass on commit
Require buckets to exist by default on connect, extract env_bool parsing, and document local dev overrides for secure and auto-creation settings.
Co-authored-by: Cursor <cursoragent@cursor.com>
Ensure set_example_env depends on raw_minio_client so ArtifactObjectRepository connects against an existing bucket under the new production-safe default.
Co-authored-by: Cursor <cursoragent@cursor.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
create_bucket_if_missing: bool = FalsetoMinioConfig, wired toMINIO_CREATE_BUCKET_IF_MISSING.MinioAdapter.connect()to fail fast when the configured bucket is missing unless auto-creation is explicitly enabled.env_boolmodule with dedicated unit tests.__init__validation to use guard-clause style in both MinIO and Redis adapters..env.exampleto document production vs local dev settings (MINIO_SECURE,MINIO_CREATE_BUCKET_IF_MISSING).Breaking change:
connect()no longer creates the bucket by default. Existing deployments that relied on implicit bucket creation must either provision the bucket beforehand or setMINIO_CREATE_BUCKET_IF_MISSING=true/create_bucket_if_missing=True.Test plan
pytest tests/unit/env_bool_test.py tests/unit/minio_config_test.py tests/unit/minio_adapter_test.py -vpytest tests/integration/minio_adapter_test.py -vTest Coverage Report: