Skip to content

Commit

Permalink
feat(hostnamegenerator): implement MeshExternalService support (#10379)
Browse files Browse the repository at this point in the history
Signed-off-by: Lukasz Dziedziak <lukidzi@gmail.com>
Co-authored-by: Mike Beaumont <mjboamail@gmail.com>
Co-authored-by: slonka <slonka@users.noreply.github.com>
  • Loading branch information
3 people committed Jun 5, 2024
1 parent a3e04e9 commit 4d02c0b
Show file tree
Hide file tree
Showing 29 changed files with 1,285 additions and 430 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -485,23 +485,79 @@ spec:
items:
properties:
hostname:
description: Hostname of the generated domain
type: string
hostnameGeneratorRef:
description: HostnameGeneratorRef informes which generator was
used
properties:
name:
type: string
required:
- name
type: object
origin:
description: Origin provides information what generated the
vip
type: string
type: object
type: array
hostnameGenerators:
items:
properties:
conditions:
description: Conditions is an array of hostname generator conditions.
items:
properties:
message:
description: |-
message is a human readable message indicating details about the transition.
This may be an empty string.
maxLength: 32768
type: string
reason:
description: |-
reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
maxLength: 1024
minLength: 1
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
type: string
status:
description: status of the condition, one of True, False,
Unknown.
enum:
- "True"
- "False"
- Unknown
type: string
type:
description: |-
type of condition in CamelCase or in foo.example.com/CamelCase.
---
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
useful (see .node.status.conditions), the ability to deconflict is important.
The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
maxLength: 316
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])$
type: string
required:
- message
- reason
- status
- type
type: object
type: array
x-kubernetes-list-map-keys:
- type
x-kubernetes-list-type: map
hostnameGeneratorRef:
properties:
name:
type: string
required:
- name
type: object
required:
- origin
- hostnameGeneratorRef
type: object
type: array
vip:
Expand Down Expand Up @@ -5120,7 +5176,7 @@ spec:
items:
properties:
conditions:
description: Conditions is an array of gateway instance conditions.
description: Conditions is an array of hostname generator conditions.
items:
properties:
message:
Expand Down Expand Up @@ -7243,6 +7299,15 @@ spec:
properties:
selector:
properties:
meshExternalService:
properties:
matchLabels:
additionalProperties:
type: string
type: object
matchName:
type: string
type: object
meshService:
properties:
matchLabels:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -485,23 +485,79 @@ spec:
items:
properties:
hostname:
description: Hostname of the generated domain
type: string
hostnameGeneratorRef:
description: HostnameGeneratorRef informes which generator was
used
properties:
name:
type: string
required:
- name
type: object
origin:
description: Origin provides information what generated the
vip
type: string
type: object
type: array
hostnameGenerators:
items:
properties:
conditions:
description: Conditions is an array of hostname generator conditions.
items:
properties:
message:
description: |-
message is a human readable message indicating details about the transition.
This may be an empty string.
maxLength: 32768
type: string
reason:
description: |-
reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
maxLength: 1024
minLength: 1
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
type: string
status:
description: status of the condition, one of True, False,
Unknown.
enum:
- "True"
- "False"
- Unknown
type: string
type:
description: |-
type of condition in CamelCase or in foo.example.com/CamelCase.
---
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
useful (see .node.status.conditions), the ability to deconflict is important.
The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
maxLength: 316
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])$
type: string
required:
- message
- reason
- status
- type
type: object
type: array
x-kubernetes-list-map-keys:
- type
x-kubernetes-list-type: map
hostnameGeneratorRef:
properties:
name:
type: string
required:
- name
type: object
required:
- origin
- hostnameGeneratorRef
type: object
type: array
vip:
Expand Down Expand Up @@ -5120,7 +5176,7 @@ spec:
items:
properties:
conditions:
description: Conditions is an array of gateway instance conditions.
description: Conditions is an array of hostname generator conditions.
items:
properties:
message:
Expand Down Expand Up @@ -7243,6 +7299,15 @@ spec:
properties:
selector:
properties:
meshExternalService:
properties:
matchLabels:
additionalProperties:
type: string
type: object
matchName:
type: string
type: object
meshService:
properties:
matchLabels:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -505,23 +505,79 @@ spec:
items:
properties:
hostname:
description: Hostname of the generated domain
type: string
hostnameGeneratorRef:
description: HostnameGeneratorRef informes which generator was
used
properties:
name:
type: string
required:
- name
type: object
origin:
description: Origin provides information what generated the
vip
type: string
type: object
type: array
hostnameGenerators:
items:
properties:
conditions:
description: Conditions is an array of hostname generator conditions.
items:
properties:
message:
description: |-
message is a human readable message indicating details about the transition.
This may be an empty string.
maxLength: 32768
type: string
reason:
description: |-
reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty.
maxLength: 1024
minLength: 1
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
type: string
status:
description: status of the condition, one of True, False,
Unknown.
enum:
- "True"
- "False"
- Unknown
type: string
type:
description: |-
type of condition in CamelCase or in foo.example.com/CamelCase.
---
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
useful (see .node.status.conditions), the ability to deconflict is important.
The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
maxLength: 316
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])$
type: string
required:
- message
- reason
- status
- type
type: object
type: array
x-kubernetes-list-map-keys:
- type
x-kubernetes-list-type: map
hostnameGeneratorRef:
properties:
name:
type: string
required:
- name
type: object
required:
- origin
- hostnameGeneratorRef
type: object
type: array
vip:
Expand Down Expand Up @@ -5140,7 +5196,7 @@ spec:
items:
properties:
conditions:
description: Conditions is an array of gateway instance conditions.
description: Conditions is an array of hostname generator conditions.
items:
properties:
message:
Expand Down Expand Up @@ -7263,6 +7319,15 @@ spec:
properties:
selector:
properties:
meshExternalService:
properties:
matchLabels:
additionalProperties:
type: string
type: object
matchName:
type: string
type: object
meshService:
properties:
matchLabels:
Expand Down
Loading

0 comments on commit 4d02c0b

Please sign in to comment.