Get desktop application:
View/edit binary Protocol Buffers messages
The Connector service is responsible for connecting to the traffic manager and manage intercepts. It can only run when a Daemon is running.
Returns version information from the Connector
Returns version information from the Root Daemon
Returns version information from the Traffic Manager
Returns the fully qualified image name of the traffic-agent that the agent-injector is configured to inject.
GetIntercept gets info from intercept name
Connects to the cluster and connects the laptop's network (via the daemon process) to the cluster's network. A result code of UNSPECIFIED indicates that the connection was successfully initiated; if already connected, then either ALREADY_CONNECTED or MUST_RESTART is returned, based on whether the current connection is in agreement with the ConnectionRequest.
ConnectRequest contains the information needed to connect ot a cluster.
The kubernetes flags from the telepresence connect command
The kubernetes flags used by a containerized daemon
protolint:disable:this REPEATED_FIELD_NAMES_PLURALIZED
protolint:disable:this REPEATED_FIELD_NAMES_PLURALIZED
Kubeconfig YAML, if not to be loaded from file.
Disconnects the cluster
GetClusterSubnets gets the outbound info that has been set on daemon
ClusterSubnets are the cluster subnets that the daemon has detected that need to be routed
pod_subnets are the subnets that pods go into
svc_subnets are subnets that services go into
Status returns the status of the current connection or DISCONNECTED if no connection has been established.
Queries the connector whether it is possible to create the given intercept.
Starts an Ingest session.
Desired mount point. Can be set to "true" to generated temporary mount point, "false" to prevent that mounting takes place, an explicit path to use for the mount or an empty string in combination with a non-zero local_mount_port.
Local port where an sftp client can connect when doing docker volume mounts.
Extra ports that will be forwarded from the intercepting client's localhost to the intercepted pod. Each entry is a string containing a port number followed by an optional "/TCP" or "/UDP".
Get info about an ongoing Ingest.
Ends an Ingest session.
Adds an intercept to a workload. Requires having already called Connect.
Deactivates and removes an existent workload intercept. Requires having already called Connect.
Uninstalls traffic-agents from the cluster. Requires having already called Connect.
Namespace of agents to remove.
Returns a list of workloads and their current intercept status. Requires having already called Connect.
Namespace to list.
Watch all workloads in the mapped namespaces
Namespace to watch.
SetLogLevel will temporarily change the log-level of the traffic-manager, traffic-agent, and user and root daemons.
The time that this log-level will be in effect before falling back to the configured log-level.
Quits (terminates) the connector process.
GatherLogs will acquire logs for the various Telepresence components in kubernetes (pending the request) and return them to the caller
Whether or not logs from the traffic-manager are desired.
Whether or not to get the pod yaml deployed to the cluster.
The traffic-agent(s) logs are desired from. Can be `all`, `False`, or substring to filter based on pod names.
Directory that the logs will be exported to
General error that isn't associated with a pod such as failing to list the pods.
pod_info contains one entry per created file name name. The value is either the string "ok" indicating that the file exists, or an error string with info why it could not be created.
AddInterceptor tells the connector that a given process is serving a specific intercept. The connector must kill this process when the intercept ends
RemoveInterceptor removes a previously added interceptor
GetNamespaces gets the mapped namespaces with an optional prefix
GetKnownWorkloadKinds returns the known workload kinds
RemoteMountAvailability checks if remote mounts are possible using the given mount type and returns an error if its not.
GetConfig returns the current configuration
SetDNSExcludes sets the excludes field of DNSConfig.
SetDNSMappings sets the Mappings field of DNSConfig.
GetAgentConfig returns the agent configuration for a specific workload.
ManagerProxy is a small subset of the traffic-manager API that the user daemon makes available to the root daemon. This API is intended for the root daemon only and should not be used by other external processes.
Version returns the version information of the Manager.
GetClientConfig returns the config that connected clients should use for this manager.
EnsureAgent ensures that an agent is injected to the pods of a workload
WatchClusterInfo returns information needed when establishing connectivity to the cluster.
LookupDNS performs a DNS lookup in the cluster. If the caller has intercepts active, the lookup will be performed from the intercepted pods.
A Tunnel represents one single connection where the client or traffic-agent represents one end (the client-side) and the traffic-manager represents the other (the server side). The first message that a client sends when the tunnel is established is will always contain the session ID, connection ID, and timeouts used by the dialer endpoints.
Used as response type in: Connector.Connect, Connector.Status
only set for some error codes, see above
The name of the connection
The kubernetes flags from the telepresence connect command when the connection was established
the namespace that the connector is connected to.
Used in:
success
not authorized to connect
not logged in
success
would-be-success, but kubeconfig has changed
failure: Connect has not yet been called (only returned from Status)
failure: error parsing kubeconfig or talking to the cluster; error_text and error_category are set
failure: error talking to the in-cluster traffic-manager; error_text and error_category are set
failure: error talking to the on-laptop root daemon; error_text and error_category are set
Used as request type in: Connector.CanIntercept, Connector.CreateIntercept
No need to set spec.client; the connector will fill that in for you.
Used as request type in: Connector.GetIngest, Connector.LeaveIngest
Used as field type in:
Name of the workload that holds the desire container.
The name of the desired container. Must be set when the workload contains more than one container candidate.
Used as response type in: Connector.GetIngest, Connector.Ingest, Connector.LeaveIngest
Used as field type in:
,Name of ingested workload
Name of ingested container
The directory where the intercept mounts can be found in the agent.
The IP of the ingested pod.
The port where the SFTP server listens.
The port where the FTP server listens.
The environment of the ingested container
The directory where the client mounts the remote mount_point.
Map of mount path -> MountPolicy
Used as response type in: Connector.CanIntercept, Connector.CreateIntercept, Connector.RemoveIntercept
The service uid associated with the workload intercepted
The kind of workload in this intercept
Used as request type in: Connector.AddInterceptor, Connector.RemoveInterceptor
The ID of the intercept that is served by this interceptor process
The pid of the interceptor process
Name or ID of container, in case the intercept handler runs in Docker
Bitmap filter
Used in:
Used in:
applies only to the local daemon processes
applies only to traffic-manager and traffic-agents
Used in:
Uninstalls an agent from the named workloads
Uninstalls all agents
WorkloadInfo contains information about a workload https://kubernetes.io/docs/concepts/workloads/
Used in:
Name of workload
Namespace of workload
Reason why workload cannot be intercepted, or empty if it can.
InterceptInfo reported from the traffic manager in case the workload is currently intercepted
IngestInfo reported from the traffic manager in case the workload is currently intercepted
Workload Resource type (e.g. Deployment, ReplicaSet, StatefulSet, Rollout)
Used as response type in: Connector.List, Connector.WatchWorkloads