|
14268 | 14268 | } |
14269 | 14269 | } |
14270 | 14270 | }, |
| 14271 | + "com.github.openshift.api.example.v1.FormatMarkerExamples": { |
| 14272 | + "description": "FormatMarkerExamples demonstrates all Kubebuilder Format markers supported as of Kubernetes 1.33. This struct provides a comprehensive reference for format marker validation. Each field uses a different format marker to validate its value.", |
| 14273 | + "type": "object", |
| 14274 | + "properties": { |
| 14275 | + "base64Data": { |
| 14276 | + "description": "base64Data must be valid base64-encoded data. Valid examples include aGVsbG8= (encodes \"hello\") or SGVsbG8gV29ybGQh (encodes \"Hello World!\").", |
| 14277 | + "type": "string" |
| 14278 | + }, |
| 14279 | + "cidrNotation": { |
| 14280 | + "description": "cidrNotation must be a valid CIDR notation IP address range. Valid examples include IPv4 CIDR (10.0.0.0/8, 192.168.1.0/24) or IPv6 CIDR (fd00::/8, 2001:db8::/32).\n\nUse of Format=cidr is not recommended due to CVE-2021-29923 and CVE-2024-24790. Instead, use the CEL expression `isCIDR(self)` to validate CIDR notation. Additionally, use `isCIDR(self) && cidr(self).ip().family() == X` to validate IPvX specifically.", |
| 14281 | + "type": "string" |
| 14282 | + }, |
| 14283 | + "dateField": { |
| 14284 | + "description": "dateField must be a valid date in RFC 3339 full-date format (YYYY-MM-DD). Valid examples include 2024-01-15 or 2023-12-31.", |
| 14285 | + "type": "string" |
| 14286 | + }, |
| 14287 | + "dateTimeField": { |
| 14288 | + "description": "dateTimeField must be a valid RFC 3339 date-time. Valid examples include 2024-01-15T14:30:00Z, 2024-01-15T14:30:00+00:00, or 2024-01-15T14:30:00.123Z.", |
| 14289 | + "type": "string" |
| 14290 | + }, |
| 14291 | + "durationField": { |
| 14292 | + "description": "durationField must be a valid duration string parseable by Go's time.ParseDuration. Valid time units are ns, us (or µs), ms, s, m, h. Valid examples include 30s, 5m, 1h30m, 100ms, or 1h.", |
| 14293 | + "type": "string" |
| 14294 | + }, |
| 14295 | + "emailAddress": { |
| 14296 | + "description": "emailAddress must be a valid email address. Valid examples include user@example.com or firstname.lastname@company.co.uk.", |
| 14297 | + "type": "string" |
| 14298 | + }, |
| 14299 | + "hostnameField": { |
| 14300 | + "description": "hostnameField must be a valid Internet hostname per RFC 1034. Valid examples include example.com, api.example.com, or my-service.", |
| 14301 | + "type": "string" |
| 14302 | + }, |
| 14303 | + "ipv4Address": { |
| 14304 | + "description": "ipv4Address must be a valid IPv4 address in dotted-quad notation. Valid values range from 0.0.0.0 to 255.255.255.255 (e.g., 192.168.1.1).\n\nUse of Format=ipv4 is not recommended due to CVE-2021-29923 and CVE-2024-24790. Instead, use the CEL expression `isIP(self) && ip(self).family() == 4` to validate IPv4 addresses.", |
| 14305 | + "type": "string" |
| 14306 | + }, |
| 14307 | + "ipv6Address": { |
| 14308 | + "description": "ipv6Address must be a valid IPv6 address. Valid examples include full form (2001:0db8:0000:0000:0000:0000:0000:0001) or compressed form (2001:db8::1 or ::1).\n\nUse of Format=ipv6 is not recommended due to CVE-2021-29923 and CVE-2024-24790. Instead, use the CEL expression `isIP(self) && ip(self).family() == 6` to validate IPv6 addresses.", |
| 14309 | + "type": "string" |
| 14310 | + }, |
| 14311 | + "macAddress": { |
| 14312 | + "description": "macAddress must be a valid MAC address. Valid examples include 00:1A:2B:3C:4D:5E or 00-1A-2B-3C-4D-5E.", |
| 14313 | + "type": "string" |
| 14314 | + }, |
| 14315 | + "passwordField": { |
| 14316 | + "description": "passwordField is a marker for sensitive data. Note that the password format marker does not perform any actual validation - it accepts any string value. This marker is primarily used to signal that the field contains sensitive information.", |
| 14317 | + "type": "string" |
| 14318 | + }, |
| 14319 | + "uriField": { |
| 14320 | + "description": "uriField must be a valid URI following RFC 3986 syntax. Valid examples include https://example.com/path?query=value or /absolute-path.", |
| 14321 | + "type": "string" |
| 14322 | + }, |
| 14323 | + "uuid3Field": { |
| 14324 | + "description": "uuid3Field must be a valid UUID version 3 (MD5 hash-based). Version 3 UUIDs are generated using MD5 hashing of a namespace and name. Valid example: a3bb189e-8bf9-3888-9912-ace4e6543002.", |
| 14325 | + "type": "string" |
| 14326 | + }, |
| 14327 | + "uuid4Field": { |
| 14328 | + "description": "uuid4Field must be a valid UUID version 4 (random). Version 4 UUIDs are randomly generated. Valid example: 550e8400-e29b-41d4-a716-446655440000.", |
| 14329 | + "type": "string" |
| 14330 | + }, |
| 14331 | + "uuid5Field": { |
| 14332 | + "description": "uuid5Field must be a valid UUID version 5 (SHA-1 hash-based). Version 5 UUIDs are generated using SHA-1 hashing of a namespace and name. Valid example: 74738ff5-5367-5958-9aee-98fffdcd1876.", |
| 14333 | + "type": "string" |
| 14334 | + }, |
| 14335 | + "uuidField": { |
| 14336 | + "description": "uuidField must be a valid UUID (any version) in 8-4-4-4-12 format. Valid examples include 550e8400-e29b-41d4-a716-446655440000 or 123e4567-e89b-12d3-a456-426614174000.", |
| 14337 | + "type": "string" |
| 14338 | + } |
| 14339 | + } |
| 14340 | + }, |
14271 | 14341 | "com.github.openshift.api.example.v1.StableConfigType": { |
14272 | 14342 | "description": "StableConfigType is a stable config type that may include TechPreviewNoUpgrade fields.\n\nCompatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer).", |
14273 | 14343 | "type": "object", |
|
14357 | 14427 | "default": {}, |
14358 | 14428 | "$ref": "#/definitions/com.github.openshift.api.example.v1.EvolvingUnion" |
14359 | 14429 | }, |
| 14430 | + "formatMarkerExamples": { |
| 14431 | + "description": "formatMarkerExamples demonstrates all Kubebuilder Format markers supported as of Kubernetes 1.33. This field serves as a comprehensive reference for format marker validation.", |
| 14432 | + "$ref": "#/definitions/com.github.openshift.api.example.v1.FormatMarkerExamples" |
| 14433 | + }, |
14360 | 14434 | "immutableField": { |
14361 | 14435 | "description": "immutableField is a field that is immutable once the object has been created. It is required at all times.", |
14362 | 14436 | "type": "string", |
|
23311 | 23385 | "default": {}, |
23312 | 23386 | "$ref": "#/definitions/com.github.openshift.api.machine.v1beta1.AWSResourceReference" |
23313 | 23387 | }, |
| 23388 | + "throughputMib": { |
| 23389 | + "description": "throughputMib to provision in MiB/s supported for the volume type. Not applicable to all types.\n\nThis parameter is valid only for gp3 volumes. Valid Range: Minimum value of 125. Maximum value of 2000.\n\nWhen omitted, this means no opinion, and the platform is left to choose a reasonable default, which is subject to change over time. The current default is 125.", |
| 23390 | + "type": "integer", |
| 23391 | + "format": "int32" |
| 23392 | + }, |
23314 | 23393 | "volumeSize": { |
23315 | 23394 | "description": "The size of the volume, in GiB.\n\nConstraints: 1-16384 for General Purpose SSD (gp2), 4-16384 for Provisioned IOPS SSD (io1), 500-16384 for Throughput Optimized HDD (st1), 500-16384 for Cold HDD (sc1), and 1-1024 for Magnetic (standard) volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size.\n\nDefault: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.", |
23316 | 23395 | "type": "integer", |
|
0 commit comments