Documentation ¶
Index ¶
- type HealthCheck
- type Ingress
- type IngressNginxConfig
- type JWTAuth
- type JWTRedirectLocation
- type Location
- type MainConfig
- type Server
- type TemplateExecutor
- func (te *TemplateExecutor) ExecuteIngressConfigTemplate(cfg *IngressNginxConfig) ([]byte, error)
- func (te *TemplateExecutor) ExecuteMainConfigTemplate(cfg *MainConfig) ([]byte, error)
- func (te *TemplateExecutor) UpdateIngressTemplate(templateString *string) error
- func (te *TemplateExecutor) UpdateMainTemplate(templateString *string) error
- type Upstream
- type UpstreamLabels
- type UpstreamServer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type HealthCheck ¶
type HealthCheck struct { UpstreamName string URI string Interval int32 Fails int32 Passes int32 Scheme string Mandatory bool Headers map[string]string TimeoutSeconds int64 }
HealthCheck describes an active HTTP health check.
type IngressNginxConfig ¶
type IngressNginxConfig struct { Upstreams []Upstream Servers []Server Keepalive string Ingress Ingress SpiffeClientCerts bool }
IngressNginxConfig describes an NGINX configuration.
type JWTRedirectLocation ¶
JWTRedirectLocation describes a location for redirecting client requests to a login URL for JWT Authentication.
type Location ¶
type Location struct { LocationSnippets []string Path string Upstream Upstream ProxyConnectTimeout string ProxyReadTimeout string ProxySendTimeout string ClientMaxBodySize string Websocket bool Rewrite string SSL bool GRPC bool ProxyBuffering bool ProxyBuffers string ProxyBufferSize string ProxyMaxTempFileSize string ProxySSLName string JWTAuth *JWTAuth ServiceName string MinionIngress *Ingress }
Location describes an NGINX location.
type MainConfig ¶
type MainConfig struct { AccessLogOff bool DefaultServerAccessLogOff bool DefaultServerReturn string ErrorLogLevel string HealthStatus bool HealthStatusURI string HTTP2 bool HTTPSnippets []string KeepaliveRequests int64 KeepaliveTimeout string LogFormat []string LogFormatEscaping string MainSnippets []string NginxStatus bool NginxStatusAllowCIDRs []string NginxStatusPort int OpenTracingEnabled bool OpenTracingLoadModule bool OpenTracingTracer string OpenTracingTracerConfig string ProxyProtocol bool ResolverAddresses []string ResolverIPV6 bool ResolverTimeout string ResolverValid string RealIPHeader string RealIPRecursive bool SetRealIPFrom []string ServerNamesHashBucketSize string ServerNamesHashMaxSize string ServerTokens string SSLCiphers string SSLDHParam string SSLPreferServerCiphers bool SSLProtocols string StreamLogFormat []string StreamLogFormatEscaping string StreamSnippets []string StubStatusOverUnixSocketForOSS bool TLSPassthrough bool VariablesHashBucketSize uint64 VariablesHashMaxSize uint64 WorkerConnections string WorkerCPUAffinity string WorkerProcesses string WorkerRlimitNofile string WorkerShutdownTimeout string AppProtectLoadModule bool AppProtectFailureModeAction string AppProtectCookieSeed string AppProtectCPUThresholds string AppProtectPhysicalMemoryThresholds string InternalRouteServer bool InternalRouteServerName string LatencyMetrics bool PreviewPolicies bool }
MainConfig describe the main NGINX configuration file.
type Server ¶
type Server struct { ServerSnippets []string Name string ServerTokens string Locations []Location SSL bool SSLCertificate string SSLCertificateKey string SSLCiphers string TLSPassthrough bool GRPCOnly bool StatusZone string HTTP2 bool RedirectToHTTPS bool SSLRedirect bool ProxyProtocol bool HSTS bool HSTSMaxAge int64 HSTSIncludeSubdomains bool HSTSBehindProxy bool ProxyHideHeaders []string ProxyPassHeaders []string HealthChecks map[string]HealthCheck RealIPHeader string SetRealIPFrom []string RealIPRecursive bool JWTAuth *JWTAuth JWTRedirectLocations []JWTRedirectLocation Ports []int SSLPorts []int AppProtectEnable string AppProtectPolicy string AppProtectLogConf string AppProtectLogEnable string SpiffeCerts bool }
Server describes an NGINX server.
type TemplateExecutor ¶
type TemplateExecutor struct {
// contains filtered or unexported fields
}
TemplateExecutor executes NGINX configuration templates.
func NewTemplateExecutor ¶
func NewTemplateExecutor(mainTemplatePath string, ingressTemplatePath string) (*TemplateExecutor, error)
NewTemplateExecutor creates a TemplateExecutor.
func (*TemplateExecutor) ExecuteIngressConfigTemplate ¶
func (te *TemplateExecutor) ExecuteIngressConfigTemplate(cfg *IngressNginxConfig) ([]byte, error)
ExecuteIngressConfigTemplate generates the content of a NGINX configuration file for an Ingress resource.
func (*TemplateExecutor) ExecuteMainConfigTemplate ¶
func (te *TemplateExecutor) ExecuteMainConfigTemplate(cfg *MainConfig) ([]byte, error)
ExecuteMainConfigTemplate generates the content of the main NGINX configuration file.
func (*TemplateExecutor) UpdateIngressTemplate ¶
func (te *TemplateExecutor) UpdateIngressTemplate(templateString *string) error
UpdateIngressTemplate updates the ingress template.
func (*TemplateExecutor) UpdateMainTemplate ¶
func (te *TemplateExecutor) UpdateMainTemplate(templateString *string) error
UpdateMainTemplate updates the main NGINX template.
type Upstream ¶
type Upstream struct { Name string UpstreamServers []UpstreamServer StickyCookie string LBMethod string Queue int64 QueueTimeout int64 UpstreamZoneSize string UpstreamLabels UpstreamLabels }
Upstream describes an NGINX upstream.
func NewUpstreamWithDefaultServer ¶
NewUpstreamWithDefaultServer creates an upstream with the default server. proxy_pass to an upstream with the default server returns 502. We use it for services that have no endpoints.