mirror of
https://github.com/vmware-tanzu/velero.git
synced 2026-02-03 18:42:18 +00:00
* Switch to backing up v1beta1 CRDs from API server Instead of simply switching out the APIVersion string on a v1 CustomResourceDefinition object, re-download the object from the API server entirely to get the correct fields. This should fix validation errors upon restore. Signed-off-by: Nolan Brubaker <brubakern@vmware.com> * Fix existing tests Signed-off-by: Nolan Brubaker <brubakern@vmware.com> * Add full example CRDs to automated tests Signed-off-by: Nolan Brubaker <brubakern@vmware.com> * Move beta CRD lookup into helper function Signed-off-by: Nolan Brubaker <brubakern@vmware.com> * Add case for preserveUnknownFields CRDs Signed-off-by: Nolan Brubaker <brubakern@vmware.com> * Add PreserveUnknownFields case and refactor execute Signed-off-by: Nolan Brubaker <brubakern@vmware.com> * Add older prometheus CRD test cases Signed-off-by: Nolan Brubaker <brubakern@vmware.com> * Add changelog Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
64 lines
3.1 KiB
JSON
64 lines
3.1 KiB
JSON
{
|
|
"apiVersion": "apiextensions.k8s.io/v1",
|
|
"kind": "CustomResourceDefinition",
|
|
"metadata": {
|
|
"annotations": {
|
|
"kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"apiextensions.k8s.io/v1beta1\",\"kind\":\"CustomResourceDefinition\",\"metadata\":{\"annotations\":{},\"creationTimestamp\":\"2020-04-20T16:57:37Z\",\"generation\":1,\"name\":\"gcpsamples.gcp.stacks.crossplane.io\",\"resourceVersion\":\"549\",\"selfLink\":\"/apis/apiextensions.k8s.io/v1/customresourcedefinitions/gcpsamples.gcp.stacks.crossplane.io\",\"uid\":\"db5f4321-3226-44b0-8247-66fd7ef59dc8\"},\"spec\":{\"conversion\":{\"strategy\":\"None\"},\"group\":\"gcp.stacks.crossplane.io\",\"names\":{\"kind\":\"GCPSample\",\"listKind\":\"GCPSampleList\",\"plural\":\"gcpsamples\",\"singular\":\"gcpsample\"},\"preserveUnknownFields\":true,\"scope\":\"Cluster\",\"versions\":[{\"name\":\"v1alpha1\",\"served\":true,\"storage\":true}]},\"status\":{\"acceptedNames\":{\"kind\":\"GCPSample\",\"listKind\":\"GCPSampleList\",\"plural\":\"gcpsamples\",\"singular\":\"gcpsample\"},\"conditions\":[{\"lastTransitionTime\":\"2020-04-20T16:57:37Z\",\"message\":\"no conflicts found\",\"reason\":\"NoConflicts\",\"status\":\"True\",\"type\":\"NamesAccepted\"},{\"lastTransitionTime\":\"2020-04-20T16:57:37Z\",\"message\":\"the initial names have been accepted\",\"reason\":\"InitialNamesAccepted\",\"status\":\"True\",\"type\":\"Established\"}],\"storedVersions\":[\"v1alpha1\"]}}\n"
|
|
},
|
|
"creationTimestamp": "2020-04-20T17:27:56Z",
|
|
"generation": 1,
|
|
"name": "gcpsamples.gcp.stacks.crossplane.io",
|
|
"resourceVersion": "5567",
|
|
"selfLink": "/apis/apiextensions.k8s.io/v1/customresourcedefinitions/gcpsamples.gcp.stacks.crossplane.io",
|
|
"uid": "c0bbac74-acab-4620-b628-1d5f91b19040"
|
|
},
|
|
"spec": {
|
|
"conversion": {
|
|
"strategy": "None"
|
|
},
|
|
"group": "gcp.stacks.crossplane.io",
|
|
"names": {
|
|
"kind": "GCPSample",
|
|
"listKind": "GCPSampleList",
|
|
"plural": "gcpsamples",
|
|
"singular": "gcpsample"
|
|
},
|
|
"preserveUnknownFields": true,
|
|
"scope": "Cluster",
|
|
"versions": [
|
|
{
|
|
"name": "v1alpha1",
|
|
"served": true,
|
|
"storage": true
|
|
}
|
|
]
|
|
},
|
|
"status": {
|
|
"acceptedNames": {
|
|
"kind": "GCPSample",
|
|
"listKind": "GCPSampleList",
|
|
"plural": "gcpsamples",
|
|
"singular": "gcpsample"
|
|
},
|
|
"conditions": [
|
|
{
|
|
"lastTransitionTime": "2020-04-20T17:27:56Z",
|
|
"message": "no conflicts found",
|
|
"reason": "NoConflicts",
|
|
"status": "True",
|
|
"type": "NamesAccepted"
|
|
},
|
|
{
|
|
"lastTransitionTime": "2020-04-20T17:27:56Z",
|
|
"message": "the initial names have been accepted",
|
|
"reason": "InitialNamesAccepted",
|
|
"status": "True",
|
|
"type": "Established"
|
|
}
|
|
],
|
|
"storedVersions": [
|
|
"v1alpha1"
|
|
]
|
|
}
|
|
}
|