feat: add guest disk storage for QEMU ExporterSet pods - #928
Conversation
Provision flashable /disk via PVC when storageClassName is set, otherwise emptyDir with ephemeral-storage accounting so lease → flash → boot can work. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@mangelajo maybe group it all under |
Yes, I think that makes more sense, I thought about it when I was working on it, and thought the feature could be useful to other exporterset controllers, but we can make all the behavior reusable by common functions, and it's just a parameter. We don't need any special checking at API level, and many exportersets don't even care about the storage classes at all. 👍 Thanks benny |
Summary
storageClassNameonVirtualTargetClass(withExporterSetoverride) so QEMU ExporterSet pods can provision flashable guest disks at/diskemptyDirand setephemeral-storagerequests/limits for scheduler accounting/disk(sockets stay on/shared), including cidata/firmware path fixes for remote execCloses #924
Relates to: PITCREW-501
Test plan
go test ./api/virtualtarget/v1alpha1/ ./internal/exporterset/disk/ ./internal/exporterset/provisioners/qemu/storageClassName; confirm Pod hasdiskemptyDir + ephemeral-storage requests/limitsstorageClassNameset; confirm PVCdisk-<exporter>is created, owned by Exporter, and mounted at/diskExporterSet.spec.storageClassNameoverrides / clears the VTC valueMade with Cursor