Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Arch string
Platform architecture the gateway is running on
Functions ¶
Types ¶
type GatewayConfig ¶
type GatewayConfig struct { // HTTP timeout for reading a request from clients. ReadTimeout time.Duration // HTTP timeout for writing a response from functions. WriteTimeout time.Duration // UpstreamTimeout maximum duration of HTTP call to upstream URL UpstreamTimeout time.Duration // URL for alternate functions provider. FunctionsProviderURL *url.URL // URL for alternate function logs provider. LogsProviderURL *url.URL // Address of the NATS service. Required for async mode. NATSAddress *string // Port of the NATS Service. Required for async mode. NATSPort *int // The name of the NATS Streaming cluster. Required for async mode. NATSClusterName *string // NATSChannel is the name of the NATS Streaming channel used for asynchronous function invocations. NATSChannel *string // Host to connect to Prometheus. PrometheusHost string // Port to connect to Prometheus. PrometheusPort int // If set, reads secrets from file-system for enabling basic auth. UseBasicAuth bool // SecretMountPath specifies where to read secrets from for embedded basic auth SecretMountPath string // Enable the gateway to scale any service from 0 replicas to its configured "min replicas" ScaleFromZero bool // MaxIdleConns with a default value of 1024, can be used for tuning HTTP proxy performance MaxIdleConns int // MaxIdleConnsPerHost with a default value of 1024, can be used for tuning HTTP proxy performance MaxIdleConnsPerHost int // AuthProxyURL specifies URL for an authenticating proxy, disabled when blank, enabled when valid URL i.e. http://basic-auth.openfaas:8080/validate AuthProxyURL string // AuthProxyPassBody pass body to validation proxy AuthProxyPassBody bool // Namespace for endpoints Namespace string }
GatewayConfig provides config for the API Gateway server process
func (*GatewayConfig) UseExternalProvider ¶
func (g *GatewayConfig) UseExternalProvider() bool
UseExternalProvider is now required for all providers
type GatewayInfo ¶
type GatewayInfo struct { Provider *providerTypes.ProviderInfo `json:"provider"` Version *providerTypes.VersionInfo `json:"version"` Arch string `json:"arch"` }
GatewayInfo provides information about the gateway and it's connected components
type HTTPClientReverseProxy ¶
HTTPClientReverseProxy proxy to a remote BaseURL using a http.Client
func NewHTTPClientReverseProxy ¶
func NewHTTPClientReverseProxy(baseURL *url.URL, timeout time.Duration, maxIdleConns, maxIdleConnsPerHost int) *HTTPClientReverseProxy
NewHTTPClientReverseProxy proxies to an upstream host through the use of a http.Client
type HandlerSet ¶
type HandlerSet struct { // Proxy invokes a function Proxy http.HandlerFunc // DeployFunction deploys a new function that isn't already deployed DeployFunction http.HandlerFunc // DeleteFunction deletes a function that is already deployed DeleteFunction http.HandlerFunc // ListFunctions lists all deployed functions in a namespace ListFunctions http.HandlerFunc // Alert handles alerts triggered from AlertManager Alert http.HandlerFunc // UpdateFunction updates an existing function UpdateFunction http.HandlerFunc // FunctionStatus returns the status of an already deployed function FunctionStatus http.HandlerFunc // QueuedProxy queue work and return synchronous response QueuedProxy http.HandlerFunc // ScaleFunction enables a function to be scaled ScaleFunction http.HandlerFunc // InfoHandler provides version and build info InfoHandler http.HandlerFunc // SecretHandler enables secrets to be managed SecretHandler http.HandlerFunc // LogProxyHandler enables streaming of logs for functions LogProxyHandler http.HandlerFunc // NamespaceListerHandler lists namespaces NamespaceListerHandler http.HandlerFunc NamespaceMutatorHandler http.HandlerFunc }
HandlerSet can be initialized with handlers for binding to mux
type ReadConfig ¶
type ReadConfig struct { }
ReadConfig constitutes config from env variables
func (ReadConfig) Read ¶
func (ReadConfig) Read(hasEnv HasEnv) (*GatewayConfig, error)
Read fetches gateway server configuration from environmental variables
Click to show internal directories.
Click to hide internal directories.