--- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.4.1 creationTimestamp: null name: gatewayroutes.appmesh.k8s.aws spec: group: appmesh.k8s.aws names: categories: - all kind: GatewayRoute listKind: GatewayRouteList plural: gatewayroutes singular: gatewayroute scope: Namespaced versions: - additionalPrinterColumns: - description: The AppMesh GatewayRoute object's Amazon Resource Name jsonPath: .status.gatewayRouteARN name: ARN type: string - jsonPath: .metadata.creationTimestamp name: AGE type: date name: v1beta2 schema: openAPIV3Schema: description: GatewayRoute is the Schema for the gatewayroutes API properties: apiVersion: description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' type: string kind: description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' type: string metadata: type: object spec: description: GatewayRouteSpec defines the desired state of GatewayRoute refers to https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_gateways.html properties: awsName: description: AWSName is the AppMesh GatewayRoute object's name. If unspecified or empty, it defaults to be "${name}_${namespace}" of k8s GatewayRoute type: string grpcRoute: description: An object that represents the specification of a gRPC gatewayRoute. properties: action: description: An object that represents the action to take if a match is determined. properties: rewrite: description: GrpcGatewayRouteRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_GrpcGatewayRouteRewrite.html properties: hostname: description: GatewayRouteHostnameRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_GatewayRouteHostnameRewrite.html ENABLE or DISABLE default behavior for Hostname rewrite properties: defaultTargetHostname: enum: - ENABLED - DISABLED type: string type: object type: object target: description: An object that represents the target that traffic is routed to when a request matches the route. properties: port: description: Specifies the port of the gateway route target format: int64 minimum: 0 type: integer virtualService: description: The virtual service to associate with the gateway route target. properties: virtualServiceARN: description: Amazon Resource Name to AppMesh VirtualService object to associate with the gateway route virtual service target. Exactly one of 'virtualServiceRef' or 'virtualServiceARN' must be specified. type: string virtualServiceRef: description: Reference to Kubernetes VirtualService CR in cluster to associate with the gateway route virtual service target. Exactly one of 'virtualServiceRef' or 'virtualServiceARN' must be specified. properties: name: description: Name is the name of VirtualService CR type: string namespace: description: Namespace is the namespace of VirtualService CR. If unspecified, defaults to the referencing object's namespace type: string required: - name type: object type: object required: - virtualService type: object required: - target type: object match: description: An object that represents the criteria for determining a request match. properties: hostname: description: The client specified Hostname to match on. properties: exact: description: The value sent by the client must match the specified value exactly. maxLength: 253 minLength: 1 type: string suffix: description: The value sent by the client must end with the specified characters. maxLength: 253 minLength: 1 type: string type: object metadata: description: An object that represents the data to match from the request. items: description: GRPCGatewayRouteMetadata refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_GrpcGatewayRouteMetadata.html properties: invert: description: Specify True to match anything except the match criteria. The default value is False. type: boolean match: description: An object that represents the data to match from the request. properties: exact: description: The value sent by the client must match the specified value exactly. maxLength: 255 minLength: 1 type: string prefix: description: The value sent by the client must begin with the specified characters. maxLength: 255 minLength: 1 type: string range: description: An object that represents the range of values to match on properties: end: description: The end of the range. format: int64 type: integer start: description: The start of the range. format: int64 type: integer required: - end - start type: object regex: description: The value sent by the client must include the specified characters. maxLength: 255 minLength: 1 type: string suffix: description: The value sent by the client must end with the specified characters. maxLength: 255 minLength: 1 type: string type: object name: description: The name of the route. maxLength: 50 minLength: 1 type: string required: - name type: object maxItems: 10 minItems: 1 type: array port: description: Specifies the port the request to be matched on format: int64 minimum: 0 type: integer serviceName: description: Either ServiceName or Hostname must be specified. Both are allowed as well The fully qualified domain name for the service to match from the request. type: string type: object required: - action - match type: object http2Route: description: An object that represents the specification of an HTTP/2 gatewayRoute. properties: action: description: An object that represents the action to take if a match is determined. properties: rewrite: description: HTTPGatewayRouteRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpGatewayRouteRewrite.html properties: hostname: description: GatewayRouteHostnameRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_GatewayRouteHostnameRewrite.html ENABLE or DISABLE default behavior for Hostname rewrite properties: defaultTargetHostname: enum: - ENABLED - DISABLED type: string type: object path: description: GatewayRoutePathRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpGatewayRoutePathRewrite.html properties: exact: maxLength: 255 minLength: 1 type: string type: object prefix: description: GatewayRoutePrefixRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpGatewayRoutePrefixRewrite.html properties: defaultPrefix: enum: - ENABLED - DISABLED type: string value: description: When DefaultPrefix is specified, Value cannot be set maxLength: 255 minLength: 1 type: string type: object type: object target: description: An object that represents the target that traffic is routed to when a request matches the route. properties: port: description: Specifies the port of the gateway route target format: int64 minimum: 0 type: integer virtualService: description: The virtual service to associate with the gateway route target. properties: virtualServiceARN: description: Amazon Resource Name to AppMesh VirtualService object to associate with the gateway route virtual service target. Exactly one of 'virtualServiceRef' or 'virtualServiceARN' must be specified. type: string virtualServiceRef: description: Reference to Kubernetes VirtualService CR in cluster to associate with the gateway route virtual service target. Exactly one of 'virtualServiceRef' or 'virtualServiceARN' must be specified. properties: name: description: Name is the name of VirtualService CR type: string namespace: description: Namespace is the namespace of VirtualService CR. If unspecified, defaults to the referencing object's namespace type: string required: - name type: object type: object required: - virtualService type: object required: - target type: object match: description: An object that represents the criteria for determining a request match. properties: headers: description: An object that represents the client request headers to match on. items: description: HTTPGatewayRouteHeader refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpGatewayRouteHeader.html properties: invert: description: Specify True to match anything except the match criteria. The default value is False. type: boolean match: description: The HeaderMatchMethod object. properties: exact: description: The value sent by the client must match the specified value exactly. maxLength: 255 minLength: 1 type: string prefix: description: The value sent by the client must begin with the specified characters. maxLength: 255 minLength: 1 type: string range: description: An object that represents the range of values to match on. properties: end: description: The end of the range. format: int64 type: integer start: description: The start of the range. format: int64 type: integer required: - end - start type: object regex: description: The value sent by the client must include the specified characters. maxLength: 255 minLength: 1 type: string suffix: description: The value sent by the client must end with the specified characters. maxLength: 255 minLength: 1 type: string type: object name: description: A name for the HTTP header in the client request that will be matched on. maxLength: 50 minLength: 1 type: string required: - name type: object maxItems: 10 minItems: 1 type: array hostname: description: The client specified Hostname to match on. properties: exact: description: The value sent by the client must match the specified value exactly. maxLength: 253 minLength: 1 type: string suffix: description: The value sent by the client must end with the specified characters. maxLength: 253 minLength: 1 type: string type: object method: description: The client request method to match on. enum: - CONNECT - DELETE - GET - HEAD - OPTIONS - PATCH - POST - PUT - TRACE type: string path: description: Specified path of the request to be matched on properties: exact: description: The value sent by the client must match the specified value exactly. maxLength: 255 minLength: 1 type: string regex: description: The value sent by the client must end with the specified characters. maxLength: 255 minLength: 1 type: string type: object port: description: Specifies the port the request to be matched on format: int64 minimum: 0 type: integer prefix: description: Either Prefix or Hostname must be specified. Both are allowed as well. Specifies the prefix to match requests with type: string queryParameters: description: Client specified query parameters to match on items: description: HTTPQueryParameters refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpQueryParameter.html properties: match: description: The QueryMatchMethod object. properties: exact: type: string type: object name: type: string required: - name type: object maxItems: 10 minItems: 1 type: array type: object required: - action - match type: object httpRoute: description: An object that represents the specification of an HTTP gatewayRoute. properties: action: description: An object that represents the action to take if a match is determined. properties: rewrite: description: HTTPGatewayRouteRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpGatewayRouteRewrite.html properties: hostname: description: GatewayRouteHostnameRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_GatewayRouteHostnameRewrite.html ENABLE or DISABLE default behavior for Hostname rewrite properties: defaultTargetHostname: enum: - ENABLED - DISABLED type: string type: object path: description: GatewayRoutePathRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpGatewayRoutePathRewrite.html properties: exact: maxLength: 255 minLength: 1 type: string type: object prefix: description: GatewayRoutePrefixRewrite refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpGatewayRoutePrefixRewrite.html properties: defaultPrefix: enum: - ENABLED - DISABLED type: string value: description: When DefaultPrefix is specified, Value cannot be set maxLength: 255 minLength: 1 type: string type: object type: object target: description: An object that represents the target that traffic is routed to when a request matches the route. properties: port: description: Specifies the port of the gateway route target format: int64 minimum: 0 type: integer virtualService: description: The virtual service to associate with the gateway route target. properties: virtualServiceARN: description: Amazon Resource Name to AppMesh VirtualService object to associate with the gateway route virtual service target. Exactly one of 'virtualServiceRef' or 'virtualServiceARN' must be specified. type: string virtualServiceRef: description: Reference to Kubernetes VirtualService CR in cluster to associate with the gateway route virtual service target. Exactly one of 'virtualServiceRef' or 'virtualServiceARN' must be specified. properties: name: description: Name is the name of VirtualService CR type: string namespace: description: Namespace is the namespace of VirtualService CR. If unspecified, defaults to the referencing object's namespace type: string required: - name type: object type: object required: - virtualService type: object required: - target type: object match: description: An object that represents the criteria for determining a request match. properties: headers: description: An object that represents the client request headers to match on. items: description: HTTPGatewayRouteHeader refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpGatewayRouteHeader.html properties: invert: description: Specify True to match anything except the match criteria. The default value is False. type: boolean match: description: The HeaderMatchMethod object. properties: exact: description: The value sent by the client must match the specified value exactly. maxLength: 255 minLength: 1 type: string prefix: description: The value sent by the client must begin with the specified characters. maxLength: 255 minLength: 1 type: string range: description: An object that represents the range of values to match on. properties: end: description: The end of the range. format: int64 type: integer start: description: The start of the range. format: int64 type: integer required: - end - start type: object regex: description: The value sent by the client must include the specified characters. maxLength: 255 minLength: 1 type: string suffix: description: The value sent by the client must end with the specified characters. maxLength: 255 minLength: 1 type: string type: object name: description: A name for the HTTP header in the client request that will be matched on. maxLength: 50 minLength: 1 type: string required: - name type: object maxItems: 10 minItems: 1 type: array hostname: description: The client specified Hostname to match on. properties: exact: description: The value sent by the client must match the specified value exactly. maxLength: 253 minLength: 1 type: string suffix: description: The value sent by the client must end with the specified characters. maxLength: 253 minLength: 1 type: string type: object method: description: The client request method to match on. enum: - CONNECT - DELETE - GET - HEAD - OPTIONS - PATCH - POST - PUT - TRACE type: string path: description: Specified path of the request to be matched on properties: exact: description: The value sent by the client must match the specified value exactly. maxLength: 255 minLength: 1 type: string regex: description: The value sent by the client must end with the specified characters. maxLength: 255 minLength: 1 type: string type: object port: description: Specifies the port the request to be matched on format: int64 minimum: 0 type: integer prefix: description: Either Prefix or Hostname must be specified. Both are allowed as well. Specifies the prefix to match requests with type: string queryParameters: description: Client specified query parameters to match on items: description: HTTPQueryParameters refers to https://docs.aws.amazon.com/app-mesh/latest/APIReference/API_HttpQueryParameter.html properties: match: description: The QueryMatchMethod object. properties: exact: type: string type: object name: type: string required: - name type: object maxItems: 10 minItems: 1 type: array type: object required: - action - match type: object meshRef: description: "A reference to k8s Mesh CR that this GatewayRoute belongs to. The admission controller populates it using Meshes's selector, and prevents users from setting this field. \n Populated by the system. Read-only." properties: name: description: Name is the name of Mesh CR type: string uid: description: UID is the UID of Mesh CR type: string required: - name - uid type: object priority: description: Priority for the gatewayroute. Default Priority is 1000 which is lowest priority format: int64 maximum: 1000 minimum: 0 type: integer virtualGatewayRef: description: "A reference to k8s VirtualGateway CR that this GatewayRoute belongs to. The admission controller populates it using VirtualGateway's selector, and prevents users from setting this field. \n Populated by the system. Read-only." properties: name: description: Name is the name of VirtualGateway CR type: string namespace: description: Namespace is the namespace of VirtualGateway CR. If unspecified, defaults to the referencing object's namespace type: string uid: description: UID is the UID of VirtualGateway CR type: string required: - name - uid type: object type: object status: description: GatewayRouteStatus defines the observed state of GatewayRoute properties: conditions: description: The current GatewayRoute status. items: properties: lastTransitionTime: description: Last time the condition transitioned from one status to another. format: date-time type: string message: description: A human readable message indicating details about the transition. type: string reason: description: The reason for the condition's last transition. type: string status: description: Status of the condition, one of True, False, Unknown. type: string type: description: Type of GatewayRoute condition. type: string required: - status - type type: object type: array gatewayRouteARN: description: GatewayRouteARN is the AppMesh GatewayRoute object's Amazon Resource Name type: string observedGeneration: description: The generation observed by the GatewayRoute controller. format: int64 type: integer type: object type: object x-kubernetes-preserve-unknown-fields: true served: true storage: true subresources: status: {} status: acceptedNames: kind: "" plural: "" conditions: [] storedVersions: []