manager

package
v2.1.2-rc.1 Latest Latest
Warning

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

Go to latest
Published: Mar 19, 2021 License: Apache-2.0 Imports: 10 Imported by: 25

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	InterceptDispositionType_name = map[int32]string{
		0: "UNSPECIFIED",
		1: "ACTIVE",
		2: "WAITING",
		3: "NO_CLIENT",
		4: "NO_AGENT",
		5: "NO_MECHANISM",
		6: "NO_PORTS",
		7: "AGENT_ERROR",
		8: "BAD_ARGS",
	}
	InterceptDispositionType_value = map[string]int32{
		"UNSPECIFIED":  0,
		"ACTIVE":       1,
		"WAITING":      2,
		"NO_CLIENT":    3,
		"NO_AGENT":     4,
		"NO_MECHANISM": 5,
		"NO_PORTS":     6,
		"AGENT_ERROR":  7,
		"BAD_ARGS":     8,
	}
)

Enum value maps for InterceptDispositionType.

View Source
var File_rpc_manager_manager_proto protoreflect.FileDescriptor
View Source
var File_rpc_manager_systema_proto protoreflect.FileDescriptor

Functions

func RegisterManagerProxyServer

func RegisterManagerProxyServer(s grpc.ServiceRegistrar, srv ManagerProxyServer)

func RegisterManagerServer

func RegisterManagerServer(s grpc.ServiceRegistrar, srv ManagerServer)

Types

type AgentInfo

type AgentInfo struct {
	Name      string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`           // name of the Deployment
	Namespace string `protobuf:"bytes,7,opt,name=namespace,proto3" json:"namespace,omitempty"` // namespace of the Deployment
	Hostname  string `protobuf:"bytes,2,opt,name=hostname,proto3" json:"hostname,omitempty"`
	Product   string `protobuf:"bytes,3,opt,name=product,proto3" json:"product,omitempty"` // distinguish open source, our closed source, someone else's thing
	Version   string `protobuf:"bytes,4,opt,name=version,proto3" json:"version,omitempty"`
	// This is a list of the mechanisms that the Agent advertises that
	// it supports.
	Mechanisms []*AgentInfo_Mechanism `protobuf:"bytes,5,rep,name=mechanisms,proto3" json:"mechanisms,omitempty"`
	// The environment of the app
	Environment map[string]string `` /* 163-byte string literal not displayed */
	// contains filtered or unexported fields
}

AgentInfo is the self-reported metadata that an Agent (app-sidecar) reports at boot-up when it connects to the Telepresence Manager.

func (*AgentInfo) Descriptor deprecated

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

Deprecated: Use AgentInfo.ProtoReflect.Descriptor instead.

func (*AgentInfo) GetEnvironment

func (x *AgentInfo) GetEnvironment() map[string]string

func (*AgentInfo) GetHostname

func (x *AgentInfo) GetHostname() string

func (*AgentInfo) GetMechanisms

func (x *AgentInfo) GetMechanisms() []*AgentInfo_Mechanism

func (*AgentInfo) GetName

func (x *AgentInfo) GetName() string

func (*AgentInfo) GetNamespace

func (x *AgentInfo) GetNamespace() string

func (*AgentInfo) GetProduct

func (x *AgentInfo) GetProduct() string

func (*AgentInfo) GetVersion

func (x *AgentInfo) GetVersion() string

func (*AgentInfo) ProtoMessage

func (*AgentInfo) ProtoMessage()

func (*AgentInfo) ProtoReflect

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

func (*AgentInfo) Reset

func (x *AgentInfo) Reset()

func (*AgentInfo) String

func (x *AgentInfo) String() string

type AgentInfoSnapshot

type AgentInfoSnapshot struct {
	Agents []*AgentInfo `protobuf:"bytes,1,rep,name=agents,proto3" json:"agents,omitempty"`
	// contains filtered or unexported fields
}

func (*AgentInfoSnapshot) Descriptor deprecated

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

Deprecated: Use AgentInfoSnapshot.ProtoReflect.Descriptor instead.

func (*AgentInfoSnapshot) GetAgents

func (x *AgentInfoSnapshot) GetAgents() []*AgentInfo

func (*AgentInfoSnapshot) ProtoMessage

func (*AgentInfoSnapshot) ProtoMessage()

func (*AgentInfoSnapshot) ProtoReflect

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

func (*AgentInfoSnapshot) Reset

func (x *AgentInfoSnapshot) Reset()

func (*AgentInfoSnapshot) String

func (x *AgentInfoSnapshot) String() string

type AgentInfo_Mechanism

type AgentInfo_Mechanism struct {
	Name    string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`       // "tcp" or "http" or "grpc" or ...
	Product string `protobuf:"bytes,2,opt,name=product,proto3" json:"product,omitempty"` // distinguish open source, our closed source, someone else's thing
	Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version,omitempty"`
	// contains filtered or unexported fields
}

"Mechanisms" are the ways that an Agent can decide handle incoming requests, and decide whether to send them to the in-cluster service, or whether to intercept them. The "tcp" mechanism is the only one in Telepresence open source, and handles things at the TCP-level and either intercepts all TCP streams or doesn't intercept anything. Other Agents than the Telepresence one may implement more mechanisms, such as Ambassador Labs' "Service Preview" Agent which implements the "http" mechanism which handles th "http" mechanism, which handles things at the HTTP-request-level and can decide to intercept individual HTTP requests based on the request headers.

func (*AgentInfo_Mechanism) Descriptor deprecated

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

Deprecated: Use AgentInfo_Mechanism.ProtoReflect.Descriptor instead.

func (*AgentInfo_Mechanism) GetName

func (x *AgentInfo_Mechanism) GetName() string

func (*AgentInfo_Mechanism) GetProduct

func (x *AgentInfo_Mechanism) GetProduct() string

func (*AgentInfo_Mechanism) GetVersion

func (x *AgentInfo_Mechanism) GetVersion() string

func (*AgentInfo_Mechanism) ProtoMessage

func (*AgentInfo_Mechanism) ProtoMessage()

func (*AgentInfo_Mechanism) ProtoReflect

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

func (*AgentInfo_Mechanism) Reset

func (x *AgentInfo_Mechanism) Reset()

func (*AgentInfo_Mechanism) String

func (x *AgentInfo_Mechanism) String() string

type ClientInfo

type ClientInfo struct {
	Name        string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // user@hostname
	InstallId   string `protobuf:"bytes,2,opt,name=install_id,json=installId,proto3" json:"install_id,omitempty"`
	Product     string `protobuf:"bytes,3,opt,name=product,proto3" json:"product,omitempty"` // "telepresence"
	Version     string `protobuf:"bytes,4,opt,name=version,proto3" json:"version,omitempty"`
	BearerToken string `protobuf:"bytes,5,opt,name=bearer_token,json=bearerToken,proto3" json:"bearer_token,omitempty"`
	// contains filtered or unexported fields
}

ClientInfo is the self-reported metadata that the on-laptop Telepresence client reports whenever it connects to the in-cluster Manager.

func (*ClientInfo) Descriptor deprecated

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

Deprecated: Use ClientInfo.ProtoReflect.Descriptor instead.

func (*ClientInfo) GetBearerToken

func (x *ClientInfo) GetBearerToken() string

func (*ClientInfo) GetInstallId

func (x *ClientInfo) GetInstallId() string

func (*ClientInfo) GetName

func (x *ClientInfo) GetName() string

func (*ClientInfo) GetProduct

func (x *ClientInfo) GetProduct() string

func (*ClientInfo) GetVersion

func (x *ClientInfo) GetVersion() string

func (*ClientInfo) ProtoMessage

func (*ClientInfo) ProtoMessage()

func (*ClientInfo) ProtoReflect

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

func (*ClientInfo) Reset

func (x *ClientInfo) Reset()

func (*ClientInfo) String

func (x *ClientInfo) String() string

type ConnectionChunk

type ConnectionChunk struct {

	// Types that are assignable to Value:
	//	*ConnectionChunk_InterceptId
	//	*ConnectionChunk_Data
	//	*ConnectionChunk_Error
	Value isConnectionChunk_Value `protobuf_oneof:"value"`
	// contains filtered or unexported fields
}

func (*ConnectionChunk) Descriptor deprecated

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

Deprecated: Use ConnectionChunk.ProtoReflect.Descriptor instead.

func (*ConnectionChunk) GetData

func (x *ConnectionChunk) GetData() []byte

func (*ConnectionChunk) GetError

func (x *ConnectionChunk) GetError() string

func (*ConnectionChunk) GetInterceptId

func (x *ConnectionChunk) GetInterceptId() string

func (*ConnectionChunk) GetValue

func (m *ConnectionChunk) GetValue() isConnectionChunk_Value

func (*ConnectionChunk) ProtoMessage

func (*ConnectionChunk) ProtoMessage()

func (*ConnectionChunk) ProtoReflect

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

func (*ConnectionChunk) Reset

func (x *ConnectionChunk) Reset()

func (*ConnectionChunk) String

func (x *ConnectionChunk) String() string

type ConnectionChunk_Data

type ConnectionChunk_Data struct {
	Data []byte `protobuf:"bytes,2,opt,name=data,proto3,oneof"`
}

type ConnectionChunk_Error

type ConnectionChunk_Error struct {
	Error string `protobuf:"bytes,3,opt,name=error,proto3,oneof"` // TODO: Probably have a better error type
}

type ConnectionChunk_InterceptId

type ConnectionChunk_InterceptId struct {
	InterceptId string `protobuf:"bytes,1,opt,name=intercept_id,json=interceptId,proto3,oneof"`
}

type CreateInterceptRequest

type CreateInterceptRequest struct {
	Session       *SessionInfo   `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
	InterceptSpec *InterceptSpec `protobuf:"bytes,2,opt,name=intercept_spec,json=interceptSpec,proto3" json:"intercept_spec,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateInterceptRequest) Descriptor deprecated

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

Deprecated: Use CreateInterceptRequest.ProtoReflect.Descriptor instead.

func (*CreateInterceptRequest) GetInterceptSpec

func (x *CreateInterceptRequest) GetInterceptSpec() *InterceptSpec

func (*CreateInterceptRequest) GetSession

func (x *CreateInterceptRequest) GetSession() *SessionInfo

func (*CreateInterceptRequest) ProtoMessage

func (*CreateInterceptRequest) ProtoMessage()

func (*CreateInterceptRequest) ProtoReflect

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

func (*CreateInterceptRequest) Reset

func (x *CreateInterceptRequest) Reset()

func (*CreateInterceptRequest) String

func (x *CreateInterceptRequest) String() string

type IngressInfo

type IngressInfo struct {

	// The layer-3 host
	Host string `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
	// The layer-4 port
	Port int32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	// Whether or not to use TLS on the port
	UseTls bool `protobuf:"varint,3,opt,name=use_tls,json=useTls,proto3" json:"use_tls,omitempty"`
	// The layer-5 host
	L5Host string `protobuf:"bytes,4,opt,name=l5host,proto3" json:"l5host,omitempty"`
	// contains filtered or unexported fields
}

func (*IngressInfo) Descriptor deprecated

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

Deprecated: Use IngressInfo.ProtoReflect.Descriptor instead.

func (*IngressInfo) GetHost

func (x *IngressInfo) GetHost() string

func (*IngressInfo) GetL5Host

func (x *IngressInfo) GetL5Host() string

func (*IngressInfo) GetPort

func (x *IngressInfo) GetPort() int32

func (*IngressInfo) GetUseTls

func (x *IngressInfo) GetUseTls() bool

func (*IngressInfo) ProtoMessage

func (*IngressInfo) ProtoMessage()

func (*IngressInfo) ProtoReflect

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

func (*IngressInfo) Reset

func (x *IngressInfo) Reset()

func (*IngressInfo) String

func (x *IngressInfo) String() string

type InterceptDispositionType

type InterceptDispositionType int32
const (
	InterceptDispositionType_UNSPECIFIED InterceptDispositionType = 0
	InterceptDispositionType_ACTIVE      InterceptDispositionType = 1
	InterceptDispositionType_WAITING     InterceptDispositionType = 2
	// What does "NO_CLIENT" mean?  The Manager garbage-collects the
	// intercept if the client goes away.
	InterceptDispositionType_NO_CLIENT InterceptDispositionType = 3
	// NO_AGENT indicates that there are no currently-running agents
	// that can service the intercept, or that there is a inconsistency
	// between the agents that are running.  This may be an ephemeral
	// state, such as inconsistency between agents during the middle of
	// a rolling update.
	InterceptDispositionType_NO_AGENT InterceptDispositionType = 4
	// NO_MECHANISM indicates that the agent(s) that would handle this
	// intercept do not report that they support the mechanism of the
	// intercept.  For example, if you are running the OSS agent but ask
	// for an intercept using the "http" mechanism, which requires the
	// Ambassador Telepresence agent.
	InterceptDispositionType_NO_MECHANISM InterceptDispositionType = 5
	// NO_PORT indicates that the manager was unable to allocate a port
	// to act as the rendezvous point between the client and the agent.
	InterceptDispositionType_NO_PORTS InterceptDispositionType = 6
	// AGENT_ERROR indicates that the intercept was submitted to an
	// agent, but that the agent rejected it (by calling
	// ReviewIntercept).
	InterceptDispositionType_AGENT_ERROR InterceptDispositionType = 7
	// BAD_ARGS indicates that something about the mechanism_args is
	// invalid.
	InterceptDispositionType_BAD_ARGS InterceptDispositionType = 8
)

func (InterceptDispositionType) Descriptor

func (InterceptDispositionType) Enum

func (InterceptDispositionType) EnumDescriptor deprecated

func (InterceptDispositionType) EnumDescriptor() ([]byte, []int)

Deprecated: Use InterceptDispositionType.Descriptor instead.

func (InterceptDispositionType) Number

func (InterceptDispositionType) String

func (x InterceptDispositionType) String() string

func (InterceptDispositionType) Type

type InterceptInfo

type InterceptInfo struct {
	Spec          *InterceptSpec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"`
	Id            string         `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"`
	ClientSession *SessionInfo   `protobuf:"bytes,6,opt,name=client_session,json=clientSession,proto3" json:"client_session,omitempty"`
	// manager_port is the port on the manager that the agent should
	// send intercepted traffic to.  This gets set by the manager when
	// the intercept is first created.
	ManagerPort int32 `protobuf:"varint,2,opt,name=manager_port,json=managerPort,proto3" json:"manager_port,omitempty"`
	// preview_domain is the SystemA domain that will proxy in traffic
	// to this intercept, and preview_ingress is where it will get
	// proxied to.  They both get set by the manager when the client
	// makes a call to UpdateIntercept with add_preview_domain set.
	PreviewDomain string       `protobuf:"bytes,7,opt,name=preview_domain,json=previewDomain,proto3" json:"preview_domain,omitempty"`
	PreviewSpec   *PreviewSpec `protobuf:"bytes,9,opt,name=preview_spec,json=previewSpec,proto3" json:"preview_spec,omitempty"`
	// The current intercept state; a status code and a human-friendly
	// message to go along with the status code.  These may be set
	// manager itself, or may be set by the agent's call to
	// ReviewIntercept.
	Disposition InterceptDispositionType `` /* 127-byte string literal not displayed */
	Message     string                   `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"`
	// The Pod name and SSH port to use when doing sshfs mounts.  These
	// are set by the agent's call to ReviewIntercept.
	PodName string `protobuf:"bytes,10,opt,name=pod_name,json=podName,proto3" json:"pod_name,omitempty"`
	SshPort int32  `protobuf:"varint,11,opt,name=ssh_port,json=sshPort,proto3" json:"ssh_port,omitempty"`
	// A human-friendly description of what the spec.mechanism_args say.
	// This is set by the agent's call to ReviewIntercept.
	MechanismArgsDesc string `protobuf:"bytes,12,opt,name=mechanism_args_desc,json=mechanismArgsDesc,proto3" json:"mechanism_args_desc,omitempty"`
	// contains filtered or unexported fields
}

func (*InterceptInfo) Descriptor deprecated

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

Deprecated: Use InterceptInfo.ProtoReflect.Descriptor instead.

func (*InterceptInfo) GetClientSession

func (x *InterceptInfo) GetClientSession() *SessionInfo

func (*InterceptInfo) GetDisposition

func (x *InterceptInfo) GetDisposition() InterceptDispositionType

func (*InterceptInfo) GetId

func (x *InterceptInfo) GetId() string

func (*InterceptInfo) GetManagerPort

func (x *InterceptInfo) GetManagerPort() int32

func (*InterceptInfo) GetMechanismArgsDesc

func (x *InterceptInfo) GetMechanismArgsDesc() string

func (*InterceptInfo) GetMessage

func (x *InterceptInfo) GetMessage() string

func (*InterceptInfo) GetPodName

func (x *InterceptInfo) GetPodName() string

func (*InterceptInfo) GetPreviewDomain

func (x *InterceptInfo) GetPreviewDomain() string

func (*InterceptInfo) GetPreviewSpec

func (x *InterceptInfo) GetPreviewSpec() *PreviewSpec

func (*InterceptInfo) GetSpec

func (x *InterceptInfo) GetSpec() *InterceptSpec

func (*InterceptInfo) GetSshPort

func (x *InterceptInfo) GetSshPort() int32

func (*InterceptInfo) ProtoMessage

func (*InterceptInfo) ProtoMessage()

func (*InterceptInfo) ProtoReflect

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

func (*InterceptInfo) Reset

func (x *InterceptInfo) Reset()

func (*InterceptInfo) String

func (x *InterceptInfo) String() string

type InterceptInfoSnapshot

type InterceptInfoSnapshot struct {
	Intercepts []*InterceptInfo `protobuf:"bytes,1,rep,name=intercepts,proto3" json:"intercepts,omitempty"`
	// contains filtered or unexported fields
}

func (*InterceptInfoSnapshot) Descriptor deprecated

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

Deprecated: Use InterceptInfoSnapshot.ProtoReflect.Descriptor instead.

func (*InterceptInfoSnapshot) GetIntercepts

func (x *InterceptInfoSnapshot) GetIntercepts() []*InterceptInfo

func (*InterceptInfoSnapshot) ProtoMessage

func (*InterceptInfoSnapshot) ProtoMessage()

func (*InterceptInfoSnapshot) ProtoReflect

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

func (*InterceptInfoSnapshot) Reset

func (x *InterceptInfoSnapshot) Reset()

func (*InterceptInfoSnapshot) String

func (x *InterceptInfoSnapshot) String() string

type InterceptSpec

type InterceptSpec struct {

	// A human-friendly name for this intercept.  This is usally the
	// same as the agent name below; the name/namespace of the
	// Deployment, but it could be something else.  It is invalid for
	// the same client to attempt to create multiple intercepts with the
	// same name.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Same as ClientInfo.Name; "user@hostname".
	Client string `protobuf:"bytes,2,opt,name=client,proto3" json:"client,omitempty"`
	// Same as AgentInfo.Name of the Deployment.
	Agent string `protobuf:"bytes,3,opt,name=agent,proto3" json:"agent,omitempty"`
	// Same as AgentInfo.Namespace of the Deployment
	Namespace string `protobuf:"bytes,8,opt,name=namespace,proto3" json:"namespace,omitempty"`
	// How to decide which subset of requests to that agent to intercept.
	Mechanism string `protobuf:"bytes,4,opt,name=mechanism,proto3" json:"mechanism,omitempty"`
	// Additional mechanism-specific arguments.  This is passed as list
	// of CLI-style --flags.  See the documentation for
	// github.com/telepresenceio/telepresence/v2/pkg/client/cli/extensions
	// for more information about writing an extension descriptor file
	// to control what these values are.
	MechanismArgs []string `protobuf:"bytes,9,rep,name=mechanism_args,json=mechanismArgs,proto3" json:"mechanism_args,omitempty"`
	TargetHost    string   `protobuf:"bytes,6,opt,name=target_host,json=targetHost,proto3" json:"target_host,omitempty"`
	TargetPort    int32    `protobuf:"varint,7,opt,name=target_port,json=targetPort,proto3" json:"target_port,omitempty"`
	// Name of ther service port that is being intercepted
	ServicePortName string `protobuf:"bytes,10,opt,name=service_port_name,json=servicePortName,proto3" json:"service_port_name,omitempty"`
	// Path to where the intercepted volumes were mounted locally
	MountPoint string `protobuf:"bytes,11,opt,name=mount_point,json=mountPoint,proto3" json:"mount_point,omitempty"`
	// .uid.metadata of service associated with intercept
	ServiceUid string `protobuf:"bytes,12,opt,name=service_uid,json=serviceUid,proto3" json:"service_uid,omitempty"`
	// contains filtered or unexported fields
}

func (*InterceptSpec) Descriptor deprecated

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

Deprecated: Use InterceptSpec.ProtoReflect.Descriptor instead.

func (*InterceptSpec) GetAgent

func (x *InterceptSpec) GetAgent() string

func (*InterceptSpec) GetClient

func (x *InterceptSpec) GetClient() string

func (*InterceptSpec) GetMechanism

func (x *InterceptSpec) GetMechanism() string

func (*InterceptSpec) GetMechanismArgs

func (x *InterceptSpec) GetMechanismArgs() []string

func (*InterceptSpec) GetMountPoint

func (x *InterceptSpec) GetMountPoint() string

func (*InterceptSpec) GetName

func (x *InterceptSpec) GetName() string

func (*InterceptSpec) GetNamespace

func (x *InterceptSpec) GetNamespace() string

func (*InterceptSpec) GetServicePortName

func (x *InterceptSpec) GetServicePortName() string

func (*InterceptSpec) GetServiceUid added in v2.1.2

func (x *InterceptSpec) GetServiceUid() string

func (*InterceptSpec) GetTargetHost

func (x *InterceptSpec) GetTargetHost() string

func (*InterceptSpec) GetTargetPort

func (x *InterceptSpec) GetTargetPort() int32

func (*InterceptSpec) ProtoMessage

func (*InterceptSpec) ProtoMessage()

func (*InterceptSpec) ProtoReflect

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

func (*InterceptSpec) Reset

func (x *InterceptSpec) Reset()

func (*InterceptSpec) String

func (x *InterceptSpec) String() string

type ManagerClient

type ManagerClient interface {
	// Version returns the version information of the Manager.
	Version(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*VersionInfo2, error)
	// ArriveAsClient establishes a session between a client and the Manager.
	ArriveAsClient(ctx context.Context, in *ClientInfo, opts ...grpc.CallOption) (*SessionInfo, error)
	// ArriveAsAgent establishes a session between an agent and the Manager.
	ArriveAsAgent(ctx context.Context, in *AgentInfo, opts ...grpc.CallOption) (*SessionInfo, error)
	// Remain indicates that the session is still valid, and potentially
	// updates the auth token for the session.
	Remain(ctx context.Context, in *RemainRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	// Depart terminates a session.
	Depart(ctx context.Context, in *SessionInfo, opts ...grpc.CallOption) (*empty.Empty, error)
	// WatchAgents notifies a client of the set of known Agents.
	//
	// A session ID is required; if no session ID is given then the call
	// returns immediately, having not deliverd any snapshots.
	WatchAgents(ctx context.Context, in *SessionInfo, opts ...grpc.CallOption) (Manager_WatchAgentsClient, error)
	// WatchIntercepts notifies a client or agent of the set of intercepts
	// relevant to that client or agent.
	//
	// If a session ID is given, then only intercepts associated with
	// that session are watched.  If no session ID is given, then all
	// intercepts are watched.
	WatchIntercepts(ctx context.Context, in *SessionInfo, opts ...grpc.CallOption) (Manager_WatchInterceptsClient, error)
	// CreateIntercept lets a client create an intercept.  It will be
	// created in the "WATING" disposition, and it will remain in that
	// state until the Agent (the app-sidecar) calls ReviewIntercept()
	// to transition it to the "ACTIVE" disposition (or one of the error
	// dispositions).
	CreateIntercept(ctx context.Context, in *CreateInterceptRequest, opts ...grpc.CallOption) (*InterceptInfo, error)
	// RemoveIntercept lets a client remove an intercept.
	RemoveIntercept(ctx context.Context, in *RemoveInterceptRequest2, opts ...grpc.CallOption) (*empty.Empty, error)
	UpdateIntercept(ctx context.Context, in *UpdateInterceptRequest, opts ...grpc.CallOption) (*InterceptInfo, error)
	// ReviewIntercept lets an agent approve or reject an intercept by
	// changing the disposition from "WATING" to "ACTIVE" or to an
	// error, and setting a human-readable status message.
	ReviewIntercept(ctx context.Context, in *ReviewInterceptRequest, opts ...grpc.CallOption) (*empty.Empty, error)
}

ManagerClient is the client API for Manager 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.

func NewManagerClient

func NewManagerClient(cc grpc.ClientConnInterface) ManagerClient

type ManagerProxyClient

type ManagerProxyClient interface {
	// The first argument chunk must be an "intercept_id"; after that no
	// chunk may be an intercept_id.  System A calls this when it
	// recieves a connection to "XYZ.preview.edgestack.me", and that
	// domain belongs to an intercept that belongs to this manager.
	HandleConnection(ctx context.Context, opts ...grpc.CallOption) (ManagerProxy_HandleConnectionClient, error)
}

ManagerProxyClient is the client API for ManagerProxy 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.

type ManagerProxyServer

type ManagerProxyServer interface {
	// The first argument chunk must be an "intercept_id"; after that no
	// chunk may be an intercept_id.  System A calls this when it
	// recieves a connection to "XYZ.preview.edgestack.me", and that
	// domain belongs to an intercept that belongs to this manager.
	HandleConnection(ManagerProxy_HandleConnectionServer) error
	// contains filtered or unexported methods
}

ManagerProxyServer is the server API for ManagerProxy service. All implementations must embed UnimplementedManagerProxyServer for forward compatibility

type ManagerProxy_HandleConnectionClient

type ManagerProxy_HandleConnectionClient interface {
	Send(*ConnectionChunk) error
	Recv() (*ConnectionChunk, error)
	grpc.ClientStream
}

type ManagerProxy_HandleConnectionServer

type ManagerProxy_HandleConnectionServer interface {
	Send(*ConnectionChunk) error
	Recv() (*ConnectionChunk, error)
	grpc.ServerStream
}

type ManagerServer

type ManagerServer interface {
	// Version returns the version information of the Manager.
	Version(context.Context, *empty.Empty) (*VersionInfo2, error)
	// ArriveAsClient establishes a session between a client and the Manager.
	ArriveAsClient(context.Context, *ClientInfo) (*SessionInfo, error)
	// ArriveAsAgent establishes a session between an agent and the Manager.
	ArriveAsAgent(context.Context, *AgentInfo) (*SessionInfo, error)
	// Remain indicates that the session is still valid, and potentially
	// updates the auth token for the session.
	Remain(context.Context, *RemainRequest) (*empty.Empty, error)
	// Depart terminates a session.
	Depart(context.Context, *SessionInfo) (*empty.Empty, error)
	// WatchAgents notifies a client of the set of known Agents.
	//
	// A session ID is required; if no session ID is given then the call
	// returns immediately, having not deliverd any snapshots.
	WatchAgents(*SessionInfo, Manager_WatchAgentsServer) error
	// WatchIntercepts notifies a client or agent of the set of intercepts
	// relevant to that client or agent.
	//
	// If a session ID is given, then only intercepts associated with
	// that session are watched.  If no session ID is given, then all
	// intercepts are watched.
	WatchIntercepts(*SessionInfo, Manager_WatchInterceptsServer) error
	// CreateIntercept lets a client create an intercept.  It will be
	// created in the "WATING" disposition, and it will remain in that
	// state until the Agent (the app-sidecar) calls ReviewIntercept()
	// to transition it to the "ACTIVE" disposition (or one of the error
	// dispositions).
	CreateIntercept(context.Context, *CreateInterceptRequest) (*InterceptInfo, error)
	// RemoveIntercept lets a client remove an intercept.
	RemoveIntercept(context.Context, *RemoveInterceptRequest2) (*empty.Empty, error)
	UpdateIntercept(context.Context, *UpdateInterceptRequest) (*InterceptInfo, error)
	// ReviewIntercept lets an agent approve or reject an intercept by
	// changing the disposition from "WATING" to "ACTIVE" or to an
	// error, and setting a human-readable status message.
	ReviewIntercept(context.Context, *ReviewInterceptRequest) (*empty.Empty, error)
	// contains filtered or unexported methods
}

ManagerServer is the server API for Manager service. All implementations must embed UnimplementedManagerServer for forward compatibility

type Manager_WatchAgentsClient

type Manager_WatchAgentsClient interface {
	Recv() (*AgentInfoSnapshot, error)
	grpc.ClientStream
}

type Manager_WatchAgentsServer

type Manager_WatchAgentsServer interface {
	Send(*AgentInfoSnapshot) error
	grpc.ServerStream
}

type Manager_WatchInterceptsClient

type Manager_WatchInterceptsClient interface {
	Recv() (*InterceptInfoSnapshot, error)
	grpc.ClientStream
}

type Manager_WatchInterceptsServer

type Manager_WatchInterceptsServer interface {
	Send(*InterceptInfoSnapshot) error
	grpc.ServerStream
}

type PreviewSpec

type PreviewSpec struct {
	Ingress       *IngressInfo `protobuf:"bytes,1,opt,name=ingress,proto3" json:"ingress,omitempty"`
	DisplayBanner bool         `protobuf:"varint,2,opt,name=display_banner,json=displayBanner,proto3" json:"display_banner,omitempty"`
	// contains filtered or unexported fields
}

func (*PreviewSpec) Descriptor deprecated

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

Deprecated: Use PreviewSpec.ProtoReflect.Descriptor instead.

func (*PreviewSpec) GetDisplayBanner

func (x *PreviewSpec) GetDisplayBanner() bool

func (*PreviewSpec) GetIngress

func (x *PreviewSpec) GetIngress() *IngressInfo

func (*PreviewSpec) ProtoMessage

func (*PreviewSpec) ProtoMessage()

func (*PreviewSpec) ProtoReflect

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

func (*PreviewSpec) Reset

func (x *PreviewSpec) Reset()

func (*PreviewSpec) String

func (x *PreviewSpec) String() string

type RemainRequest

type RemainRequest struct {
	Session     *SessionInfo `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
	BearerToken string       `protobuf:"bytes,2,opt,name=bearer_token,json=bearerToken,proto3" json:"bearer_token,omitempty"`
	// contains filtered or unexported fields
}

func (*RemainRequest) Descriptor deprecated

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

Deprecated: Use RemainRequest.ProtoReflect.Descriptor instead.

func (*RemainRequest) GetBearerToken

func (x *RemainRequest) GetBearerToken() string

func (*RemainRequest) GetSession

func (x *RemainRequest) GetSession() *SessionInfo

func (*RemainRequest) ProtoMessage

func (*RemainRequest) ProtoMessage()

func (*RemainRequest) ProtoReflect

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

func (*RemainRequest) Reset

func (x *RemainRequest) Reset()

func (*RemainRequest) String

func (x *RemainRequest) String() string

type RemoveInterceptRequest2

type RemoveInterceptRequest2 struct {
	Session *SessionInfo `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
	Name    string       `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

func (*RemoveInterceptRequest2) Descriptor deprecated

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

Deprecated: Use RemoveInterceptRequest2.ProtoReflect.Descriptor instead.

func (*RemoveInterceptRequest2) GetName

func (x *RemoveInterceptRequest2) GetName() string

func (*RemoveInterceptRequest2) GetSession

func (x *RemoveInterceptRequest2) GetSession() *SessionInfo

func (*RemoveInterceptRequest2) ProtoMessage

func (*RemoveInterceptRequest2) ProtoMessage()

func (*RemoveInterceptRequest2) ProtoReflect

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

func (*RemoveInterceptRequest2) Reset

func (x *RemoveInterceptRequest2) Reset()

func (*RemoveInterceptRequest2) String

func (x *RemoveInterceptRequest2) String() string

type ReviewInterceptRequest

type ReviewInterceptRequest struct {
	Session     *SessionInfo             `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
	Id          string                   `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	Disposition InterceptDispositionType `` /* 127-byte string literal not displayed */
	Message     string                   `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"`
	// pod name and ssh port to use when doing sshfs mounts
	PodName string `protobuf:"bytes,5,opt,name=pod_name,json=podName,proto3" json:"pod_name,omitempty"`
	SshPort int32  `protobuf:"varint,6,opt,name=ssh_port,json=sshPort,proto3" json:"ssh_port,omitempty"`
	// A human-friendly description of what the
	// InterceptSpec.mechanism_args say.
	MechanismArgsDesc string `protobuf:"bytes,7,opt,name=mechanism_args_desc,json=mechanismArgsDesc,proto3" json:"mechanism_args_desc,omitempty"`
	// contains filtered or unexported fields
}

func (*ReviewInterceptRequest) Descriptor deprecated

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

Deprecated: Use ReviewInterceptRequest.ProtoReflect.Descriptor instead.

func (*ReviewInterceptRequest) GetDisposition

func (*ReviewInterceptRequest) GetId

func (x *ReviewInterceptRequest) GetId() string

func (*ReviewInterceptRequest) GetMechanismArgsDesc

func (x *ReviewInterceptRequest) GetMechanismArgsDesc() string

func (*ReviewInterceptRequest) GetMessage

func (x *ReviewInterceptRequest) GetMessage() string

func (*ReviewInterceptRequest) GetPodName

func (x *ReviewInterceptRequest) GetPodName() string

func (*ReviewInterceptRequest) GetSession

func (x *ReviewInterceptRequest) GetSession() *SessionInfo

func (*ReviewInterceptRequest) GetSshPort

func (x *ReviewInterceptRequest) GetSshPort() int32

func (*ReviewInterceptRequest) ProtoMessage

func (*ReviewInterceptRequest) ProtoMessage()

func (*ReviewInterceptRequest) ProtoReflect

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

func (*ReviewInterceptRequest) Reset

func (x *ReviewInterceptRequest) Reset()

func (*ReviewInterceptRequest) String

func (x *ReviewInterceptRequest) String() string

type SessionInfo

type SessionInfo struct {
	SessionId string `protobuf:"bytes,1,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
	// contains filtered or unexported fields
}

func (*SessionInfo) Descriptor deprecated

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

Deprecated: Use SessionInfo.ProtoReflect.Descriptor instead.

func (*SessionInfo) GetSessionId

func (x *SessionInfo) GetSessionId() string

func (*SessionInfo) ProtoMessage

func (*SessionInfo) ProtoMessage()

func (*SessionInfo) ProtoReflect

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

func (*SessionInfo) Reset

func (x *SessionInfo) Reset()

func (*SessionInfo) String

func (x *SessionInfo) String() string

type UnimplementedManagerProxyServer

type UnimplementedManagerProxyServer struct {
}

UnimplementedManagerProxyServer must be embedded to have forward compatible implementations.

func (UnimplementedManagerProxyServer) HandleConnection

type UnimplementedManagerServer

type UnimplementedManagerServer struct {
}

UnimplementedManagerServer must be embedded to have forward compatible implementations.

func (UnimplementedManagerServer) ArriveAsAgent

func (UnimplementedManagerServer) ArriveAsClient

func (UnimplementedManagerServer) CreateIntercept

func (UnimplementedManagerServer) Depart

func (UnimplementedManagerServer) Remain

func (UnimplementedManagerServer) RemoveIntercept

func (UnimplementedManagerServer) ReviewIntercept

func (UnimplementedManagerServer) UpdateIntercept

func (UnimplementedManagerServer) Version

func (UnimplementedManagerServer) WatchAgents

func (UnimplementedManagerServer) WatchIntercepts

type UnsafeManagerProxyServer

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

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

type UnsafeManagerServer

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

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

type UpdateInterceptRequest

type UpdateInterceptRequest struct {
	Session *SessionInfo `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
	Name    string       `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// Types that are assignable to PreviewDomainAction:
	//	*UpdateInterceptRequest_AddPreviewDomain
	//	*UpdateInterceptRequest_RemovePreviewDomain
	PreviewDomainAction isUpdateInterceptRequest_PreviewDomainAction `protobuf_oneof:"preview_domain_action"`
	// contains filtered or unexported fields
}

func (*UpdateInterceptRequest) Descriptor deprecated

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

Deprecated: Use UpdateInterceptRequest.ProtoReflect.Descriptor instead.

func (*UpdateInterceptRequest) GetAddPreviewDomain

func (x *UpdateInterceptRequest) GetAddPreviewDomain() *PreviewSpec

func (*UpdateInterceptRequest) GetName

func (x *UpdateInterceptRequest) GetName() string

func (*UpdateInterceptRequest) GetPreviewDomainAction

func (m *UpdateInterceptRequest) GetPreviewDomainAction() isUpdateInterceptRequest_PreviewDomainAction

func (*UpdateInterceptRequest) GetRemovePreviewDomain

func (x *UpdateInterceptRequest) GetRemovePreviewDomain() bool

func (*UpdateInterceptRequest) GetSession

func (x *UpdateInterceptRequest) GetSession() *SessionInfo

func (*UpdateInterceptRequest) ProtoMessage

func (*UpdateInterceptRequest) ProtoMessage()

func (*UpdateInterceptRequest) ProtoReflect

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

func (*UpdateInterceptRequest) Reset

func (x *UpdateInterceptRequest) Reset()

func (*UpdateInterceptRequest) String

func (x *UpdateInterceptRequest) String() string

type UpdateInterceptRequest_AddPreviewDomain

type UpdateInterceptRequest_AddPreviewDomain struct {
	AddPreviewDomain *PreviewSpec `protobuf:"bytes,5,opt,name=add_preview_domain,json=addPreviewDomain,proto3,oneof"`
}

type UpdateInterceptRequest_RemovePreviewDomain

type UpdateInterceptRequest_RemovePreviewDomain struct {
	RemovePreviewDomain bool `protobuf:"varint,4,opt,name=remove_preview_domain,json=removePreviewDomain,proto3,oneof"`
}

type VersionInfo2

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

VersionInfo2 is different than telepresence.common.VersionInfo in that it does not contain an 'api_version' integer.

func (*VersionInfo2) Descriptor deprecated

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

Deprecated: Use VersionInfo2.ProtoReflect.Descriptor instead.

func (*VersionInfo2) GetVersion

func (x *VersionInfo2) GetVersion() string

func (*VersionInfo2) ProtoMessage

func (*VersionInfo2) ProtoMessage()

func (*VersionInfo2) ProtoReflect

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

func (*VersionInfo2) Reset

func (x *VersionInfo2) Reset()

func (*VersionInfo2) String

func (x *VersionInfo2) String() string

Jump to

Keyboard shortcuts

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