k8s-proxmox / cluster-api-provider-proxmox

Cluster API provider implementation for Proxmox VE
Apache License 2.0
94 stars 11 forks source link

[Breaking Change] Support different types of storages #99

Closed sp-yduck closed 8 months ago

sp-yduck commented 8 months ago

fix #93

abolish ProxmoxCluster.spec.storage field and introduce new field ProxmoxMachine.spec.storage. you can specify 2 kinds of storage for each ProxmoxMachine. 1 is for cloud-config snippet and it must be dir type of storage. proxmoxmachine-controller can create storage if there is no storage. 2 is for VM image (boot disk) and it can be any types of storage as long as it supports images type of content. proxmoxmachine-controller does not create storage but does return error if there is no storage. The reason why proxmoxmachine-controller does not create storage is that the life-cycles of ProxmoxMachine and proxmox storage are different. so proxmox storage should be reconciled by dedicated controller not proxmoxMachine controller. in the future we may introduce something proxmox storage controller for this purpose.

NOTE before upgrade cappx to this version you must be tear down existing cluster otherwise cappx will complain some errors. I will keep open this PR for some time so we can get some feedback from other contributors before merging.

sp-yduck commented 8 months ago

duplicates #104

104 is better than this PR since it does not contain breaking changes