-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Tests: General improvements to make tests work with WFFC #13954
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Skipping CI for Draft Pull Request. |
/test pull-kubevirt-e2e-k8s-1.32-sig-storage |
fcbcf60
to
149dd07
Compare
/test pull-kubevirt-e2e-k8s-1.32-sig-storage |
149dd07
to
0e18196
Compare
/test pull-kubevirt-e2e-k8s-1.32-sig-storage |
/retest-required |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
seems fine! just worried this could break day-2 wffc testing. I believe it should be testable if you slightly edit the ceph test config fields to all point at ceph-wffc
kubevirt/tests/default-ceph-config.json
Lines 1 to 10 in 0e18196
{ | |
"storageClassRhel": "rook-ceph-block", | |
"storageClassWindows": "rook-ceph-block", | |
"storageRWXFileSystem": "nfs-csi", | |
"storageRWXBlock": "rook-ceph-block", | |
"storageRWOFileSystem": "local", | |
"storageRWOBlock": "rook-ceph-block", | |
"storageSnapshot": "rook-ceph-block", | |
"storageVMState": "rook-ceph-block" | |
} |
(maybe except rwxfs)
@@ -476,12 +476,11 @@ var _ = SIGDescribe("Hotplug", func() { | |||
libdv.StorageWithAccessMode(accessMode), | |||
libdv.StorageWithVolumeMode(volumeMode), | |||
), | |||
libdv.WithForceBindAnnotation(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
createDataVolumeAndWaitForImport is used a lot throughout this suite, does this really not break anything?
any chance you could run the hotplug suite against rook-ceph-wffc?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1
/test pull-kubevirt-e2e-k8s-1.32-sig-storage |
3e7b38e
to
fb5f213
Compare
/test pull-kubevirt-e2e-k8s-1.32-sig-storage |
b634150
to
810c3f6
Compare
/test pull-kubevirt-e2e-k8s-1.31-sig-storage |
/test pull-kubevirt-e2e-k8s-1.32-sig-storage |
tests/storage/hotplug.go
Outdated
@@ -239,6 +239,9 @@ var _ = Describe(SIG("Hotplug", func() { | |||
for _, volumeName := range volumeNames { | |||
nameMap[volumeName] = true | |||
} | |||
defaultSecs := 180 | |||
// timeout is calculated based on the number of volumes to be attached | |||
timeout := time.Duration(defaultSecs+(len(volumeNames)/25)*defaultSecs) * time.Second |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you still need this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I considered removing it but still think it could be benefitial in WFFC clusters that meet the storage pool requirements. Can remove it if preferred.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah this is seems too complex to me
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
gotcha
libdv.StorageWithVolumeSize("500Mi"), | ||
libdv.StorageWithVolumeMode(k8sv1.PersistentVolumeFilesystem), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same question about this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I'd say we do, better to be more imperative with the volume mode here since we want FS for this DV.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We do? I think @awels intention is to use whatever is available in the test config (block/fs)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to rename the disk image from this DV, so at least based on how the test is structured, it needs to be FS to access it and rename it. That's why we use the storage class from GetRWOFileSystemStorageClass, assuming the default volume mode will be FS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was looking at the wrong test 🤦♂️
@alromeros: The following test failed, say
Instructions 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. |
Volume Hotplug tests are failing in clusters with node affinity constraints due to forced PVC binding, rendering the hotplug pod unschedulable. This change removes force-binding for volume hotplug tests, allowing the scheduler to do its job. Signed-off-by: Alvaro Romero <alromero@redhat.com>
Signed-off-by: Alvaro Romero <alromero@redhat.com>
2e01c1c
to
5ffba05
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/approve
/lgtm
/cc @0xFelix
for formal approval over decorators
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/approve
Giving a chance to address the nit
/hold
tests/decorators/decorators.go
Outdated
|
||
// LargeStoragePoolrequired indicates that the test may fail in a cluster with a low storage pool capacity. | ||
// This decorator can be used to skip the test as the failure might not indicate a functional problem. | ||
LargeStoragePoolrequired = Label("large-storage-pool-required") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LargeStoragePoolrequired = Label("large-storage-pool-required") | |
LargeStoragePoolRequired = Label("large-storage-pool-required") |
nit
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch! ack
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: 0xFelix, akalenyu The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Required labels detected, running phase 2 presubmits: |
Signed-off-by: Alvaro Romero <alromero@redhat.com>
5ffba05
to
deb3152
Compare
Required labels detected, running phase 2 presubmits: |
/hold cancel |
/cherry-pick release-1.5 |
@alromeros: new pull request created: #14410 In response to this:
Instructions 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. |
What this PR does
Volume Hotplug tests are failing in clusters with node affinity constraints due to forced PVC binding, rendering the hotplug pod unschedulable.
This Pull Request aims to remove force-binding for volume hotplug tests, allowing the scheduler to do its job.
It also increases some timeouts and changes DV phase expectations in a couple of tests so they can pass with WFFC.
Fixes #
Release note