Skip to content

Commit 0d9a5e1

Browse files
committed
Update volumesource to be json inline
1 parent 4878b3f commit 0d9a5e1

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

modules/storage/storage.go

+10-9
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,10 @@ type VolumeSource struct {
9797

9898
// Volume our slimmed down version of Volume
9999
type Volume struct {
100-
// +kubebuilder:validation:Required
101100
// Name of the volume
102-
Name string `json:"name"`
103-
// +kubebuilder:validation:Required
101+
Name string `json:"name" protobuf:"bytes,1,opt,name=name"`
104102
// VolumeSource defines the source of a volume to be mounted
105-
VolumeSource VolumeSource `json:"volumeSource"`
103+
VolumeSource VolumeSource `json:",inline" protobuf:"bytes,2,opt,name=volumeSource"`
106104
}
107105

108106
// VolMounts is the data structure used to expose Volumes and Mounts that can
@@ -167,13 +165,16 @@ func (s *VolumeSource) ToCoreVolumeSource() (*corev1.VolumeSource, error) {
167165

168166
// ToCoreVolume - convert Volume to corev1.Volume
169167
func (s *Volume) ToCoreVolume() (*corev1.Volume, error) {
170-
volSource, err := s.VolumeSource.ToCoreVolumeSource()
168+
coreVolume := &corev1.Volume{}
169+
170+
coreVolumeBytes, err := json.Marshal(s)
171171
if err != nil {
172-
return nil, err
172+
return nil, fmt.Errorf("error marshalling Volume: %w", err)
173173
}
174-
coreVolume := &corev1.Volume{
175-
Name: s.Name,
176-
VolumeSource: *volSource,
174+
err = json.Unmarshal(coreVolumeBytes, coreVolume)
175+
if err != nil {
176+
return nil, fmt.Errorf("error unmarshalling Volume: %w", err)
177177
}
178+
178179
return coreVolume, nil
179180
}

0 commit comments

Comments
 (0)