Documentation
¶
Overview ¶
+groupName=route.openshift.io Package api is the internal version of the API.
Index ¶
- Constants
- Variables
- func GetDomainForHost(host string) string
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- func RouteFieldSelector(obj runtime.Object, fieldSet fields.Set) error
- func RouteLessThan(route1, route2 *Route) bool
- type InsecureEdgeTerminationPolicyType
- type Route
- type RouteIngress
- type RouteIngressCondition
- type RouteIngressConditionType
- type RouteList
- type RoutePort
- type RouteSpec
- type RouteStatus
- type RouteTargetReference
- type RouterShard
- type TLSConfig
- type TLSTerminationType
- type WildcardPolicyType
Constants ¶
const ( GroupName = "route.openshift.io" LegacyGroupName = "" )
const ( // TLSTerminationEdge terminate encryption at the edge router. TLSTerminationEdge TLSTerminationType = "edge" // TLSTerminationPassthrough terminate encryption at the destination, the destination is responsible for decrypting traffic TLSTerminationPassthrough TLSTerminationType = "passthrough" // TLSTerminationReencrypt terminate encryption at the edge router and re-encrypt it with a new certificate supplied by the destination TLSTerminationReencrypt TLSTerminationType = "reencrypt" // InsecureEdgeTerminationPolicyNone disables insecure connections for an edge-terminated route. InsecureEdgeTerminationPolicyNone InsecureEdgeTerminationPolicyType = "None" // InsecureEdgeTerminationPolicyAllow allows insecure connections for an edge-terminated route. InsecureEdgeTerminationPolicyAllow InsecureEdgeTerminationPolicyType = "Allow" // InsecureEdgeTerminationPolicyRedirect redirects insecure connections for an edge-terminated route. // As an example, for routers that support HTTP and HTTPS, the // insecure HTTP connections will be redirected to use HTTPS. InsecureEdgeTerminationPolicyRedirect InsecureEdgeTerminationPolicyType = "Redirect" )
Variables ¶
var ( SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal} LegacySchemeGroupVersion = schema.GroupVersion{Group: LegacyGroupName, Version: runtime.APIVersionInternal} LegacySchemeBuilder = runtime.NewSchemeBuilder(addLegacyKnownTypes) AddToSchemeInCoreGroup = LegacySchemeBuilder.AddToScheme SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
SchemeGroupVersion is group version used to register these objects
Functions ¶
func GetDomainForHost ¶
GetDomainForHost returns the domain for the specified host. Note for top level domains, this will return an empty string.
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns back a Group qualified GroupResource
func RouteFieldSelector ¶ added in v3.7.0
func RouteLessThan ¶
Types ¶
type InsecureEdgeTerminationPolicyType ¶
type InsecureEdgeTerminationPolicyType string
InsecureEdgeTerminationPolicyType dictates the behavior of insecure connections to an edge-terminated route.
type Route ¶
type Route struct { metav1.TypeMeta metav1.ObjectMeta // Spec is the desired behavior of the route Spec RouteSpec // Status describes the current observed state of the route Status RouteStatus }
Route encapsulates the inputs needed to connect an alias to endpoints.
func (*Route) DeepCopy ¶ added in v3.8.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Route.
func (*Route) DeepCopyInto ¶ added in v3.8.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Route) DeepCopyObject ¶ added in v3.8.0
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RouteIngress ¶
type RouteIngress struct { // Host is the host string under which the route is exposed; this value is required Host string // Name is a name chosen by the router to identify itself; this value is required RouterName string // Conditions is the state of the route, may be empty. Conditions []RouteIngressCondition // Wildcard policy is the wildcard policy that was allowed where this route is exposed. WildcardPolicy WildcardPolicyType // CanonicalHostname is an external host name for the router; this value is optional RouterCanonicalHostname string }
RouteIngress holds information about the places where a route is exposed
func (*RouteIngress) DeepCopy ¶ added in v3.8.0
func (in *RouteIngress) DeepCopy() *RouteIngress
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteIngress.
func (*RouteIngress) DeepCopyInto ¶ added in v3.8.0
func (in *RouteIngress) DeepCopyInto(out *RouteIngress)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteIngressCondition ¶
type RouteIngressCondition struct { // Type is the type of the condition. // Currently only Ready. Type RouteIngressConditionType // Status is the status of the condition. // Can be True, False, Unknown. Status kapi.ConditionStatus // (brief) reason for the condition's last transition, and is usually a machine and human // readable constant Reason string // Human readable message indicating details about last transition. Message string // RFC 3339 date and time at which the object was acknowledged by the router. // This may be before the router exposes the route LastTransitionTime *metav1.Time }
RouteIngressCondition contains details for the current condition of this pod. TODO: add LastTransitionTime, Reason, Message to match NodeCondition api.
func IngressConditionStatus ¶
func IngressConditionStatus(ingress *RouteIngress, t RouteIngressConditionType) (kapi.ConditionStatus, RouteIngressCondition)
IngressConditionStatus returns the first status and condition matching the provided ingress condition type. Conditions prefer the first matching entry and clients are allowed to ignore later conditions of the same type.
func (*RouteIngressCondition) DeepCopy ¶ added in v3.8.0
func (in *RouteIngressCondition) DeepCopy() *RouteIngressCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteIngressCondition.
func (*RouteIngressCondition) DeepCopyInto ¶ added in v3.8.0
func (in *RouteIngressCondition) DeepCopyInto(out *RouteIngressCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteIngressConditionType ¶
type RouteIngressConditionType string
RouteIngressConditionType is a valid value for RouteCondition
const ( // RouteAdmitted means the route is able to service requests for the provided Host RouteAdmitted RouteIngressConditionType = "Admitted" // RouteExtendedValidationFailed means the route configuration failed an extended validation check. RouteExtendedValidationFailed RouteIngressConditionType = "ExtendedValidationFailed" )
These are valid conditions of pod.
type RouteList ¶
type RouteList struct { metav1.TypeMeta metav1.ListMeta // Items is a list of routes Items []Route }
RouteList is a collection of Routes.
func (*RouteList) DeepCopy ¶ added in v3.8.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteList.
func (*RouteList) DeepCopyInto ¶ added in v3.8.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RouteList) DeepCopyObject ¶ added in v3.8.0
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RoutePort ¶
type RoutePort struct { // The target port on pods selected by the service this route points to. // If this is a string, it will be looked up as a named port in the target // endpoints port list. Required TargetPort intstr.IntOrString }
RoutePort defines a port mapping from a router to an endpoint in the service endpoints.
func (*RoutePort) DeepCopy ¶ added in v3.8.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutePort.
func (*RoutePort) DeepCopyInto ¶ added in v3.8.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteSpec ¶
type RouteSpec struct { // Host is an alias/DNS that points to the service. Optional // Must follow DNS952 subdomain conventions. Host string // Path that the router watches for, to route traffic for to the service. Optional Path string // Objects that the route points to. Only the Service kind is allowed, and it will // be defaulted to Service. To RouteTargetReference // Alternate objects that the route may want to point to. Use the 'weight' field to // determine which ones of the several get more emphasis AlternateBackends []RouteTargetReference // If specified, the port to be used by the router. Most routers will use all // endpoints exposed by the service by default - set this value to instruct routers // which port to use. Port *RoutePort //TLS provides the ability to configure certificates and termination for the route TLS *TLSConfig // Wildcard policy if any for the route. // Currently only 'Subdomain' or 'None' is allowed. WildcardPolicy WildcardPolicyType }
RouteSpec describes the desired behavior of a route.
func (*RouteSpec) DeepCopy ¶ added in v3.8.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpec.
func (*RouteSpec) DeepCopyInto ¶ added in v3.8.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteStatus ¶
type RouteStatus struct { // Ingress describes the places where the route may be exposed. The list of // ingress points may contain duplicate Host or RouterName values. Routes // are considered live once they are `Ready` Ingress []RouteIngress }
RouteStatus provides relevant info about the status of a route, including which routers acknowledge it.
func (*RouteStatus) DeepCopy ¶ added in v3.8.0
func (in *RouteStatus) DeepCopy() *RouteStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteStatus.
func (*RouteStatus) DeepCopyInto ¶ added in v3.8.0
func (in *RouteStatus) DeepCopyInto(out *RouteStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteTargetReference ¶
RouteTargetReference specifies the target that resolve into endpoints. Only the 'Service' kind is allowed. Use 'weight' field to emphasize one over others.
func (*RouteTargetReference) DeepCopy ¶ added in v3.8.0
func (in *RouteTargetReference) DeepCopy() *RouteTargetReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteTargetReference.
func (*RouteTargetReference) DeepCopyInto ¶ added in v3.8.0
func (in *RouteTargetReference) DeepCopyInto(out *RouteTargetReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouterShard ¶
type RouterShard struct { // ShardName uniquely identifies a router shard in the "set" of // routers used for routing traffic to the services. ShardName string // DNSSuffix for the shard ala: shard-1.v3.openshift.com DNSSuffix string }
RouterShard has information of a routing shard and is used to generate host names and routing table entries when a routing shard is allocated for a specific route.
func (*RouterShard) DeepCopy ¶ added in v3.8.0
func (in *RouterShard) DeepCopy() *RouterShard
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterShard.
func (*RouterShard) DeepCopyInto ¶ added in v3.8.0
func (in *RouterShard) DeepCopyInto(out *RouterShard)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSConfig ¶
type TLSConfig struct { // Termination indicates termination type. Termination TLSTerminationType // Certificate provides certificate contents Certificate string // Key provides key file contents Key string // CACertificate provides the cert authority certificate contents CACertificate string // DestinationCACertificate provides the contents of the ca certificate of the final destination. When using reencrypt // termination this file should be provided in order to have routers use it for health checks on the secure connection DestinationCACertificate string // InsecureEdgeTerminationPolicy indicates the desired behavior for // insecure connections to an edge-terminated route: // disable, allow or redirect InsecureEdgeTerminationPolicy InsecureEdgeTerminationPolicyType }
TLSConfig defines config used to secure a route and provide termination
func (*TLSConfig) DeepCopy ¶ added in v3.8.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSConfig.
func (*TLSConfig) DeepCopyInto ¶ added in v3.8.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSTerminationType ¶
type TLSTerminationType string
TLSTerminationType dictates where the secure communication will stop TODO: Reconsider this type in v2
type WildcardPolicyType ¶
type WildcardPolicyType string
WildcardPolicyType indicates the type of wildcard support needed by routes.
const ( // WildcardPolicyNone indicates no wildcard support is needed. WildcardPolicyNone WildcardPolicyType = "None" // WildcardPolicySubdomain indicates the host needs wildcard support for the subdomain. // Example: With host = "www.acme.test", indicates that the router // should support requests for *.acme.test // Note that this will not match acme.test only *.acme.test WildcardPolicySubdomain WildcardPolicyType = "Subdomain" )
Source Files
¶
Directories
¶
Path | Synopsis |
---|---|
+groupName=route.openshift.io Package v1 is the v1 version of the API.
|
+groupName=route.openshift.io Package v1 is the v1 version of the API. |