apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: ingressroutetcps.traefik.containo.us
spec:
  group: traefik.containo.us
  scope: Namespaced
  names:
    kind: IngressRouteTCP
    listKind: IngressRouteTCPList
    plural: ingressroutetcps
    singular: ingressroutetcp
  versions:
    - name: v1alpha1
      served: true
      storage: true
      schema:
        openAPIV3Schema:
          type: object
          description: IngressRouteTCP is an Ingress CRD specification.
          required:
            - metadata
            - spec
          properties:
            apiVersion:
              type: string
              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
            kind:
              type: string
              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
            metadata:
              type: object
            spec:
              type: object
              description: IngressRouteTCPSpec is a specification for a IngressRouteTCPSpec resource.
              required:
                - routes
              properties:
                entryPoints:
                  type: array
                  items:
                    type: string
                routes:
                  type: array
                  items:
                    type: object
                    description: RouteTCP contains the set of routes.
                    required:
                      - match
                    properties:
                      match:
                        type: string
                      middlewares:
                        type: array
                        description: Middlewares contains references to MiddlewareTCP resources.
                        items:
                          type: object
                          description: ObjectReference is a generic reference to a Traefik resource.
                          required:
                            - name
                          properties:
                            name:
                              type: string
                            namespace:
                              type: string
                      services:
                        type: array
                        items:
                          type: object
                          description: ServiceTCP defines an upstream to proxy traffic.
                          required:
                            - name
                            - port
                          properties:
                            name:
                              type: string
                            namespace:
                              type: string
                            port:
                              anyOf:
                                - type: integer
                                - type: string
                              x-kubernetes-int-or-string: true
                            proxyProtocol:
                              type: object
                              description: ProxyProtocol holds the ProxyProtocol configuration.
                              properties:
                                version:
                                  type: integer
                            terminationDelay:
                              type: integer
                            weight:
                              type: integer
                tls:
                  type: object
                  description: >-
                    TLSTCP contains the TLS certificates configuration of the routes.
                    To enable Let's Encrypt, use an empty TLS struct, e.g. in YAML:
                      tls: {}       # inline format
                      tls:
                        secretName: # block format
                  properties:
                    certResolver:
                      type: string
                    domains:
                      type: array
                      items:
                        type: object
                        description: Domain holds a domain name with SANs.
                        properties:
                          main:
                            type: string
                          sans:
                            type: array
                            items:
                              type: string
                    options:
                      type: object
                      description: Options is a reference to a TLSOption, that specifies the parameters of the TLS connection.
                      required:
                        - name
                      properties:
                        name:
                          type: string
                        namespace:
                          type: string
                    passthrough:
                      type: boolean
                    secretName:
                      type: string
                      description: SecretName is the name of the referenced Kubernetes Secret to specify the certificate details.
                    store:
                      type: object
                      description: Store is a reference to a TLSStore, that specifies the parameters of the TLS store.
                      required:
                        - name
                      properties:
                        name:
                          type: string
                        namespace:
                          type: string
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []
