Documentation ¶
Overview ¶
Package v1beta1 is the v1beta1 version of the API. +groupName=contour.heptio.com
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type CertificateDelegation
- type Delegate
- type HealthCheck
- type IngressRoute
- type IngressRouteList
- type IngressRouteSpec
- type Route
- type Service
- type TCPProxy
- type TLSCertificateDelegation
- type TLSCertificateDelegationList
- type TLSCertificateDelegationSpec
- type TimeoutPolicy
Constants ¶
const (
// GroupName is the group name for the Contour API
GroupName = "contour.heptio.com"
)
Variables ¶
var ( // SchemeBuilder collects the scheme builder functions for the Contour API SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme applies the SchemeBuilder functions to a specified scheme AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1beta1"}
SchemeGroupVersion is the GroupVersion for the Contour API
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource gets an Contour GroupResource for a specified resource
Types ¶
type CertificateDelegation ¶ added in v0.10.0
type CertificateDelegation struct { // required, the name of a secret in the current namespace. SecretName string `json:"secretName"` // required, the namespaces the authority to reference the // the secret will be delegated to. // If TargetNamespaces is nil or empty, the CertificateDelegation' // is ignored. If the TargetNamespace list contains the character, "*" // the secret will be delegated to all namespaces. TargetNamespaces []string `json:"targetNamespaces"` }
CertificateDelegation maps the authority to reference a secret in the current namespace to a set of namespaces.
func (*CertificateDelegation) DeepCopy ¶ added in v0.10.0
func (in *CertificateDelegation) DeepCopy() *CertificateDelegation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateDelegation.
func (*CertificateDelegation) DeepCopyInto ¶ added in v0.10.0
func (in *CertificateDelegation) DeepCopyInto(out *CertificateDelegation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Delegate ¶
type Delegate struct { // Name of the IngressRoute Name string `json:"name"` // Namespace of the IngressRoute. Defaults to the current namespace if not supplied. // +optional Namespace string `json:"namespace,omitempty"` }
Delegate allows for delegating VHosts to other IngressRoutes
func (*Delegate) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Delegate.
func (*Delegate) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheck ¶
type HealthCheck struct { // HTTP endpoint used to perform health checks on upstream service Path string `json:"path"` // The value of the host header in the HTTP health check request. // If left empty (default value), the name "contour-envoy-healthcheck" // will be used. // +optional Host string `json:"host,omitempty"` // The interval (seconds) between health checks // +optional IntervalSeconds int64 `json:"intervalSeconds"` // The time to wait (seconds) for a health check response // +optional TimeoutSeconds int64 `json:"timeoutSeconds"` // The number of unhealthy health checks required before a host is marked unhealthy // +optional UnhealthyThresholdCount uint32 `json:"unhealthyThresholdCount"` // The number of healthy health checks required before a host is marked healthy // +optional HealthyThresholdCount uint32 `json:"healthyThresholdCount"` }
HealthCheck defines health checks on the upstream service.
func (*HealthCheck) DeepCopy ¶
func (in *HealthCheck) DeepCopy() *HealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheck.
func (*HealthCheck) DeepCopyInto ¶
func (in *HealthCheck) DeepCopyInto(out *HealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressRoute ¶
type IngressRoute struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` Spec IngressRouteSpec `json:"spec"` // +optional projcontour.Status `json:"status"` }
IngressRoute is an Ingress CRD specificiation +k8s:openapi-gen=true +kubebuilder:printcolumn:name="FQDN",type="string",JSONPath=".spec.virtualhost.fqdn",description="Fully qualified domain name" +kubebuilder:printcolumn:name="TLS Secret",type="string",JSONPath=".spec.virtualhost.tls.secretName",description="Secret with TLS credentials" +kubebuilder:printcolumn:name="First route",type="string",JSONPath=".spec.routes[0].match",description="First routes defined" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.currentStatus",description="The current status of the HTTPProxy" +kubebuilder:printcolumn:name="Status Description",type="string",JSONPath=".status.description",description="Description of the current status" +kubebuilder:resource:path=ingressroutes,singular=ingressroute
func (*IngressRoute) DeepCopy ¶
func (in *IngressRoute) DeepCopy() *IngressRoute
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressRoute.
func (*IngressRoute) DeepCopyInto ¶
func (in *IngressRoute) DeepCopyInto(out *IngressRoute)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IngressRoute) DeepCopyObject ¶
func (in *IngressRoute) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IngressRouteList ¶
type IngressRouteList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []IngressRoute `json:"items"` }
IngressRouteList is a list of IngressRoutes
func (*IngressRouteList) DeepCopy ¶
func (in *IngressRouteList) DeepCopy() *IngressRouteList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressRouteList.
func (*IngressRouteList) DeepCopyInto ¶
func (in *IngressRouteList) DeepCopyInto(out *IngressRouteList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IngressRouteList) DeepCopyObject ¶
func (in *IngressRouteList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IngressRouteSpec ¶
type IngressRouteSpec struct { // Virtualhost appears at most once. If it is present, the object is considered // to be a "root". // +optional VirtualHost *projcontour.VirtualHost `json:"virtualhost,omitempty"` // Routes are the ingress routes. If TCPProxy is present, Routes is ignored. Routes []Route `json:"routes,omitempty"` // TCPProxy holds TCP proxy information. // +optional TCPProxy *TCPProxy `json:"tcpproxy,omitempty"` }
IngressRouteSpec defines the spec of the CRD
func (*IngressRouteSpec) DeepCopy ¶
func (in *IngressRouteSpec) DeepCopy() *IngressRouteSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressRouteSpec.
func (*IngressRouteSpec) DeepCopyInto ¶
func (in *IngressRouteSpec) DeepCopyInto(out *IngressRouteSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Route ¶
type Route struct { // Match defines the prefix match Match string `json:"match"` // Services are the services to proxy traffic // +optional Services []Service `json:"services,omitempty"` // Delegate specifies that this route should be delegated to another IngressRoute // +optional Delegate *Delegate `json:"delegate,omitempty"` // Enables websocket support for the route // +optional EnableWebsockets bool `json:"enableWebsockets,omitempty"` // Allow this path to respond to insecure requests over HTTP which are normally // not permitted when a `virtualhost.tls` block is present. // +optional PermitInsecure bool `json:"permitInsecure,omitempty"` // Indicates that during forwarding, the matched prefix (or path) should be swapped with this value // +optional PrefixRewrite string `json:"prefixRewrite,omitempty"` // The timeout policy for this route // +optional TimeoutPolicy *TimeoutPolicy `json:"timeoutPolicy,omitempty"` // The retry policy for this route // +optional RetryPolicy *projcontour.RetryPolicy `json:"retryPolicy,omitempty"` }
Route contains the set of routes for a virtual host
func (*Route) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Route.
func (*Route) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Service ¶
type Service struct { // Name is the name of Kubernetes service to proxy traffic. // Names defined here will be used to look up corresponding endpoints which contain the ips to route. Name string `json:"name"` // Port (defined as Integer) to proxy traffic to since a service can have multiple defined Port int `json:"port"` // Weight defines percentage of traffic to balance traffic // +optional Weight uint32 `json:"weight,omitempty"` // HealthCheck defines optional healthchecks on the upstream service // +optional HealthCheck *HealthCheck `json:"healthCheck,omitempty"` // LB Algorithm to apply (see https://github.com/projectcontour/contour/blob/master/design/ingressroute-design.md#load-balancing) // +optional Strategy string `json:"strategy,omitempty"` // UpstreamValidation defines how to verify the backend service's certificate // +optional UpstreamValidation *projcontour.UpstreamValidation `json:"validation,omitempty"` }
Service defines an upstream to proxy traffic to
func (*Service) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
func (*Service) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TCPProxy ¶ added in v0.8.0
type TCPProxy struct { // Services are the services to proxy traffic // +optional Services []Service `json:"services,omitempty"` // Delegate specifies that this tcpproxy should be delegated to another IngressRoute // +optional Delegate *Delegate `json:"delegate,omitempty"` }
TCPProxy contains the set of services to proxy TCP connections.
func (*TCPProxy) DeepCopy ¶ added in v0.8.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TCPProxy.
func (*TCPProxy) DeepCopyInto ¶ added in v0.8.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSCertificateDelegation ¶ added in v0.10.0
type TLSCertificateDelegation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` Spec TLSCertificateDelegationSpec `json:"spec"` }
TLSCertificateDelegation is an TLS Certificate Delegation CRD specificiation. See design/tls-certificate-delegation.md for details.
func (*TLSCertificateDelegation) DeepCopy ¶ added in v0.10.0
func (in *TLSCertificateDelegation) DeepCopy() *TLSCertificateDelegation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSCertificateDelegation.
func (*TLSCertificateDelegation) DeepCopyInto ¶ added in v0.10.0
func (in *TLSCertificateDelegation) DeepCopyInto(out *TLSCertificateDelegation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TLSCertificateDelegation) DeepCopyObject ¶ added in v0.10.0
func (in *TLSCertificateDelegation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TLSCertificateDelegationList ¶ added in v0.10.0
type TLSCertificateDelegationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []TLSCertificateDelegation `json:"items"` }
TLSCertificateDelegationList is a list of TLSCertificateDelegations.
func (*TLSCertificateDelegationList) DeepCopy ¶ added in v0.10.0
func (in *TLSCertificateDelegationList) DeepCopy() *TLSCertificateDelegationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSCertificateDelegationList.
func (*TLSCertificateDelegationList) DeepCopyInto ¶ added in v0.10.0
func (in *TLSCertificateDelegationList) DeepCopyInto(out *TLSCertificateDelegationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TLSCertificateDelegationList) DeepCopyObject ¶ added in v0.10.0
func (in *TLSCertificateDelegationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TLSCertificateDelegationSpec ¶ added in v0.10.0
type TLSCertificateDelegationSpec struct {
Delegations []CertificateDelegation `json:"delegations"`
}
TLSCertificateDelegationSpec defines the spec of the CRD
func (*TLSCertificateDelegationSpec) DeepCopy ¶ added in v0.10.0
func (in *TLSCertificateDelegationSpec) DeepCopy() *TLSCertificateDelegationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSCertificateDelegationSpec.
func (*TLSCertificateDelegationSpec) DeepCopyInto ¶ added in v0.10.0
func (in *TLSCertificateDelegationSpec) DeepCopyInto(out *TLSCertificateDelegationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TimeoutPolicy ¶ added in v1.0.0
type TimeoutPolicy struct { // Timeout for receiving a response from the server after processing a request from client. // If not supplied the timeout duration is undefined. // +optional Request string `json:"request"` }
TimeoutPolicy define the attributes associated with timeout
func (*TimeoutPolicy) DeepCopy ¶ added in v1.0.0
func (in *TimeoutPolicy) DeepCopy() *TimeoutPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TimeoutPolicy.
func (*TimeoutPolicy) DeepCopyInto ¶ added in v1.0.0
func (in *TimeoutPolicy) DeepCopyInto(out *TimeoutPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.