Documentation ¶
Index ¶
- type PluginConfig
- func (*PluginConfig) Descriptor() ([]byte, []int)
- func (this *PluginConfig) Equal(that interface{}) bool
- func (m *PluginConfig) GetConfiguration() *types.Any
- func (m *PluginConfig) GetFailOpen() bool
- func (m *PluginConfig) GetName() string
- func (m *PluginConfig) GetRootId() string
- func (m *PluginConfig) GetVm() isPluginConfig_Vm
- func (m *PluginConfig) GetVmConfig() *VmConfig
- func (m *PluginConfig) Hash(hasher hash.Hash64) (uint64, error)
- func (*PluginConfig) ProtoMessage()
- func (m *PluginConfig) Reset()
- func (m *PluginConfig) String() string
- func (m *PluginConfig) XXX_DiscardUnknown()
- func (m *PluginConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PluginConfig) XXX_Merge(src proto.Message)
- func (*PluginConfig) XXX_OneofWrappers() []interface{}
- func (m *PluginConfig) XXX_Size() int
- func (m *PluginConfig) XXX_Unmarshal(b []byte) error
- type PluginConfig_VmConfig
- type VmConfig
- func (*VmConfig) Descriptor() ([]byte, []int)
- func (this *VmConfig) Equal(that interface{}) bool
- func (m *VmConfig) GetAllowPrecompiled() bool
- func (m *VmConfig) GetCode() *v3.AsyncDataSource
- func (m *VmConfig) GetConfiguration() *types.Any
- func (m *VmConfig) GetNackOnCodeCacheMiss() bool
- func (m *VmConfig) GetRuntime() string
- func (m *VmConfig) GetVmId() string
- func (m *VmConfig) Hash(hasher hash.Hash64) (uint64, error)
- func (*VmConfig) ProtoMessage()
- func (m *VmConfig) Reset()
- func (m *VmConfig) String() string
- func (m *VmConfig) XXX_DiscardUnknown()
- func (m *VmConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *VmConfig) XXX_Merge(src proto.Message)
- func (m *VmConfig) XXX_Size() int
- func (m *VmConfig) XXX_Unmarshal(b []byte) error
- type WasmService
- func (*WasmService) Descriptor() ([]byte, []int)
- func (this *WasmService) Equal(that interface{}) bool
- func (m *WasmService) GetConfig() *PluginConfig
- func (m *WasmService) GetSingleton() bool
- func (m *WasmService) Hash(hasher hash.Hash64) (uint64, error)
- func (*WasmService) ProtoMessage()
- func (m *WasmService) Reset()
- func (m *WasmService) String() string
- func (m *WasmService) XXX_DiscardUnknown()
- func (m *WasmService) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *WasmService) XXX_Merge(src proto.Message)
- func (m *WasmService) XXX_Size() int
- func (m *WasmService) XXX_Unmarshal(b []byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type PluginConfig ¶
type PluginConfig struct { // A unique name for a filters/services in a VM for use in identifying the filter/service if // multiple filters/services are handled by the same *vm_id* and *root_id* and for // logging/debugging. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // A unique ID for a set of filters/services in a VM which will share a RootContext and Contexts // if applicable (e.g. an Wasm HttpFilter and an Wasm AccessLog). If left blank, all // filters/services with a blank root_id with the same *vm_id* will share Context(s). RootId string `protobuf:"bytes,2,opt,name=root_id,json=rootId,proto3" json:"root_id,omitempty"` // Configuration for finding or starting VM. // // Types that are valid to be assigned to Vm: // *PluginConfig_VmConfig Vm isPluginConfig_Vm `protobuf_oneof:"vm"` // Filter/service configuration used to configure or reconfigure a plugin // (proxy_on_configuration). // `google.protobuf.Struct` is serialized as JSON before // passing it to the plugin. `google.protobuf.BytesValue` and // `google.protobuf.StringValue` are passed directly without the wrapper. Configuration *types.Any `protobuf:"bytes,4,opt,name=configuration,proto3" json:"configuration,omitempty"` // If there is a fatal error on the VM (e.g. exception, abort(), on_start or on_configure return false), // then all plugins associated with the VM will either fail closed (by default), e.g. by returning an HTTP 503 error, // or fail open (if 'fail_open' is set to true) by bypassing the filter. Note: when on_start or on_configure return false // during xDS updates the xDS configuration will be rejected and when on_start or on_configuration return false on initial // startup the proxy will not start. FailOpen bool `protobuf:"varint,5,opt,name=fail_open,json=failOpen,proto3" json:"fail_open,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Base Configuration for Wasm Plugins e.g. filters and services. [#next-free-field: 6]
func (*PluginConfig) Descriptor ¶
func (*PluginConfig) Descriptor() ([]byte, []int)
func (*PluginConfig) Equal ¶
func (this *PluginConfig) Equal(that interface{}) bool
func (*PluginConfig) GetConfiguration ¶
func (m *PluginConfig) GetConfiguration() *types.Any
func (*PluginConfig) GetFailOpen ¶
func (m *PluginConfig) GetFailOpen() bool
func (*PluginConfig) GetName ¶
func (m *PluginConfig) GetName() string
func (*PluginConfig) GetRootId ¶
func (m *PluginConfig) GetRootId() string
func (*PluginConfig) GetVm ¶
func (m *PluginConfig) GetVm() isPluginConfig_Vm
func (*PluginConfig) GetVmConfig ¶
func (m *PluginConfig) GetVmConfig() *VmConfig
func (*PluginConfig) Hash ¶
func (m *PluginConfig) Hash(hasher hash.Hash64) (uint64, error)
Hash function
func (*PluginConfig) ProtoMessage ¶
func (*PluginConfig) ProtoMessage()
func (*PluginConfig) Reset ¶
func (m *PluginConfig) Reset()
func (*PluginConfig) String ¶
func (m *PluginConfig) String() string
func (*PluginConfig) XXX_DiscardUnknown ¶
func (m *PluginConfig) XXX_DiscardUnknown()
func (*PluginConfig) XXX_Marshal ¶
func (m *PluginConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PluginConfig) XXX_Merge ¶
func (m *PluginConfig) XXX_Merge(src proto.Message)
func (*PluginConfig) XXX_OneofWrappers ¶
func (*PluginConfig) XXX_OneofWrappers() []interface{}
XXX_OneofWrappers is for the internal use of the proto package.
func (*PluginConfig) XXX_Size ¶
func (m *PluginConfig) XXX_Size() int
func (*PluginConfig) XXX_Unmarshal ¶
func (m *PluginConfig) XXX_Unmarshal(b []byte) error
type PluginConfig_VmConfig ¶
type PluginConfig_VmConfig struct {
VmConfig *VmConfig `protobuf:"bytes,3,opt,name=vm_config,json=vmConfig,proto3,oneof" json:"vm_config,omitempty"`
}
func (*PluginConfig_VmConfig) Equal ¶
func (this *PluginConfig_VmConfig) Equal(that interface{}) bool
type VmConfig ¶
type VmConfig struct { // An ID which will be used along with a hash of the wasm code (or the name of the registered Null // VM plugin) to determine which VM will be used for the plugin. All plugins which use the same // *vm_id* and code will use the same VM. May be left blank. Sharing a VM between plugins can // reduce memory utilization and make sharing of data easier which may have security implications. // See ref: "TODO: add ref" for details. VmId string `protobuf:"bytes,1,opt,name=vm_id,json=vmId,proto3" json:"vm_id,omitempty"` // The Wasm runtime type (either "v8" or "null" for code compiled into Envoy). Runtime string `protobuf:"bytes,2,opt,name=runtime,proto3" json:"runtime,omitempty"` // The Wasm code that Envoy will execute. Code *v3.AsyncDataSource `protobuf:"bytes,3,opt,name=code,proto3" json:"code,omitempty"` // The Wasm configuration used in initialization of a new VM // (proxy_on_start). `google.protobuf.Struct` is serialized as JSON before // passing it to the plugin. `google.protobuf.BytesValue` and // `google.protobuf.StringValue` are passed directly without the wrapper. Configuration *types.Any `protobuf:"bytes,4,opt,name=configuration,proto3" json:"configuration,omitempty"` // Allow the wasm file to include pre-compiled code on VMs which support it. // Warning: this should only be enable for trusted sources as the precompiled code is not // verified. AllowPrecompiled bool `protobuf:"varint,5,opt,name=allow_precompiled,json=allowPrecompiled,proto3" json:"allow_precompiled,omitempty"` // If true and the code needs to be remotely fetched and it is not in the cache then NACK the configuration // update and do a background fetch to fill the cache, otherwise fetch the code asynchronously and enter // warming state. NackOnCodeCacheMiss bool `protobuf:"varint,6,opt,name=nack_on_code_cache_miss,json=nackOnCodeCacheMiss,proto3" json:"nack_on_code_cache_miss,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Configuration for a Wasm VM. [#next-free-field: 7]
func (*VmConfig) Descriptor ¶
func (*VmConfig) GetAllowPrecompiled ¶
func (*VmConfig) GetCode ¶
func (m *VmConfig) GetCode() *v3.AsyncDataSource
func (*VmConfig) GetConfiguration ¶
func (*VmConfig) GetNackOnCodeCacheMiss ¶
func (*VmConfig) GetRuntime ¶
func (*VmConfig) ProtoMessage ¶
func (*VmConfig) ProtoMessage()
func (*VmConfig) XXX_DiscardUnknown ¶
func (m *VmConfig) XXX_DiscardUnknown()
func (*VmConfig) XXX_Marshal ¶
func (*VmConfig) XXX_Unmarshal ¶
type WasmService ¶
type WasmService struct { // General plugin configuration. Config *PluginConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` // If true, create a single VM rather than creating one VM per worker. Such a singleton can // not be used with filters. Singleton bool `protobuf:"varint,2,opt,name=singleton,proto3" json:"singleton,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
WasmService is configured as a built-in *envoy.wasm_service* :ref:`WasmService <config_wasm_service>` This opaque configuration will be used to create a Wasm Service.
func (*WasmService) Descriptor ¶
func (*WasmService) Descriptor() ([]byte, []int)
func (*WasmService) Equal ¶
func (this *WasmService) Equal(that interface{}) bool
func (*WasmService) GetConfig ¶
func (m *WasmService) GetConfig() *PluginConfig
func (*WasmService) GetSingleton ¶
func (m *WasmService) GetSingleton() bool
func (*WasmService) Hash ¶
func (m *WasmService) Hash(hasher hash.Hash64) (uint64, error)
Hash function
func (*WasmService) ProtoMessage ¶
func (*WasmService) ProtoMessage()
func (*WasmService) Reset ¶
func (m *WasmService) Reset()
func (*WasmService) String ¶
func (m *WasmService) String() string
func (*WasmService) XXX_DiscardUnknown ¶
func (m *WasmService) XXX_DiscardUnknown()
func (*WasmService) XXX_Marshal ¶
func (m *WasmService) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*WasmService) XXX_Merge ¶
func (m *WasmService) XXX_Merge(src proto.Message)
func (*WasmService) XXX_Size ¶
func (m *WasmService) XXX_Size() int
func (*WasmService) XXX_Unmarshal ¶
func (m *WasmService) XXX_Unmarshal(b []byte) error
Click to show internal directories.
Click to hide internal directories.