Documentation ¶
Index ¶
- Variables
- type GKEConfig
- func (*GKEConfig) Descriptor() ([]byte, []int)deprecated
- func (x *GKEConfig) GetAccount() string
- func (x *GKEConfig) GetComponentIdentity() map[string]string
- func (x *GKEConfig) GetContainer() string
- func (x *GKEConfig) GetDeployment() *protos.Deployment
- func (x *GKEConfig) GetIdentityAllowlist() map[string]*GKEConfig_Components
- func (x *GKEConfig) GetManagerAddr() string
- func (x *GKEConfig) GetProject() string
- func (x *GKEConfig) GetPublicListener() []*GKEConfig_PublicListener
- func (x *GKEConfig) GetRegions() []string
- func (x *GKEConfig) GetUseMtls() bool
- func (*GKEConfig) ProtoMessage()
- func (x *GKEConfig) ProtoReflect() protoreflect.Message
- func (x *GKEConfig) Reset()
- func (x *GKEConfig) String() string
- type GKEConfig_Components
- func (*GKEConfig_Components) Descriptor() ([]byte, []int)deprecated
- func (x *GKEConfig_Components) GetComponent() []string
- func (*GKEConfig_Components) ProtoMessage()
- func (x *GKEConfig_Components) ProtoReflect() protoreflect.Message
- func (x *GKEConfig_Components) Reset()
- func (x *GKEConfig_Components) String() string
- type GKEConfig_PublicListener
- func (*GKEConfig_PublicListener) Descriptor() ([]byte, []int)deprecated
- func (x *GKEConfig_PublicListener) GetHostname() string
- func (x *GKEConfig_PublicListener) GetName() string
- func (*GKEConfig_PublicListener) ProtoMessage()
- func (x *GKEConfig_PublicListener) ProtoReflect() protoreflect.Message
- func (x *GKEConfig_PublicListener) Reset()
- func (x *GKEConfig_PublicListener) String() string
Constants ¶
This section is empty.
Variables ¶
var File_internal_config_config_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type GKEConfig ¶
type GKEConfig struct { // Cloud project the application should be deployed to. If empty, the // project value will be extracted from the active gcloud configuration // on the deploying machine. Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"` // Cloud account that should be used to deploy the application. If empty, // the account value will be extracted from the active gcloud // configuration on the deploying machine. Account string `protobuf:"bytes,2,opt,name=account,proto3" json:"account,omitempty"` // List of unique regions to deploy the application to. Service Weaver will manage the // clusters in the given regions. // // If empty, Service Weaver will pick regions automatically. // // For a list of Google Cloud regions, see: // // https://cloud.google.com/compute/docs/regions-zones Regions []string `protobuf:"bytes,3,rep,name=regions,proto3" json:"regions,omitempty"` PublicListener []*GKEConfig_PublicListener `protobuf:"bytes,4,rep,name=public_listener,json=publicListener,proto3" json:"public_listener,omitempty"` // If true, enables the intra-component mTLS protocol. In particular: // 1. All intra-component communication will be authenticated, ensuring // that the caller and callee components' identities can be verified. // 2. All intra-component communication will be authorized, ensuring that // the caller -> callee relationship matches the call graph encoded // in the program. // 3. All intra-component traffic will be encrypted, ensuring that a third // party cannot snoop on the network packets. // // Note that enabling mTLS will likely increase the CPU usage of your // application. UseMtls bool `protobuf:"varint,8,opt,name=use_mtls,json=useMtls,proto3" json:"use_mtls,omitempty"` // Address of the manager local to a Service Weaver process. This field is typically // filled by the manager, before starting a Service Weaver process. ManagerAddr string `protobuf:"bytes,5,opt,name=manager_addr,json=managerAddr,proto3" json:"manager_addr,omitempty"` // The URL of the container used to deploy the application (e.g., // us-docker.pkg.dev/my-project/serviceweaver-repo/todo:tag4df65e28), or the // empty string if containers are not being used. Container string `protobuf:"bytes,6,opt,name=container,proto3" json:"container,omitempty"` Deployment *protos.Deployment `protobuf:"bytes,7,opt,name=deployment,proto3" json:"deployment,omitempty"` // Map from component name to the expected component identity. ComponentIdentity map[string]string `` /* 200-byte string literal not displayed */ IdentityAllowlist map[string]*GKEConfig_Components `` /* 201-byte string literal not displayed */ // contains filtered or unexported fields }
GKEConfig holds configuration information for one execution of a Service Weaver application on GKE. Fields are populated from a combination of user specified configuration and Service Weaver provided information specific to a particular execution.
func (*GKEConfig) Descriptor
deprecated
func (*GKEConfig) GetAccount ¶
func (*GKEConfig) GetComponentIdentity ¶ added in v0.10.0
func (*GKEConfig) GetContainer ¶
func (*GKEConfig) GetDeployment ¶
func (x *GKEConfig) GetDeployment() *protos.Deployment
func (*GKEConfig) GetIdentityAllowlist ¶ added in v0.10.0
func (x *GKEConfig) GetIdentityAllowlist() map[string]*GKEConfig_Components
func (*GKEConfig) GetManagerAddr ¶
func (*GKEConfig) GetProject ¶
func (*GKEConfig) GetPublicListener ¶
func (x *GKEConfig) GetPublicListener() []*GKEConfig_PublicListener
func (*GKEConfig) GetRegions ¶
func (*GKEConfig) GetUseMtls ¶ added in v0.10.0
func (*GKEConfig) ProtoMessage ¶
func (*GKEConfig) ProtoMessage()
func (*GKEConfig) ProtoReflect ¶
func (x *GKEConfig) ProtoReflect() protoreflect.Message
type GKEConfig_Components ¶ added in v0.10.0
type GKEConfig_Components struct { Component []string `protobuf:"bytes,1,rep,name=component,proto3" json:"component,omitempty"` // contains filtered or unexported fields }
Map from a component identity to the list of components the identity is allowed to invoke methods on.
func (*GKEConfig_Components) Descriptor
deprecated
added in
v0.10.0
func (*GKEConfig_Components) Descriptor() ([]byte, []int)
Deprecated: Use GKEConfig_Components.ProtoReflect.Descriptor instead.
func (*GKEConfig_Components) GetComponent ¶ added in v0.10.0
func (x *GKEConfig_Components) GetComponent() []string
func (*GKEConfig_Components) ProtoMessage ¶ added in v0.10.0
func (*GKEConfig_Components) ProtoMessage()
func (*GKEConfig_Components) ProtoReflect ¶ added in v0.10.0
func (x *GKEConfig_Components) ProtoReflect() protoreflect.Message
func (*GKEConfig_Components) Reset ¶ added in v0.10.0
func (x *GKEConfig_Components) Reset()
func (*GKEConfig_Components) String ¶ added in v0.10.0
func (x *GKEConfig_Components) String() string
type GKEConfig_PublicListener ¶
type GKEConfig_PublicListener struct { // Name of the listener. Must match the name the listener is created // with in the application binary (i.e., via a call to Listener()). Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Hostname under which the listener will be accessible. // // The hostname is used for routing ingress traffic to the listener. // It is an error to leave this field empty. Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"` // contains filtered or unexported fields }
Publicly accessible HTTP listeners for the application.
Service Weaver applications create HTTP listeners dynamically, i.e., via calls to Listener(). Only listeners listed here will be configured to receive ingress traffic; all other listeners will be configured only for VPC-internal access.
func (*GKEConfig_PublicListener) Descriptor
deprecated
func (*GKEConfig_PublicListener) Descriptor() ([]byte, []int)
Deprecated: Use GKEConfig_PublicListener.ProtoReflect.Descriptor instead.
func (*GKEConfig_PublicListener) GetHostname ¶
func (x *GKEConfig_PublicListener) GetHostname() string
func (*GKEConfig_PublicListener) GetName ¶
func (x *GKEConfig_PublicListener) GetName() string
func (*GKEConfig_PublicListener) ProtoMessage ¶
func (*GKEConfig_PublicListener) ProtoMessage()
func (*GKEConfig_PublicListener) ProtoReflect ¶
func (x *GKEConfig_PublicListener) ProtoReflect() protoreflect.Message
func (*GKEConfig_PublicListener) Reset ¶
func (x *GKEConfig_PublicListener) Reset()
func (*GKEConfig_PublicListener) String ¶
func (x *GKEConfig_PublicListener) String() string