290 lines
12 KiB
YAML
290 lines
12 KiB
YAML
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
"helm.sh/resource-policy": keep
|
|
"helm.sh/hook": pre-install,pre-upgrade,pre-rollback
|
|
controller-gen.kubebuilder.io/version: v0.4.1
|
|
creationTimestamp: null
|
|
name: traefikservices.traefik.containo.us
|
|
spec:
|
|
group: traefik.containo.us
|
|
names:
|
|
kind: TraefikService
|
|
listKind: TraefikServiceList
|
|
plural: traefikservices
|
|
singular: traefikservice
|
|
scope: Namespaced
|
|
versions:
|
|
- name: v1alpha1
|
|
schema:
|
|
openAPIV3Schema:
|
|
description:
|
|
TraefikService is the specification for a service (that an IngressRoute
|
|
refers to) that is usually not a terminal service (i.e. not a pod of servers),
|
|
as opposed to a Kubernetes Service. That is to say, it usually refers to
|
|
other (children) services, which themselves can be TraefikServices or Services.
|
|
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:
|
|
ServiceSpec defines whether a TraefikService is a load-balancer
|
|
of services or a mirroring service.
|
|
properties:
|
|
mirroring:
|
|
description:
|
|
Mirroring defines a mirroring service, which is composed
|
|
of a main load-balancer, and a list of mirrors.
|
|
properties:
|
|
kind:
|
|
enum:
|
|
- Service
|
|
- TraefikService
|
|
type: string
|
|
maxBodySize:
|
|
format: int64
|
|
type: integer
|
|
mirrors:
|
|
items:
|
|
description:
|
|
MirrorService defines one of the mirrors of a Mirroring
|
|
service.
|
|
properties:
|
|
kind:
|
|
enum:
|
|
- Service
|
|
- TraefikService
|
|
type: string
|
|
name:
|
|
description:
|
|
Name is a reference to a Kubernetes Service
|
|
object (for a load-balancer of servers), or to a TraefikService
|
|
object (service load-balancer, mirroring, etc). The differentiation
|
|
between the two is specified in the Kind field.
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
passHostHeader:
|
|
type: boolean
|
|
percent:
|
|
type: integer
|
|
port:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
x-kubernetes-int-or-string: true
|
|
responseForwarding:
|
|
description:
|
|
ResponseForwarding holds configuration for
|
|
the forward of the response.
|
|
properties:
|
|
flushInterval:
|
|
type: string
|
|
type: object
|
|
scheme:
|
|
type: string
|
|
serversTransport:
|
|
type: string
|
|
sticky:
|
|
description: Sticky holds the sticky configuration.
|
|
properties:
|
|
cookie:
|
|
description:
|
|
Cookie holds the sticky configuration based
|
|
on cookie.
|
|
properties:
|
|
httpOnly:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
sameSite:
|
|
type: string
|
|
secure:
|
|
type: boolean
|
|
type: object
|
|
type: object
|
|
strategy:
|
|
type: string
|
|
weight:
|
|
description:
|
|
Weight should only be specified when Name references
|
|
a TraefikService object (and to be precise, one that embeds
|
|
a Weighted Round Robin).
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
type: array
|
|
name:
|
|
description:
|
|
Name is a reference to a Kubernetes Service object
|
|
(for a load-balancer of servers), or to a TraefikService object
|
|
(service load-balancer, mirroring, etc). The differentiation
|
|
between the two is specified in the Kind field.
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
passHostHeader:
|
|
type: boolean
|
|
port:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
x-kubernetes-int-or-string: true
|
|
responseForwarding:
|
|
description:
|
|
ResponseForwarding holds configuration for the forward
|
|
of the response.
|
|
properties:
|
|
flushInterval:
|
|
type: string
|
|
type: object
|
|
scheme:
|
|
type: string
|
|
serversTransport:
|
|
type: string
|
|
sticky:
|
|
description: Sticky holds the sticky configuration.
|
|
properties:
|
|
cookie:
|
|
description:
|
|
Cookie holds the sticky configuration based on
|
|
cookie.
|
|
properties:
|
|
httpOnly:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
sameSite:
|
|
type: string
|
|
secure:
|
|
type: boolean
|
|
type: object
|
|
type: object
|
|
strategy:
|
|
type: string
|
|
weight:
|
|
description:
|
|
Weight should only be specified when Name references
|
|
a TraefikService object (and to be precise, one that embeds
|
|
a Weighted Round Robin).
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
weighted:
|
|
description: WeightedRoundRobin defines a load-balancer of services.
|
|
properties:
|
|
services:
|
|
items:
|
|
description: Service defines an upstream to proxy traffic.
|
|
properties:
|
|
kind:
|
|
enum:
|
|
- Service
|
|
- TraefikService
|
|
type: string
|
|
name:
|
|
description:
|
|
Name is a reference to a Kubernetes Service
|
|
object (for a load-balancer of servers), or to a TraefikService
|
|
object (service load-balancer, mirroring, etc). The differentiation
|
|
between the two is specified in the Kind field.
|
|
type: string
|
|
namespace:
|
|
type: string
|
|
passHostHeader:
|
|
type: boolean
|
|
port:
|
|
anyOf:
|
|
- type: integer
|
|
- type: string
|
|
x-kubernetes-int-or-string: true
|
|
responseForwarding:
|
|
description:
|
|
ResponseForwarding holds configuration for
|
|
the forward of the response.
|
|
properties:
|
|
flushInterval:
|
|
type: string
|
|
type: object
|
|
scheme:
|
|
type: string
|
|
serversTransport:
|
|
type: string
|
|
sticky:
|
|
description: Sticky holds the sticky configuration.
|
|
properties:
|
|
cookie:
|
|
description:
|
|
Cookie holds the sticky configuration based
|
|
on cookie.
|
|
properties:
|
|
httpOnly:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
sameSite:
|
|
type: string
|
|
secure:
|
|
type: boolean
|
|
type: object
|
|
type: object
|
|
strategy:
|
|
type: string
|
|
weight:
|
|
description:
|
|
Weight should only be specified when Name references
|
|
a TraefikService object (and to be precise, one that embeds
|
|
a Weighted Round Robin).
|
|
type: integer
|
|
required:
|
|
- name
|
|
type: object
|
|
type: array
|
|
sticky:
|
|
description: Sticky holds the sticky configuration.
|
|
properties:
|
|
cookie:
|
|
description:
|
|
Cookie holds the sticky configuration based on
|
|
cookie.
|
|
properties:
|
|
httpOnly:
|
|
type: boolean
|
|
name:
|
|
type: string
|
|
sameSite:
|
|
type: string
|
|
secure:
|
|
type: boolean
|
|
type: object
|
|
type: object
|
|
type: object
|
|
type: object
|
|
required:
|
|
- metadata
|
|
- spec
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|