package fuzzer
import "k8s.io/kubernetes/pkg/apis/storage/fuzzer"
Index ¶
Variables ¶
var Funcs = func(codecs runtimeserializer.CodecFactory) []interface{} { return []interface{}{ func(obj *storage.StorageClass, c fuzz.Continue) { c.FuzzNoCustom(obj) reclamationPolicies := []api.PersistentVolumeReclaimPolicy{api.PersistentVolumeReclaimDelete, api.PersistentVolumeReclaimRetain} obj.ReclaimPolicy = &reclamationPolicies[c.Rand.Intn(len(reclamationPolicies))] bindingModes := []storage.VolumeBindingMode{storage.VolumeBindingImmediate, storage.VolumeBindingWaitForFirstConsumer} obj.VolumeBindingMode = &bindingModes[c.Rand.Intn(len(bindingModes))] }, func(obj *storage.CSIDriver, c fuzz.Continue) { c.FuzzNoCustom(obj) switch c.Rand.Intn(7) { case 0: obj.Spec.VolumeLifecycleModes = nil case 1: obj.Spec.VolumeLifecycleModes = []storage.VolumeLifecycleMode{} case 2: obj.Spec.VolumeLifecycleModes = []storage.VolumeLifecycleMode{ storage.VolumeLifecycleMode(fmt.Sprintf("%d", c.Rand.Int31())), } case 3: obj.Spec.VolumeLifecycleModes = []storage.VolumeLifecycleMode{ storage.VolumeLifecyclePersistent, } case 4: obj.Spec.VolumeLifecycleModes = []storage.VolumeLifecycleMode{ storage.VolumeLifecycleEphemeral, } case 5: obj.Spec.VolumeLifecycleModes = []storage.VolumeLifecycleMode{ storage.VolumeLifecyclePersistent, storage.VolumeLifecycleEphemeral, } case 6: obj.Spec.VolumeLifecycleModes = []storage.VolumeLifecycleMode{ storage.VolumeLifecycleEphemeral, storage.VolumeLifecyclePersistent, } } if obj.Spec.AttachRequired == nil { obj.Spec.AttachRequired = new(bool) *(obj.Spec.AttachRequired) = true } if obj.Spec.PodInfoOnMount == nil { obj.Spec.PodInfoOnMount = new(bool) *(obj.Spec.PodInfoOnMount) = false } if obj.Spec.StorageCapacity == nil { obj.Spec.StorageCapacity = new(bool) *(obj.Spec.StorageCapacity) = false } if obj.Spec.FSGroupPolicy == nil { obj.Spec.FSGroupPolicy = new(storage.FSGroupPolicy) *obj.Spec.FSGroupPolicy = storage.ReadWriteOnceWithFSTypeFSGroupPolicy } if obj.Spec.RequiresRepublish == nil { obj.Spec.RequiresRepublish = new(bool) *(obj.Spec.RequiresRepublish) = false } if len(obj.Spec.VolumeLifecycleModes) == 0 { obj.Spec.VolumeLifecycleModes = []storage.VolumeLifecycleMode{ storage.VolumeLifecyclePersistent, } } }, } }
Funcs returns the fuzzer functions for the storage api group.
Source Files ¶
fuzzer.go
- Version
- v1.24.10
- Published
- Jan 18, 2023
- Platform
- js/wasm
- Imports
- 5 packages
- Last checked
- 5 minutes ago –
Tools for package owners.