Documentation
¶
Index ¶
- func ParseBoolValue(val string, fallback bool) bool
- func ParseIntOrDurationValue(val string, fallback time.Duration) time.Duration
- func ParseIntValue(val string, fallback int) int
- func ParseString(val string, fallback string) string
- type DeleteFunctionRequest
- type FaaSConfig
- type FaaSHandlers
- type FunctionDeployment
- type FunctionResources
- type FunctionStatus
- type HasEnv
- type OsEnv
- type ProviderInfo
- type ReadConfig
- type ScaleServiceRequest
- type Secret
- type VersionInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ParseBoolValue ¶
ParseBoolValue parses the the boolean in val or, if there is an error, returns the specified default value
func ParseIntOrDurationValue ¶
ParseIntOrDurationValue parses the the duration in val or, if there is an error, returns the specified default value
func ParseIntValue ¶
ParseIntValue parses the the int in val or, if there is an error, returns the specified default value
func ParseString ¶
ParseString verifies the string in val is not empty. When empty, it returns the specified default value
Types ¶
type DeleteFunctionRequest ¶ added in v0.15.3
type DeleteFunctionRequest struct {
FunctionName string `json:"functionName"`
}
DeleteFunctionRequest delete a deployed function
type FaaSConfig ¶
type FaaSConfig struct {
// TCPPort is the public port for the API.
TCPPort *int
// HTTP timeout for reading a request from clients.
ReadTimeout time.Duration
// HTTP timeout for writing a response from functions.
WriteTimeout time.Duration
// EnableHealth enables/disables the default health endpoint bound to "/healthz".
//
// Deprecated: basic auth is enabled automatcally by setting the HealthHandler in the FaaSHandlers
// struct. This value is not longer read or used.
EnableHealth bool
// EnableBasicAuth enforces basic auth on the API. If set, reads secrets from file-system
// location specificed in `SecretMountPath`.
EnableBasicAuth bool
// SecretMountPath specifies where to read secrets from for embedded basic auth.
SecretMountPath string
// 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
}
FaaSConfig set config for HTTP handlers
func (*FaaSConfig) GetMaxIdleConns ¶
func (c *FaaSConfig) GetMaxIdleConns() int
GetMaxIdleConns is a helper to safely return the configured MaxIdleConns or the default value of 1024
func (*FaaSConfig) GetMaxIdleConnsPerHost ¶
func (c *FaaSConfig) GetMaxIdleConnsPerHost() int
GetMaxIdleConns is a helper to safely return the configured MaxIdleConns or the default value which should then match the MaxIdleConns
func (*FaaSConfig) GetReadTimeout ¶
func (c *FaaSConfig) GetReadTimeout() time.Duration
GetReadTimeout is a helper to safely return the configured ReadTimeout or the default value of 10s
type FaaSHandlers ¶
type FaaSHandlers struct {
// FunctionProxy provides the function invocation proxy logic. Use proxy.NewHandlerFunc to
// use the standard OpenFaaS proxy implementation or provide completely custom proxy logic.
FunctionProxy http.HandlerFunc
FunctionReader http.HandlerFunc
DeployHandler http.HandlerFunc
DeleteHandler http.HandlerFunc
ReplicaReader http.HandlerFunc
ReplicaUpdater http.HandlerFunc
SecretHandler http.HandlerFunc
// LogHandler provides streaming json logs of functions
LogHandler http.HandlerFunc
// UpdateHandler an existing function/service
UpdateHandler http.HandlerFunc
// HealthHandler defines the default health endpoint bound to "/healthz
// If the handler is not set, then the "/healthz" path will not be configured
HealthHandler http.HandlerFunc
InfoHandler http.HandlerFunc
ListNamespaceHandler http.HandlerFunc
}
FaaSHandlers provide handlers for OpenFaaS
type FunctionDeployment ¶
type FunctionDeployment struct {
// Service is the name of the function deployment
Service string `json:"service"`
// Image is a fully-qualified container image
Image string `json:"image"`
// Namespace for the function, if supported by the faas-provider
Namespace string `json:"namespace,omitempty"`
// EnvProcess overrides the fprocess environment variable and can be used
// with the watchdog
EnvProcess string `json:"envProcess,omitempty"`
// EnvVars can be provided to set environment variables for the function runtime.
EnvVars map[string]string `json:"envVars,omitempty"`
// Constraints are specific to the faas-provider.
Constraints []string `json:"constraints,omitempty"`
// Secrets list of secrets to be made available to function
Secrets []string `json:"secrets,omitempty"`
// Labels are metadata for functions which may be used by the
// faas-provider or the gateway
Labels *map[string]string `json:"labels,omitempty"`
// Annotations are metadata for functions which may be used by the
// faas-provider or the gateway
Annotations *map[string]string `json:"annotations,omitempty"`
// Limits for function
Limits *FunctionResources `json:"limits,omitempty"`
// Requests of resources requested by function
Requests *FunctionResources `json:"requests,omitempty"`
// ReadOnlyRootFilesystem removes write-access from the root filesystem
// mount-point.
ReadOnlyRootFilesystem bool `json:"readOnlyRootFilesystem,omitempty"`
}
FunctionDeployment represents a request to create or update a Function.
type FunctionResources ¶
type FunctionResources struct {
Memory string `json:"memory,omitempty"`
CPU string `json:"cpu,omitempty"`
}
FunctionResources Memory and CPU
type FunctionStatus ¶
type FunctionStatus struct {
// Name is the name of the function deployment
Name string `json:"name"`
// Image is a fully-qualified container image
Image string `json:"image"`
// Namespace for the function, if supported by the faas-provider
Namespace string `json:"namespace,omitempty"`
// EnvProcess overrides the fprocess environment variable and can be used
// with the watchdog
EnvProcess string `json:"envProcess,omitempty"`
// EnvVars set environment variables for the function runtime
EnvVars map[string]string `json:"envVars,omitempty"`
// Constraints are specific to the faas-provider
Constraints []string `json:"constraints,omitempty"`
// Secrets list of secrets to be made available to function
Secrets []string `json:"secrets,omitempty"`
// Labels are metadata for functions which may be used by the
// faas-provider or the gateway
Labels *map[string]string `json:"labels,omitempty"`
// Annotations are metadata for functions which may be used by the
// faas-provider or the gateway
Annotations *map[string]string `json:"annotations,omitempty"`
// Limits for function
Limits *FunctionResources `json:"limits,omitempty"`
// Requests of resources requested by function
Requests *FunctionResources `json:"requests,omitempty"`
// ReadOnlyRootFilesystem removes write-access from the root filesystem
// mount-point.
ReadOnlyRootFilesystem bool `json:"readOnlyRootFilesystem,omitempty"`
// InvocationCount count of invocations
InvocationCount float64 `json:"invocationCount,omitempty"`
// Replicas desired within the cluster
Replicas uint64 `json:"replicas,omitempty"`
// AvailableReplicas is the count of replicas ready to receive
// invocations as reported by the faas-provider
AvailableReplicas uint64 `json:"availableReplicas,omitempty"`
// CreatedAt is the time read back from the faas backend's
// data store for when the function or its container was created.
CreatedAt time.Time `json:"createdAt,omitempty"`
}
FunctionStatus exported for system/functions endpoint
type ProviderInfo ¶ added in v0.16.2
type ProviderInfo struct {
Name string `json:"provider"`
Version *VersionInfo `json:"version"`
Orchestration string `json:"orchestration"`
}
ProviderInfo provides information about the configured provider
type ReadConfig ¶
type ReadConfig struct {
}
ReadConfig constitutes config from env variables
func (ReadConfig) Read ¶
func (ReadConfig) Read(hasEnv HasEnv) (*FaaSConfig, error)
Read fetches config from environmental variables.
type ScaleServiceRequest ¶
type ScaleServiceRequest struct {
ServiceName string `json:"serviceName"`
Replicas uint64 `json:"replicas"`
}
ScaleServiceRequest scales the service to the requested replcia count.
type Secret ¶
type Secret struct {
// Name of the secret
Name string `json:"name"`
// Namespace if applicable for the secret
Namespace string `json:"namespace,omitempty"`
// Value is a string representing the string's value
Value string `json:"value,omitempty"`
// RawValue can be used to provide binary data when
// Value is not set
RawValue []byte `json:"rawValue,omitempty"`
}
Secret for underlying orchestrator
type VersionInfo ¶ added in v0.16.2
type VersionInfo struct {
CommitMessage string `json:"commit_message,omitempty"`
SHA string `json:"sha"`
Release string `json:"release"`
}
VersionInfo provides the commit message, sha and release version number