coderutil

package
v1.39.1 Latest Latest
Warning

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

Go to latest
Published: Jan 31, 2023 License: GPL-3.0 Imports: 8 Imported by: 0

Documentation

Overview

Package coderutil providers utilities for high-level operations on coder-sdk entities.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultWorkspaceProvider added in v1.17.0

func DefaultWorkspaceProvider(ctx context.Context, c coder.Client) (*coder.KubernetesProvider, error)

DefaultWorkspaceProvider returns the default provider with which to create workspaces.

func DialWorkspaceWsep added in v1.20.0

func DialWorkspaceWsep(ctx context.Context, client coder.Client, workspace *coder.Workspace) (*websocket.Conn, error)

DialWorkspaceWsep dials the executor endpoint using the https://github.com/cdr/wsep message protocol. The proper workspace provider envproxy access URL is used.

func MakeImageMap added in v1.17.2

func MakeImageMap(ctx context.Context, client coder.Client, workspaces []coder.Workspace) (map[string]*coder.Image, error)

MakeImageMap fetches all image entities specified in the slice of workspaces, then places them into an ID map.

func MakeUserMap added in v1.30.4

func MakeUserMap(ctx context.Context, client coder.Client, workspaces []coder.Workspace) (map[string]*coder.User, error)

func ProviderByName added in v1.17.0

func ProviderByName(ctx context.Context, client coder.Client, name string) (*coder.KubernetesProvider, error)

ProviderByName searches linearly for a workspace provider by its name.

Types

type WorkspaceTable added in v1.20.0

type WorkspaceTable struct {
	Name     string  `table:"Name" json:"name"`
	Image    string  `table:"Image" json:"image"`
	CPU      float32 `table:"vCPU" json:"cpu"`
	MemoryGB float32 `table:"MemoryGB" json:"memory_gb"`
	DiskGB   int     `table:"DiskGB" json:"disk_gb"`
	Status   string  `table:"Status" json:"status"`
	Provider string  `table:"Provider" json:"provider"`
	CVM      bool    `table:"CVM" json:"cvm"`
	Username string  `table:"Username" json:"username"`
}

WorkspaceTable defines an Workspace-like structure with associated entities composed in a human readable form.

func WorkspacesHumanTable added in v1.20.0

func WorkspacesHumanTable(ctx context.Context, client coder.Client, workspaces []coder.Workspace) ([]WorkspaceTable, error)

WorkspacesHumanTable performs the composition of each Workspace with its associated ProviderName and ImageRepo.

type WorkspaceWithWorkspaceProvider added in v1.20.0

type WorkspaceWithWorkspaceProvider struct {
	Workspace         coder.Workspace
	WorkspaceProvider coder.KubernetesProvider
}

WorkspaceWithWorkspaceProvider composes an Workspace entity with its associated WorkspaceProvider.

func WorkspacesWithProvider added in v1.20.0

func WorkspacesWithProvider(ctx context.Context, client coder.Client, workspaces []coder.Workspace) ([]WorkspaceWithWorkspaceProvider, error)

WorkspacesWithProvider performs the composition of each Workspace with its associated WorkspaceProvider.

Jump to

Keyboard shortcuts

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