// GetEtcdStorageData returns etcd data for all persisted objects. // It is exported so that it can be reused across multiple tests. // It returns a new map on every invocation to prevent different tests from mutating shared state. func GetEtcdStorageData() map[schema.GroupVersionResource]StorageData { … } // GetEtcdStorageDataForNamespace returns etcd data for all persisted objects. // It is exported so that it can be reused across multiple tests. // It returns a new map on every invocation to prevent different tests from mutating shared state. // Namespaced objects keys are computed for the specified namespace. func GetEtcdStorageDataForNamespace(namespace string) map[schema.GroupVersionResource]StorageData { … } type StorageData … type Prerequisite … // GetCustomResourceDefinitionData returns the resource definitions that back the custom resources // included in GetEtcdStorageData. They should be created using CreateTestCRDs before running any tests. // We can switch this to v1 CRDs based on transitive call site analysis. // Call sites: // 1. TestDedupOwnerReferences - beta doesn't matter // 2. TestWebhookAdmissionWithWatchCache/TestWebhookAdmissionWithoutWatchCache - beta doesn't matter // 3. TestApplyStatus - the version fields don't matter. Pruning isn't checked, just ownership. // 4. TestDryRun - versions and pruning don't matter // 5. TestStorageVersionBootstrap - versions and pruning don't matter. // 6. TestEtcdStoragePath - beta doesn't matter // 7. TestCrossGroupStorage - beta doesn't matter // 8. TestOverlappingCustomResourceCustomResourceDefinition - beta doesn't matter // 9. TestOverlappingCustomResourceAPIService - beta doesn't matter func GetCustomResourceDefinitionData() []*apiextensionsv1.CustomResourceDefinition { … } func gvr(g, v, r string) schema.GroupVersionResource { … } func gvkP(g, v, k string) *schema.GroupVersionKind { … } func gvk(g, v, k string) schema.GroupVersionKind { … }