connect

package
v0.27.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 22, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package connect provides the way to listen for updates from the cloud

Index

Constants

View Source
const (
	Connect_Subscribe_FullMethodName = "/pomerium.zero.Connect/Subscribe"
)

Variables

View Source
var Connect_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "pomerium.zero.Connect",
	HandlerType: (*ConnectServer)(nil),
	Methods:     []grpc.MethodDesc{},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "Subscribe",
			Handler:       _Connect_Subscribe_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "connect.proto",
}

Connect_ServiceDesc is the grpc.ServiceDesc for Connect service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var File_connect_proto protoreflect.FileDescriptor

Functions

func RegisterConnectServer

func RegisterConnectServer(s grpc.ServiceRegistrar, srv ConnectServer)

Types

type BootstrapConfigUpdated

type BootstrapConfigUpdated struct {
	// contains filtered or unexported fields
}

BootstrapConfigUpdated is sent when the bootstrap configuration has been updated. Bootstrap configuration is received via cluster API directly, and does not involve long running operations to construct it, like with a regular config.

func (*BootstrapConfigUpdated) Descriptor deprecated

func (*BootstrapConfigUpdated) Descriptor() ([]byte, []int)

Deprecated: Use BootstrapConfigUpdated.ProtoReflect.Descriptor instead.

func (*BootstrapConfigUpdated) ProtoMessage

func (*BootstrapConfigUpdated) ProtoMessage()

func (*BootstrapConfigUpdated) ProtoReflect

func (x *BootstrapConfigUpdated) ProtoReflect() protoreflect.Message

func (*BootstrapConfigUpdated) Reset

func (x *BootstrapConfigUpdated) Reset()

func (*BootstrapConfigUpdated) String

func (x *BootstrapConfigUpdated) String() string

type ConfigUpdated

type ConfigUpdated struct {

	// version of the configuration changeset
	ChangesetVersion int64 `protobuf:"varint,1,opt,name=changeset_version,json=changesetVersion,proto3" json:"changeset_version,omitempty"`
	// contains filtered or unexported fields
}

ConfigUpdated is sent when the configuration has been updated for the connected Pomerium Core deployment

func (*ConfigUpdated) Descriptor deprecated

func (*ConfigUpdated) Descriptor() ([]byte, []int)

Deprecated: Use ConfigUpdated.ProtoReflect.Descriptor instead.

func (*ConfigUpdated) GetChangesetVersion

func (x *ConfigUpdated) GetChangesetVersion() int64

func (*ConfigUpdated) ProtoMessage

func (*ConfigUpdated) ProtoMessage()

func (*ConfigUpdated) ProtoReflect

func (x *ConfigUpdated) ProtoReflect() protoreflect.Message

func (*ConfigUpdated) Reset

func (x *ConfigUpdated) Reset()

func (*ConfigUpdated) String

func (x *ConfigUpdated) String() string

type ConnectClient

type ConnectClient interface {
	// Subscribe is used to send a stream of messages from the Zero Cloud to the
	// Pomerium Core in managed mode.
	Subscribe(ctx context.Context, in *SubscribeRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[Message], error)
}

ConnectClient is the client API for Connect service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

Connect service is used to maintain a persistent connection between the Pomerium Core and Zero Cloud and receive messages from the cloud.

func NewConnectClient

func NewConnectClient(cc grpc.ClientConnInterface) ConnectClient

type ConnectServer

type ConnectServer interface {
	// Subscribe is used to send a stream of messages from the Zero Cloud to the
	// Pomerium Core in managed mode.
	Subscribe(*SubscribeRequest, grpc.ServerStreamingServer[Message]) error
}

ConnectServer is the server API for Connect service. All implementations should embed UnimplementedConnectServer for forward compatibility.

Connect service is used to maintain a persistent connection between the Pomerium Core and Zero Cloud and receive messages from the cloud.

type Connect_SubscribeClient

type Connect_SubscribeClient = grpc.ServerStreamingClient[Message]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type Connect_SubscribeServer

type Connect_SubscribeServer = grpc.ServerStreamingServer[Message]

This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.

type EnvoyMetricsRequest added in v0.27.0

type EnvoyMetricsRequest struct {

	// only include metrics that match the provided labels
	Metrics []string `protobuf:"bytes,1,rep,name=metrics,proto3" json:"metrics,omitempty"`
	// only include labels that match the provided labels
	Labels []string `protobuf:"bytes,2,rep,name=labels,proto3" json:"labels,omitempty"`
	// contains filtered or unexported fields
}

EnvoyMetricsRequest is used to request current envoy metrics

func (*EnvoyMetricsRequest) Descriptor deprecated added in v0.27.0

func (*EnvoyMetricsRequest) Descriptor() ([]byte, []int)

Deprecated: Use EnvoyMetricsRequest.ProtoReflect.Descriptor instead.

func (*EnvoyMetricsRequest) GetLabels added in v0.27.0

func (x *EnvoyMetricsRequest) GetLabels() []string

func (*EnvoyMetricsRequest) GetMetrics added in v0.27.0

func (x *EnvoyMetricsRequest) GetMetrics() []string

func (*EnvoyMetricsRequest) ProtoMessage added in v0.27.0

func (*EnvoyMetricsRequest) ProtoMessage()

func (*EnvoyMetricsRequest) ProtoReflect added in v0.27.0

func (x *EnvoyMetricsRequest) ProtoReflect() protoreflect.Message

func (*EnvoyMetricsRequest) Reset added in v0.27.0

func (x *EnvoyMetricsRequest) Reset()

func (*EnvoyMetricsRequest) String added in v0.27.0

func (x *EnvoyMetricsRequest) String() string

type Message

type Message struct {

	// Types that are assignable to Message:
	//
	//	*Message_ConfigUpdated
	//	*Message_BootstrapConfigUpdated
	//	*Message_TelemetryRequest
	//	*Message_RunHealthChecksRequest
	Message isMessage_Message `protobuf_oneof:"message"`
	// contains filtered or unexported fields
}

Message is an aggregate of all possible messages that can be sent from the cloud to the core in managed mode.

func (*Message) Descriptor deprecated

func (*Message) Descriptor() ([]byte, []int)

Deprecated: Use Message.ProtoReflect.Descriptor instead.

func (*Message) GetBootstrapConfigUpdated

func (x *Message) GetBootstrapConfigUpdated() *BootstrapConfigUpdated

func (*Message) GetConfigUpdated

func (x *Message) GetConfigUpdated() *ConfigUpdated

func (*Message) GetMessage

func (m *Message) GetMessage() isMessage_Message

func (*Message) GetRunHealthChecksRequest added in v0.27.0

func (x *Message) GetRunHealthChecksRequest() *RunHealthChecksRequest

func (*Message) GetTelemetryRequest added in v0.27.0

func (x *Message) GetTelemetryRequest() *TelemetryRequest

func (*Message) ProtoMessage

func (*Message) ProtoMessage()

func (*Message) ProtoReflect

func (x *Message) ProtoReflect() protoreflect.Message

func (*Message) Reset

func (x *Message) Reset()

func (*Message) String

func (x *Message) String() string

type Message_BootstrapConfigUpdated

type Message_BootstrapConfigUpdated struct {
	BootstrapConfigUpdated *BootstrapConfigUpdated `protobuf:"bytes,2,opt,name=bootstrap_config_updated,json=bootstrapConfigUpdated,proto3,oneof"`
}

type Message_ConfigUpdated

type Message_ConfigUpdated struct {
	ConfigUpdated *ConfigUpdated `protobuf:"bytes,1,opt,name=config_updated,json=configUpdated,proto3,oneof"`
}

type Message_RunHealthChecksRequest added in v0.27.0

type Message_RunHealthChecksRequest struct {
	RunHealthChecksRequest *RunHealthChecksRequest `protobuf:"bytes,5,opt,name=run_health_checks_request,json=runHealthChecksRequest,proto3,oneof"`
}

type Message_TelemetryRequest added in v0.27.0

type Message_TelemetryRequest struct {
	TelemetryRequest *TelemetryRequest `protobuf:"bytes,3,opt,name=telemetry_request,json=telemetryRequest,proto3,oneof"`
}

type PomeriumMetricsRequest added in v0.27.0

type PomeriumMetricsRequest struct {

	// only include metrics that match the provided labels
	Metrics []string `protobuf:"bytes,1,rep,name=metrics,proto3" json:"metrics,omitempty"`
	// contains filtered or unexported fields
}

PomeriumMetricsRequest is used to request current pomerium metrics

func (*PomeriumMetricsRequest) Descriptor deprecated added in v0.27.0

func (*PomeriumMetricsRequest) Descriptor() ([]byte, []int)

Deprecated: Use PomeriumMetricsRequest.ProtoReflect.Descriptor instead.

func (*PomeriumMetricsRequest) GetMetrics added in v0.27.0

func (x *PomeriumMetricsRequest) GetMetrics() []string

func (*PomeriumMetricsRequest) ProtoMessage added in v0.27.0

func (*PomeriumMetricsRequest) ProtoMessage()

func (*PomeriumMetricsRequest) ProtoReflect added in v0.27.0

func (x *PomeriumMetricsRequest) ProtoReflect() protoreflect.Message

func (*PomeriumMetricsRequest) Reset added in v0.27.0

func (x *PomeriumMetricsRequest) Reset()

func (*PomeriumMetricsRequest) String added in v0.27.0

func (x *PomeriumMetricsRequest) String() string

type RunHealthChecksRequest added in v0.27.0

type RunHealthChecksRequest struct {
	// contains filtered or unexported fields
}

RunHealthChecksRequest is sent to request the Pomerium Core to re-run its health checks

func (*RunHealthChecksRequest) Descriptor deprecated added in v0.27.0

func (*RunHealthChecksRequest) Descriptor() ([]byte, []int)

Deprecated: Use RunHealthChecksRequest.ProtoReflect.Descriptor instead.

func (*RunHealthChecksRequest) ProtoMessage added in v0.27.0

func (*RunHealthChecksRequest) ProtoMessage()

func (*RunHealthChecksRequest) ProtoReflect added in v0.27.0

func (x *RunHealthChecksRequest) ProtoReflect() protoreflect.Message

func (*RunHealthChecksRequest) Reset added in v0.27.0

func (x *RunHealthChecksRequest) Reset()

func (*RunHealthChecksRequest) String added in v0.27.0

func (x *RunHealthChecksRequest) String() string

type SessionAnalyticsRequest added in v0.27.0

type SessionAnalyticsRequest struct {
	// contains filtered or unexported fields
}

SessionAnalyticsRequest is used to request current MAU/DAU data

func (*SessionAnalyticsRequest) Descriptor deprecated added in v0.27.0

func (*SessionAnalyticsRequest) Descriptor() ([]byte, []int)

Deprecated: Use SessionAnalyticsRequest.ProtoReflect.Descriptor instead.

func (*SessionAnalyticsRequest) ProtoMessage added in v0.27.0

func (*SessionAnalyticsRequest) ProtoMessage()

func (*SessionAnalyticsRequest) ProtoReflect added in v0.27.0

func (x *SessionAnalyticsRequest) ProtoReflect() protoreflect.Message

func (*SessionAnalyticsRequest) Reset added in v0.27.0

func (x *SessionAnalyticsRequest) Reset()

func (*SessionAnalyticsRequest) String added in v0.27.0

func (x *SessionAnalyticsRequest) String() string

type SubscribeRequest

type SubscribeRequest struct {
	Hostname string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
	Version  string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
	// contains filtered or unexported fields
}

SubscribeRequest is used to subscribe to a stream of messages from the Zero Cloud to the Pomerium Core.

The Authorization: Bearer header must contain a valid token, that belongs to a cluster identity with appropriate claims set.

func (*SubscribeRequest) Descriptor deprecated

func (*SubscribeRequest) Descriptor() ([]byte, []int)

Deprecated: Use SubscribeRequest.ProtoReflect.Descriptor instead.

func (*SubscribeRequest) GetHostname added in v0.27.0

func (x *SubscribeRequest) GetHostname() string

func (*SubscribeRequest) GetVersion added in v0.27.0

func (x *SubscribeRequest) GetVersion() string

func (*SubscribeRequest) ProtoMessage

func (*SubscribeRequest) ProtoMessage()

func (*SubscribeRequest) ProtoReflect

func (x *SubscribeRequest) ProtoReflect() protoreflect.Message

func (*SubscribeRequest) Reset

func (x *SubscribeRequest) Reset()

func (*SubscribeRequest) String

func (x *SubscribeRequest) String() string

type TelemetryRequest added in v0.27.0

type TelemetryRequest struct {

	// include_session_analytics requests current MAU/DAU data
	SessionAnalytics *SessionAnalyticsRequest `protobuf:"bytes,1,opt,name=session_analytics,json=sessionAnalytics,proto3,oneof" json:"session_analytics,omitempty"`
	// envoy_metrics requests current envoy metrics
	EnvoyMetrics *EnvoyMetricsRequest `protobuf:"bytes,2,opt,name=envoy_metrics,json=envoyMetrics,proto3,oneof" json:"envoy_metrics,omitempty"`
	// pomerium_metrics requests current pomerium metrics
	PomeriumMetrics *PomeriumMetricsRequest `protobuf:"bytes,3,opt,name=pomerium_metrics,json=pomeriumMetrics,proto3,oneof" json:"pomerium_metrics,omitempty"`
	// contains filtered or unexported fields
}

TelemetryRequest is sent to request current telemetry data from the Pomerium Core to be sent to the Zero Cloud.

func (*TelemetryRequest) Descriptor deprecated added in v0.27.0

func (*TelemetryRequest) Descriptor() ([]byte, []int)

Deprecated: Use TelemetryRequest.ProtoReflect.Descriptor instead.

func (*TelemetryRequest) GetEnvoyMetrics added in v0.27.0

func (x *TelemetryRequest) GetEnvoyMetrics() *EnvoyMetricsRequest

func (*TelemetryRequest) GetPomeriumMetrics added in v0.27.0

func (x *TelemetryRequest) GetPomeriumMetrics() *PomeriumMetricsRequest

func (*TelemetryRequest) GetSessionAnalytics added in v0.27.0

func (x *TelemetryRequest) GetSessionAnalytics() *SessionAnalyticsRequest

func (*TelemetryRequest) ProtoMessage added in v0.27.0

func (*TelemetryRequest) ProtoMessage()

func (*TelemetryRequest) ProtoReflect added in v0.27.0

func (x *TelemetryRequest) ProtoReflect() protoreflect.Message

func (*TelemetryRequest) Reset added in v0.27.0

func (x *TelemetryRequest) Reset()

func (*TelemetryRequest) String added in v0.27.0

func (x *TelemetryRequest) String() string

type UnimplementedConnectServer

type UnimplementedConnectServer struct{}

UnimplementedConnectServer should be embedded to have forward compatible implementations.

NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.

func (UnimplementedConnectServer) Subscribe

type UnsafeConnectServer

type UnsafeConnectServer interface {
	// contains filtered or unexported methods
}

UnsafeConnectServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to ConnectServer will result in compilation errors.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL