Uploaded image for project: 'Secret Store CSI for Red Hat OpenShift'
  1. Secret Store CSI for Red Hat OpenShift
  2. SSCSI-245

Extend CSIDriverConfigSpec in openshift/api for Secret Rotation Configuration

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • None
    • OAPE Sprint 282
    • 1

      As a platform operator, I want to extend the CSIDriverConfigSpec in openshift/api to support secret rotation configuration fields, so that cluster administrators can configure rotation behavior declaratively via the operator CR.

      Acceptance Criteria

      • CSIDriverConfigSpec extended in openshift/api repo with SecretsStore driver-specific configuration
      • New driver-specific struct: SSCSIDriverConfigSpec containing:
        • SecretRotation struct with:
          • Enabled (bool) - enable/disable automatic secret rotation
          • PollingInterval (string) - rotation polling interval (duration format)
        • TokenRequests ([]TokenRequest) - for WIF configuration
      • Pattern follows existing driver-specific configurations (e.g., AWS EBS, GCP PD)
      • API changes follow OpenShift API conventions and versioning
      • Generated client code updated (deepcopy, defaulting, validation)
      • Backward compatibility maintained (new fields optional)

      Technical Details

      Example API Addition

      // In CSIDriverConfigSpec struct (line 131)
      type CSIDriverConfigSpec struct {
          // ... existing fields (AWS, GCE, Azure, etc.) ...
          
          // SecretsStore configures the Secrets Store CSI driver
          // +optional
          SecretsStore *SSCSIDriverConfigSpec `json:"secretsStore,omitempty"`
      }
      
      // New driver-specific configuration
      type SSCSIDriverConfigSpec struct {
          // SecretRotation configures automatic secret rotation behavior
          // +optional
          SecretRotation *SecretRotationConfig `json:"secretRotation,omitempty"`
          
          // TokenRequests configures service account token projection for WIF
          // +optional
          TokenRequests []TokenRequest `json:"tokenRequests,omitempty"`
      }
      
      type SecretRotationConfig struct {
          // Enabled controls whether automatic secret rotation is enabled
          // Default: true
          // +optional
          Enabled bool `json:"enabled"`
          
          // PollingInterval specifies how often to poll for secret updates
          // Format: duration string (e.g., "2m", "30s")
          // +optional
          PollingInterval string `json:"pollingInterval,omitempty"`
      }
      

      Definition of Done

      • PR merged to openshift/api repo with API changes
      • API documentation generated
      • Client code regenerated successfully
      • Unit tests validate new fields
      • API changes reviewed by API reviewers

              Unassigned Unassigned
              rh-ee-mykastur Mytreya Kasturi
              Cisco - Waas Confidential Group, Red Hat Bugzilla Authorized, TSX/RH Confidential Group, Unisys Confidential Group, VMware Confidential Group, VVDN Confidential Group, Veeam Confidential Group, Veritas Confidential Group, VerizonWireless Confidential Group, Wacom Confidential Group, Western Digital Confidential Group, Wind River Confidential Group, Wipro Limited Confidential Group, Wiwynn Confidential Group, Xilinx Confidential Group, Yahoo Confidential Group, ZTE Confidential Group, Zettaset Confidential Group
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: