Skip to content

Commit f228aae

Browse files
fix
Signed-off-by: Yaroslav Borbat <yaroslav.borbat@flant.com>
1 parent e011e62 commit f228aae

2 files changed

Lines changed: 30 additions & 0 deletions

File tree

images/virtualization-artifact/pkg/builder/vd/option.go

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ limitations under the License.
1717
package vd
1818

1919
import (
20+
"k8s.io/apimachinery/pkg/api/resource"
21+
"k8s.io/utils/ptr"
22+
2023
"github.com/deckhouse/virtualization-controller/pkg/builder/meta"
2124
"github.com/deckhouse/virtualization/api/core/v1alpha2"
2225
)
@@ -81,3 +84,24 @@ func WithDataSourceObjectRefFromCVI(cvi *v1alpha2.ClusterVirtualImage) Option {
8184
func WithDataSourceObjectRefFromVI(vi *v1alpha2.VirtualImage) Option {
8285
return WithDataSourceObjectRef(v1alpha2.VirtualDiskObjectRefKindVirtualImage, vi.Name)
8386
}
87+
88+
func WithPersistentVolumeClaim(storageClass *string, size *resource.Quantity) Option {
89+
return func(vd *v1alpha2.VirtualDisk) {
90+
vd.Spec.PersistentVolumeClaim = v1alpha2.VirtualDiskPersistentVolumeClaim{
91+
StorageClass: storageClass,
92+
Size: size,
93+
}
94+
}
95+
}
96+
97+
func WithStorageClass(storageClass string) Option {
98+
return func(vd *v1alpha2.VirtualDisk) {
99+
vd.Spec.PersistentVolumeClaim.StorageClass = ptr.To(storageClass)
100+
}
101+
}
102+
103+
func WithSize(size *resource.Quantity) Option {
104+
return func(vd *v1alpha2.VirtualDisk) {
105+
vd.Spec.PersistentVolumeClaim.Size = size
106+
}
107+
}

images/virtualization-artifact/pkg/builder/vm/option.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,12 @@ func WithDisks(disks ...*v1alpha2.VirtualDisk) Option {
6363
}
6464
}
6565

66+
func WithBlockDeviceRefs(refs ...v1alpha2.BlockDeviceSpecRef) Option {
67+
return func(vm *v1alpha2.VirtualMachine) {
68+
vm.Spec.BlockDeviceRefs = append(vm.Spec.BlockDeviceRefs, refs...)
69+
}
70+
}
71+
6672
func WithNodeSelector(nodeSelector map[string]string) Option {
6773
return func(vm *v1alpha2.VirtualMachine) {
6874
vm.Spec.NodeSelector = nodeSelector

0 commit comments

Comments
 (0)