github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/helm/crds/dataprotection.kubeblocks.io_backuprepos.yaml (about) 1 apiVersion: apiextensions.k8s.io/v1 2 kind: CustomResourceDefinition 3 metadata: 4 annotations: 5 controller-gen.kubebuilder.io/version: v0.12.1 6 labels: 7 app.kubernetes.io/name: kubeblocks 8 name: backuprepos.dataprotection.kubeblocks.io 9 spec: 10 group: dataprotection.kubeblocks.io 11 names: 12 categories: 13 - kubeblocks 14 kind: BackupRepo 15 listKind: BackupRepoList 16 plural: backuprepos 17 singular: backuprepo 18 scope: Cluster 19 versions: 20 - additionalPrinterColumns: 21 - jsonPath: .status.phase 22 name: STATUS 23 type: string 24 - jsonPath: .spec.storageProviderRef 25 name: STORAGEPROVIDER 26 type: string 27 - jsonPath: .spec.accessMethod 28 name: ACCESSMETHOD 29 type: string 30 - jsonPath: .status.isDefault 31 name: DEFAULT 32 type: boolean 33 - jsonPath: .metadata.creationTimestamp 34 name: AGE 35 type: date 36 name: v1alpha1 37 schema: 38 openAPIV3Schema: 39 description: BackupRepo is the Schema for the backuprepos API 40 properties: 41 apiVersion: 42 description: 'APIVersion defines the versioned schema of this representation 43 of an object. Servers should convert recognized schemas to the latest 44 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 45 type: string 46 kind: 47 description: 'Kind is a string value representing the REST resource this 48 object represents. Servers may infer this from the endpoint the client 49 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 50 type: string 51 metadata: 52 type: object 53 spec: 54 description: BackupRepoSpec defines the desired state of BackupRepo 55 properties: 56 accessMethod: 57 default: Mount 58 description: Specifies the access method of the backup repo. 59 enum: 60 - Mount 61 - Tool 62 type: string 63 config: 64 additionalProperties: 65 type: string 66 description: Non-secret configurations for the storage provider. 67 type: object 68 credential: 69 description: A secret that contains the credentials needed by the 70 storage provider. 71 properties: 72 name: 73 description: name is unique within a namespace to reference a 74 secret resource. 75 type: string 76 namespace: 77 description: namespace defines the space within which the secret 78 name must be unique. 79 type: string 80 type: object 81 x-kubernetes-map-type: atomic 82 pvReclaimPolicy: 83 description: The reclaim policy for the PV created by this backup 84 repo. 85 enum: 86 - Delete 87 - Retain 88 type: string 89 storageProviderRef: 90 description: The storage provider used by this backup repo. 91 type: string 92 x-kubernetes-validations: 93 - message: StorageProviderRef is immutable 94 rule: self == oldSelf 95 volumeCapacity: 96 anyOf: 97 - type: integer 98 - type: string 99 description: The requested capacity for the PVC created by this backup 100 repo. 101 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 102 x-kubernetes-int-or-string: true 103 required: 104 - pvReclaimPolicy 105 - storageProviderRef 106 type: object 107 status: 108 description: BackupRepoStatus defines the observed state of BackupRepo 109 properties: 110 backupPVCName: 111 description: backupPVCName is the name of the PVC used to store backup 112 data. 113 type: string 114 conditions: 115 description: conditions describes the current state of the repo. 116 items: 117 description: "Condition contains details for one aspect of the current 118 state of this API Resource. --- This struct is intended for direct 119 use as an array at the field path .status.conditions. For example, 120 \n type FooStatus struct{ // Represents the observations of a 121 foo's current state. // Known .status.conditions.type are: \"Available\", 122 \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge 123 // +listType=map // +listMapKey=type Conditions []metav1.Condition 124 `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" 125 protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" 126 properties: 127 lastTransitionTime: 128 description: lastTransitionTime is the last time the condition 129 transitioned from one status to another. This should be when 130 the underlying condition changed. If that is not known, then 131 using the time when the API field changed is acceptable. 132 format: date-time 133 type: string 134 message: 135 description: message is a human readable message indicating 136 details about the transition. This may be an empty string. 137 maxLength: 32768 138 type: string 139 observedGeneration: 140 description: observedGeneration represents the .metadata.generation 141 that the condition was set based upon. For instance, if .metadata.generation 142 is currently 12, but the .status.conditions[x].observedGeneration 143 is 9, the condition is out of date with respect to the current 144 state of the instance. 145 format: int64 146 minimum: 0 147 type: integer 148 reason: 149 description: reason contains a programmatic identifier indicating 150 the reason for the condition's last transition. Producers 151 of specific condition types may define expected values and 152 meanings for this field, and whether the values are considered 153 a guaranteed API. The value should be a CamelCase string. 154 This field may not be empty. 155 maxLength: 1024 156 minLength: 1 157 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 158 type: string 159 status: 160 description: status of the condition, one of True, False, Unknown. 161 enum: 162 - "True" 163 - "False" 164 - Unknown 165 type: string 166 type: 167 description: type of condition in CamelCase or in foo.example.com/CamelCase. 168 --- Many .condition.type values are consistent across resources 169 like Available, but because arbitrary conditions can be useful 170 (see .node.status.conditions), the ability to deconflict is 171 important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) 172 maxLength: 316 173 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ 174 type: string 175 required: 176 - lastTransitionTime 177 - message 178 - reason 179 - status 180 - type 181 type: object 182 type: array 183 generatedCSIDriverSecret: 184 description: generatedCSIDriverSecret references the generated secret 185 used by the CSI driver. 186 properties: 187 name: 188 description: name is unique within a namespace to reference a 189 secret resource. 190 type: string 191 namespace: 192 description: namespace defines the space within which the secret 193 name must be unique. 194 type: string 195 type: object 196 x-kubernetes-map-type: atomic 197 generatedStorageClassName: 198 description: generatedStorageClassName indicates the generated storage 199 class name. 200 type: string 201 isDefault: 202 description: isDefault indicates whether this backup repo is the default 203 one. 204 type: boolean 205 observedGeneration: 206 description: observedGeneration is the latest generation observed 207 by the controller. 208 format: int64 209 type: integer 210 phase: 211 allOf: 212 - enum: 213 - PreChecking 214 - Failed 215 - Ready 216 - Deleting 217 - enum: 218 - PreChecking 219 - Failed 220 - Ready 221 - Deleting 222 description: Backup repo reconciliation phases. Valid values are PreChecking, 223 Failed, Ready, Deleting. 224 type: string 225 toolConfigSecretName: 226 description: toolConfigSecretName is the name of the secret containing 227 the configuration for the access tool. 228 type: string 229 type: object 230 type: object 231 served: true 232 storage: true 233 subresources: 234 status: {}