github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/helm/crds/apps.kubeblocks.io_configurations.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: configurations.apps.kubeblocks.io 9 spec: 10 group: apps.kubeblocks.io 11 names: 12 kind: Configuration 13 listKind: ConfigurationList 14 plural: configurations 15 singular: configuration 16 scope: Namespaced 17 versions: 18 - name: v1alpha1 19 schema: 20 openAPIV3Schema: 21 description: Configuration is the Schema for the configurations API 22 properties: 23 apiVersion: 24 description: 'APIVersion defines the versioned schema of this representation 25 of an object. Servers should convert recognized schemas to the latest 26 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 27 type: string 28 kind: 29 description: 'Kind is a string value representing the REST resource this 30 object represents. Servers may infer this from the endpoint the client 31 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 32 type: string 33 metadata: 34 type: object 35 spec: 36 description: ConfigurationSpec defines the desired state of Configuration 37 properties: 38 clusterRef: 39 description: clusterRef references Cluster name. 40 type: string 41 x-kubernetes-validations: 42 - message: forbidden to update spec.clusterRef 43 rule: self == oldSelf 44 componentName: 45 description: componentName is cluster component name. 46 type: string 47 x-kubernetes-validations: 48 - message: forbidden to update spec.clusterRef 49 rule: self == oldSelf 50 configItemDetails: 51 description: customConfigurationItems describes user-defined config 52 template. 53 items: 54 properties: 55 configFileParams: 56 additionalProperties: 57 properties: 58 content: 59 description: fileContent indicates the configuration file 60 content. 61 type: string 62 parameters: 63 additionalProperties: 64 type: string 65 description: updated parameters for a single configuration 66 file. 67 type: object 68 type: object 69 description: configFileParams is used to set the parameters 70 to be updated. 71 type: object 72 configSpec: 73 description: configSpec is used to set the configuration template. 74 properties: 75 asEnvFrom: 76 description: 'asEnvFrom is optional: the list of containers 77 will be injected into EnvFrom.' 78 items: 79 type: string 80 type: array 81 x-kubernetes-list-type: set 82 constraintRef: 83 description: Specify the name of the referenced the configuration 84 constraints object. 85 maxLength: 63 86 pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$ 87 type: string 88 defaultMode: 89 description: 'defaultMode is optional: mode bits used to 90 set permissions on created files by default. Must be an 91 octal value between 0000 and 0777 or a decimal value between 92 0 and 511. YAML accepts both octal and decimal values, 93 JSON requires decimal values for mode bits. Defaults to 94 0644. Directories within the path are not affected by 95 this setting. This might be in conflict with other options 96 that affect the file mode, like fsGroup, and the result 97 can be other mode bits set.' 98 format: int32 99 type: integer 100 keys: 101 description: Specify a list of keys. If empty, ConfigConstraint 102 takes effect for all keys in configmap. 103 items: 104 type: string 105 type: array 106 x-kubernetes-list-type: set 107 legacyRenderedConfigSpec: 108 description: 'lazyRenderedConfigSpec is optional: specify 109 the secondary rendered config spec.' 110 properties: 111 namespace: 112 default: default 113 description: Specify the namespace of the referenced 114 the configuration template ConfigMap object. An empty 115 namespace is equivalent to the "default" namespace. 116 maxLength: 63 117 pattern: ^[a-z0-9]([a-z0-9\-]*[a-z0-9])?$ 118 type: string 119 policy: 120 default: none 121 description: policy defines how to merge external imported 122 templates into component templates. 123 enum: 124 - patch 125 - replace 126 - none 127 type: string 128 templateRef: 129 description: Specify the name of the referenced the 130 configuration template ConfigMap object. 131 maxLength: 63 132 pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$ 133 type: string 134 required: 135 - templateRef 136 type: object 137 name: 138 description: Specify the name of configuration template. 139 maxLength: 63 140 pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$ 141 type: string 142 namespace: 143 default: default 144 description: Specify the namespace of the referenced the 145 configuration template ConfigMap object. An empty namespace 146 is equivalent to the "default" namespace. 147 maxLength: 63 148 pattern: ^[a-z0-9]([a-z0-9\-]*[a-z0-9])?$ 149 type: string 150 templateRef: 151 description: Specify the name of the referenced the configuration 152 template ConfigMap object. 153 maxLength: 63 154 pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$ 155 type: string 156 volumeName: 157 description: volumeName is the volume name of PodTemplate, 158 which the configuration file produced through the configuration 159 template will be mounted to the corresponding volume. 160 Must be a DNS_LABEL name. The volume name must be defined 161 in podSpec.containers[*].volumeMounts. 162 maxLength: 63 163 pattern: ^[a-z]([a-z0-9\-]*[a-z0-9])?$ 164 type: string 165 required: 166 - name 167 - templateRef 168 - volumeName 169 type: object 170 importTemplateRef: 171 description: Specify the configuration template. 172 properties: 173 namespace: 174 default: default 175 description: Specify the namespace of the referenced the 176 configuration template ConfigMap object. An empty namespace 177 is equivalent to the "default" namespace. 178 maxLength: 63 179 pattern: ^[a-z0-9]([a-z0-9\-]*[a-z0-9])?$ 180 type: string 181 policy: 182 default: none 183 description: policy defines how to merge external imported 184 templates into component templates. 185 enum: 186 - patch 187 - replace 188 - none 189 type: string 190 templateRef: 191 description: Specify the name of the referenced the configuration 192 template ConfigMap object. 193 maxLength: 63 194 pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$ 195 type: string 196 required: 197 - templateRef 198 type: object 199 name: 200 description: Specify the name of configuration template. 201 maxLength: 63 202 pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$ 203 type: string 204 version: 205 description: version is the version of configuration template. 206 type: string 207 required: 208 - name 209 type: object 210 type: array 211 x-kubernetes-list-map-keys: 212 - name 213 x-kubernetes-list-type: map 214 required: 215 - clusterRef 216 - componentName 217 type: object 218 status: 219 description: ConfigurationStatus defines the observed state of Configuration 220 properties: 221 conditions: 222 description: conditions describes opsRequest detail status. 223 items: 224 description: "Condition contains details for one aspect of the current 225 state of this API Resource. --- This struct is intended for direct 226 use as an array at the field path .status.conditions. For example, 227 \n type FooStatus struct{ // Represents the observations of a 228 foo's current state. // Known .status.conditions.type are: \"Available\", 229 \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge 230 // +listType=map // +listMapKey=type Conditions []metav1.Condition 231 `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" 232 protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" 233 properties: 234 lastTransitionTime: 235 description: lastTransitionTime is the last time the condition 236 transitioned from one status to another. This should be when 237 the underlying condition changed. If that is not known, then 238 using the time when the API field changed is acceptable. 239 format: date-time 240 type: string 241 message: 242 description: message is a human readable message indicating 243 details about the transition. This may be an empty string. 244 maxLength: 32768 245 type: string 246 observedGeneration: 247 description: observedGeneration represents the .metadata.generation 248 that the condition was set based upon. For instance, if .metadata.generation 249 is currently 12, but the .status.conditions[x].observedGeneration 250 is 9, the condition is out of date with respect to the current 251 state of the instance. 252 format: int64 253 minimum: 0 254 type: integer 255 reason: 256 description: reason contains a programmatic identifier indicating 257 the reason for the condition's last transition. Producers 258 of specific condition types may define expected values and 259 meanings for this field, and whether the values are considered 260 a guaranteed API. The value should be a CamelCase string. 261 This field may not be empty. 262 maxLength: 1024 263 minLength: 1 264 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 265 type: string 266 status: 267 description: status of the condition, one of True, False, Unknown. 268 enum: 269 - "True" 270 - "False" 271 - Unknown 272 type: string 273 type: 274 description: type of condition in CamelCase or in foo.example.com/CamelCase. 275 --- Many .condition.type values are consistent across resources 276 like Available, but because arbitrary conditions can be useful 277 (see .node.status.conditions), the ability to deconflict is 278 important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) 279 maxLength: 316 280 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])$ 281 type: string 282 required: 283 - lastTransitionTime 284 - message 285 - reason 286 - status 287 - type 288 type: object 289 type: array 290 x-kubernetes-list-map-keys: 291 - type 292 x-kubernetes-list-type: map 293 configurationStatus: 294 description: configurationStatus describes the status of the component 295 reconfiguring. 296 items: 297 properties: 298 lastDoneRevision: 299 description: lastDoneRevision is the last done revision of configurationItem. 300 type: string 301 message: 302 description: message field describes the reasons of abnormal 303 status. 304 type: string 305 name: 306 description: name is a config template name. 307 maxLength: 63 308 pattern: ^[a-z0-9]([a-z0-9\.\-]*[a-z0-9])?$ 309 type: string 310 phase: 311 description: phase is status of configurationItem. 312 enum: 313 - Creating 314 - Init 315 - Running 316 - Pending 317 - Merged 318 - MergeFailed 319 - FailedAndPause 320 - Upgrading 321 - Deleting 322 - FailedAndRetry 323 - Finished 324 type: string 325 reconcileDetail: 326 description: reconcileDetail describes the details of the configuration 327 change execution. 328 properties: 329 currentRevision: 330 description: currentRevision is the current revision of 331 configurationItem. 332 type: string 333 errMessage: 334 description: errMessage is the error message when the configuration 335 change execution fails. 336 type: string 337 execResult: 338 description: execResult is the result of the latest execution. 339 type: string 340 expectedCount: 341 default: -1 342 description: expectedCount is the number of pods that need 343 to be executed for configuration changes. 344 format: int32 345 type: integer 346 policy: 347 description: policy is the policy of the latest execution. 348 type: string 349 succeedCount: 350 default: -1 351 description: succeedCount is the number of pods for which 352 configuration changes were successfully executed. 353 format: int32 354 type: integer 355 type: object 356 updateRevision: 357 description: updateRevision is the update revision of configurationItem. 358 type: string 359 required: 360 - name 361 type: object 362 type: array 363 x-kubernetes-list-map-keys: 364 - name 365 x-kubernetes-list-type: map 366 message: 367 description: message field describes the reasons of abnormal status. 368 type: string 369 observedGeneration: 370 description: observedGeneration is the latest generation observed 371 for this ClusterDefinition. It refers to the ConfigConstraint's 372 generation, which is updated by the API Server. 373 format: int64 374 type: integer 375 required: 376 - configurationStatus 377 type: object 378 type: object 379 served: true 380 storage: true 381 subresources: 382 status: {}