Documentation
¶
Index ¶
- Constants
- func RawConfigToConfiguration(config apiextensionsv1.JSON) (kong.Configuration, error)
- func SecretToConfiguration(s store.Storer, reference configurationv1.SecretValueFromSource, ...) (kong.Configuration, error)
- type ACLGroup
- type BasicAuth
- type Certificate
- type Consumer
- type HMACAuth
- type JWTAuth
- type KeyAuth
- type KongState
- type MTLSAuth
- type Oauth2Credential
- type Plugin
- type PortDef
- type PortMode
- type Route
- type Service
- type ServiceBackend
- type Target
- type Upstream
Constants ¶
const ImplicitPort = "implicitPort"
Variables ¶
This section is empty.
Functions ¶
func RawConfigToConfiguration ¶
func RawConfigToConfiguration(config apiextensionsv1.JSON) (kong.Configuration, error)
func SecretToConfiguration ¶
func SecretToConfiguration( s store.Storer, reference configurationv1.SecretValueFromSource, namespace string) ( kong.Configuration, error)
Types ¶
type ACLGroup ¶
ACLGroup represents an ACL associated with a consumer. Due to ACL implementation in Kong being similar to credentials, ACLs are treated as credentials, too.
func NewACLGroup ¶
type BasicAuth ¶
BasicAuth represents a basic authentication credential.
func NewBasicAuth ¶
func (*BasicAuth) SanitizedCopy ¶
SanitizedCopy returns a shallow copy with sensitive values redacted best-effort.
type Certificate ¶
type Certificate struct {
kong.Certificate
}
Certificate represents the certificate object in Kong.
func (*Certificate) SanitizedCopy ¶
func (c *Certificate) SanitizedCopy() *Certificate
SanitizedCopy returns a shallow copy with sensitive values redacted best-effort.
type Consumer ¶
type Consumer struct {
kong.Consumer
Plugins []kong.Plugin
KeyAuths []*KeyAuth
HMACAuths []*HMACAuth
JWTAuths []*JWTAuth
BasicAuths []*BasicAuth
ACLGroups []*ACLGroup
Oauth2Creds []*Oauth2Credential
MTLSAuths []*MTLSAuth
K8sKongConsumer configurationv1.KongConsumer
}
Consumer holds a Kong consumer and its plugins and credentials.
func (*Consumer) SanitizedCopy ¶
SanitizedCopy returns a shallow copy with sensitive values redacted best-effort.
type HMACAuth ¶
HMACAuth represents a HMAC credential.
func NewHMACAuth ¶
func (*HMACAuth) SanitizedCopy ¶
SanitizedCopy returns a shallow copy with sensitive values redacted best-effort.
type JWTAuth ¶
JWTAuth represents a JWT credential.
func NewJWTAuth ¶
func (*JWTAuth) SanitizedCopy ¶
SanitizedCopy returns a shallow copy with sensitive values redacted best-effort.
type KeyAuth ¶
KeyAuth represents a key-auth credential.
func NewKeyAuth ¶
func (*KeyAuth) SanitizedCopy ¶
SanitizedCopy returns a shallow copy with sensitive values redacted best-effort.
type KongState ¶
type KongState struct {
Services []Service
Upstreams []Upstream
Certificates []Certificate
CACertificates []kong.CACertificate
Plugins []Plugin
Consumers []Consumer
Version semver.Version
}
KongState holds the configuration that should be applied to Kong.
func (*KongState) FillConsumersAndCredentials ¶
func (ks *KongState) FillConsumersAndCredentials(log logrus.FieldLogger, s store.Storer)
func (*KongState) FillOverrides ¶
func (ks *KongState) FillOverrides(log logrus.FieldLogger, s store.Storer)
func (*KongState) FillPlugins ¶
func (ks *KongState) FillPlugins(log logrus.FieldLogger, s store.Storer)
func (*KongState) SanitizedCopy ¶
SanitizedCopy returns a shallow copy with sensitive values redacted best-effort.
type Oauth2Credential ¶
type Oauth2Credential struct {
kong.Oauth2Credential
}
Oauth2Credential represents an OAuth2 client configuration including credentials.
func NewOauth2Credential ¶
func NewOauth2Credential(config interface{}) (*Oauth2Credential, error)
func (*Oauth2Credential) SanitizedCopy ¶
func (c *Oauth2Credential) SanitizedCopy() *Oauth2Credential
SanitizedCopy returns a shallow copy with sensitive values redacted best-effort.
type PortDef ¶
type PortDef struct {
Mode PortMode
// Name is the port name as stated in the Kubernetes service. Must be set iff Mode == PortModeName.
Name string
// Number is the port number. Must be set iff PortMode == PortModeNumber.
Number int32
}
func (*PortDef) CanonicalString ¶
type PortMode ¶
type PortMode int
const ( // PortModeImplicit means that the Ingress does not specify the Kubernetes Service port, and that KIC should expect // the Service to have only one port defined. PortModeImplicit PortMode = iota // PortModeNumber means that the Ingress specifies the Service port by raw port number. PortModeByNumber PortMode = iota // PortModeNumber means that the Ingress specifies the Service port by its name field. PortModeByName PortMode = iota )
type Service ¶
type Service struct {
kong.Service
Backend ServiceBackend
Namespace string
Routes []Route
Plugins []kong.Plugin
K8sService corev1.Service
}
Service represents a service in Kong and holds routes associated with the service and other k8s metadata.