UPSTREAM: <carry>: Create TLS secret in PrepareTest when CapSnapshotMetadata is enabled - #31485
UPSTREAM: <carry>: Create TLS secret in PrepareTest when CapSnapshotMetadata is enabled#31485RomanBednar wants to merge 1 commit into
Conversation
…etadata is enabled When CSI_PROW_ENABLE_SNAPSHOT_METADATA=true, PrepareTest() keeps the csi-snapshot-metadata sidecar and its volume but never creates the TLS secret the volume references. Only the 2 CBT-specific tests create it via CreateSnapshotMetadataResources(), so all other CSI hostpath tests fail with FailedMount on the missing secret. Add CreateSnapshotMetadataTLSSecret() that creates only the TLS secret (CA + server cert + secret) without the Service and SnapshotMetadataService CR that only CBT tests need. Call it from PrepareTest() after deploying manifests when CapSnapshotMetadata is true. Make createTLSSecret() idempotent by handling AlreadyExists so that CBT tests calling CreateSnapshotMetadataResources() after PrepareTest() don't fail on the duplicate secret.
|
Pipeline controller notification For optional jobs, comment This repository is configured in: automatic mode |
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (2)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Repository YAML (base), Central YAML (inherited) Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: RomanBednar The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
/hold TESTING ONLY - do not merge, this should go upstream once we have a working patch. |
|
@RomanBednar: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
Summary
When
CSI_PROW_ENABLE_SNAPSHOT_METADATA=true,PrepareTest()incsi.gokeeps thecsi-snapshot-metadatasidecar container and itscsi-snapshot-metadata-server-certsvolume, but never creates the TLS secret the volume references. Only the 2 CBT-specific tests create it viaCreateSnapshotMetadataResources(), so all other CSI hostpath tests fail withFailedMounton the missing secret.Changes
CreateSnapshotMetadataTLSSecret()insnapshot-metadata.go— creates only the TLS secret (CA + server cert + secret) without the Service and SnapshotMetadataService CR that only CBT tests need.PrepareTest()incsi.go— after deploying manifests, creates the TLS secret whenCapSnapshotMetadatais true.createTLSSecret()— handlesAlreadyExistsso CBT tests callingCreateSnapshotMetadataResources()afterPrepareTest()don't fail on the duplicate secret.Context
CSI_PROW_ENABLE_SNAPSHOT_METADATA=trueto TechPreview CI jobs.FailedMount: secret "csi-snapshot-metadata-server-certs" not found.Test plan
/testwithagainst STOR-3022: Enable CBT snapshot-metadata e2e tests in TechPreview CI jobs release#81061 to validate TechPreview jobs pass with this fix