Documentation ¶
Index ¶
- Constants
- func MakeEndpointProbeIngress(ctx context.Context, ing *v1alpha1.Ingress, previousState []*v1.HTTPProxy) *v1alpha1.Ingress
- func MakeHTTPProxies(ctx context.Context, ing *v1alpha1.Ingress, ...) []*v1.HTTPProxy
- func ServiceNames(ctx context.Context, ing *v1alpha1.Ingress) map[string]ServiceInfo
- type ServiceInfo
Constants ¶
View Source
const ( // GenerationKey holds the generation of the parent KIngress resource that the HTTPProxy's // spec is derived from. This is updated along with the spec of child HTTPProxy resources // and then used to cleanup stale HTTPProxy resources owned by the parent. GenerationKey = "contour.networking.knative.dev/generation" // ParentKey hold the name of the parent KIngress resource, since OwnerReferences cannot // be used in filter expressions. ParentKey = "contour.networking.knative.dev/parent" // DomainHashKey contains the hash of the fqdn for which this HTTPProxy exists. We use // the hash in place of the actual fqdn because there is a limit on the length of label // values. DomainHashKey = "contour.networking.knative.dev/domainHash" // ClassKey contains the name of the contour class annotation used to select the // Contour instance that handles a given HTTP Proxy. ClassKey = "projectcontour.io/ingress.class" // EndpointsProbeKey is placed on child Ingress resources to bypass Endpoint probing, // since the child ingress exists to be said endpoint probe. EndpointsProbeKey = "contour.networking.knative.dev/endpointsProbe" )
These are the label keys that are applied to HTTP proxy resources to facilitate reconciliation.
View Source
const ( //InternalEncryptionProtocol is the protocol to set on the Services in //the HTTPProxy when InternalEncryption is enabled. This prompt's //Contour's Envoys to encrypt the traffic to the activator. InternalEncryptionProtocol = "tls" InternalEncryptionH2Protocol = "h2" //HttpChallengePath is the path that gets added to routes when using //auto-TLS with an http01 solver as the issuer. HTTPChallengePath = "/.well-known/acme-challenge" )
View Source
const ( // If this annotation is set in ksvc/ingress, it is used as the ExternalService name in the // generated HttpProxy ExtensionServiceKey = "contour.networking.knative.dev/extension-service" ExtensionServiceNamespaceKey = "contour.networking.knative.dev/extension-service-namespace" )
These are the annotations which are optionally set in ksvc/ingress
Variables ¶
This section is empty.
Functions ¶
func MakeEndpointProbeIngress ¶ added in v0.17.0
func MakeEndpointProbeIngress(ctx context.Context, ing *v1alpha1.Ingress, previousState []*v1.HTTPProxy) *v1alpha1.Ingress
MakeEndpointProbeIngress creates a new child kingress resource with a bogus hostname per referenced service, which we will probe to ensure each service has been warmed in Envoy's EDS before changing any of the active RDS programming to reference those endpoints.
func MakeHTTPProxies ¶
func ServiceNames ¶
Types ¶
type ServiceInfo ¶ added in v0.17.0
type ServiceInfo struct { Port intstr.IntOrString RawVisibilities sets.String // If the Host header sent to this service needs to be rewritten, // then track that so we can send it for probing. RewriteHost string // TODO(https://github.com/knative-sandbox/net-certmanager/issues/44): Remove this. HasPath bool }
func (*ServiceInfo) Visibilities ¶ added in v0.17.0
func (si *ServiceInfo) Visibilities() (vis []v1alpha1.IngressVisibility)
Click to show internal directories.
Click to hide internal directories.