daemon

package
v0.7.0-alpha.13 Latest Latest
Warning

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

Go to latest
Published: Mar 18, 2025 License: MPL-2.0 Imports: 48 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Dial

func Dial(addr string) (net.Conn, error)

func GetSocketAddr

func GetSocketAddr(preferredDir, providerName string) string

func IsAccessKeyNotFound

func IsAccessKeyNotFound(err error) bool

func IsDaemonNotAvailableError

func IsDaemonNotAvailableError(err error) bool

Types

type ConnectionType

type ConnectionType string
const (
	ConnectionTypeDirect ConnectionType = "direct"
	ConnectionTypeDERP   ConnectionType = "DERP"
)

type Daemon

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

func Init

func Init(ctx context.Context, config InitConfig) (*Daemon, error)

func (*Daemon) Listen

func (d *Daemon) Listen(ln net.Listener) error

func (*Daemon) Start

func (d *Daemon) Start(ctx context.Context) error

type DaemonNotAvailableError

type DaemonNotAvailableError struct {
	Err      error
	Provider string
}

func (*DaemonNotAvailableError) Error

func (e *DaemonNotAvailableError) Error() string

func (*DaemonNotAvailableError) Unwrap

func (e *DaemonNotAvailableError) Unwrap() error

type DaemonState

type DaemonState string
var (
	DaemonStateRunning DaemonState = "running"
	DaemonStateStopped DaemonState = "stopped"
	DaemonStatePending DaemonState = "pending"
)

type DebugStatus

type DebugStatus struct {
	Tailscale *ipnstate.Status   `json:"tailscale,omitempty"`
	Self      *managementv1.Self `json:"self,omitempty"`
}

type InitConfig

type InitConfig struct {
	RootDir        string
	Context        string
	ProviderName   string
	UserName       string
	PlatformClient client.Client

	Debug bool
}

type LocalClient

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

func NewLocalClient

func NewLocalClient(daemonFolder, provider string) *LocalClient

func (*LocalClient) CreateWorkspace

func (*LocalClient) GetWorkspace

func (*LocalClient) ListWorkspaces

func (c *LocalClient) ListWorkspaces(ctx context.Context, ownerFilter platform.OwnerFilter) ([]managementv1.DevPodWorkspaceInstance, error)

func (*LocalClient) Shutdown

func (c *LocalClient) Shutdown(ctx context.Context) error

func (*LocalClient) Status

func (c *LocalClient) Status(ctx context.Context, debug bool) (Status, error)

func (*LocalClient) UpdateWorkspace

type ProWorkspaceInstance

type ProWorkspaceInstance struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   managementv1.DevPodWorkspaceInstanceSpec `json:"spec,omitempty"`
	Status ProWorkspaceInstanceStatus               `json:"status,omitempty"`
}

type ProWorkspaceInstanceStatus

type ProWorkspaceInstanceStatus struct {
	managementv1.DevPodWorkspaceInstanceStatus `json:",inline"`

	Source  *provider.WorkspaceSource       `json:"source,omitempty"`
	IDE     *provider.WorkspaceIDEConfig    `json:"ide,omitempty"`
	Metrics *WorkspaceNetworkMetricsSummary `json:"metrics,omitempty"`
}

type Status

type Status struct {
	State         DaemonState  `json:"state,omitempty"`
	LoginRequired bool         `json:"loginRequired,omitempty"`
	Debug         *DebugStatus `json:"debug,omitempty"`
}

type VersionInfo

type VersionInfo struct {
	ServerVersion string `json:"serverVersion,omitempty"`
}

type WorkspaceNetworkMetrics

type WorkspaceNetworkMetrics struct {
	LatencyMs      float64        `json:"latencyMs,omitempty"`
	ConnectionType ConnectionType `json:"connectionType,omitempty"`
	DERPRegion     string         `json:"derpRegion,omitempty"`
	Timestamp      int64          `json:"timestamp,omitempty"`
}

type WorkspaceNetworkMetricsSummary

type WorkspaceNetworkMetricsSummary struct {
	LatencyMs          float64        `json:"latencyMs,omitempty"`
	LastConnectionType ConnectionType `json:"connectionType,omitempty"`
	LastDERPRegion     string         `json:"derpRegion,omitempty"`
}

Jump to

Keyboard shortcuts

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