-
Task
-
Resolution: Done
-
Undefined
-
None
-
None
-
False
-
-
False
-
-
During E2E test development, we encountered intermittent failures where required S3 buckets (koku-bucket, ros-data, insights-upload-perma) were not created during chart deployment. This caused test failures until we added a pre-flight check fixture that creates missing buckets automatically.Root Cause Investigation Needed:The install-helm-chart.sh script has logic to auto-detect the S3 backend and create buckets, but this may fail silently in certain scenarios:
- S4 service not ready when bucket creation is attempted
- Credential/endpoint detection failures
- Race conditions during deployment
- Configuration permutations that bypass bucket creation logic
Object Storage Configuration Permutations to Validate (some of this may be overkill):
| # | Backend | Config Method | Expected Behavior |
|---|---|---|---|
| 1 | S4 (Prow CI) | Auto-detected from s4-test namespace deployment | Script creates buckets via aws CLI |
| 2 | NooBaa/ODF (Jenkins CI) | Auto-detected via OBC | Script creates buckets via aws CLI |
| 3 | External S3 | objectStorage.endpoint pre-configured in values.yaml | Script skips auto-detection; user manages buckets |
| 4 | External S3 | Credentials via Secret reference | Script should create buckets if endpoint accessible |
| 5 | None | No S3 config | Deployment should fail or warn clearly |
Note: MinIO has been replaced with S4 (Super Simple Storage Service) as the default CI object storage backend. S4 is a lightweight S3-compatible service that runs as a single pod with no external dependencies.