Uploaded image for project: 'FlightPath'
  1. FlightPath
  2. FLPATH-3275

Validate S3/Object Storage bucket creation across all config permutations

XMLWordPrintable

    • False
    • Hide

      None

      Show
      None
    • 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.

              rh-ee-tstetson Thomas Stetson
              rh-ee-tstetson Thomas Stetson
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: