apiv1

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApiRoutes

func ApiRoutes() chi.Router

func CallUpdateAgentStatus

func CallUpdateAgentStatus(client *rest.RESTClient, spaceId string, hasCodeServer bool, sshPort int, vncHttpPort int, hasTerminal bool, tcpPorts []int, httpPorts []int) (int, error)

func HandleAgentStatus

func HandleAgentStatus(w http.ResponseWriter, r *http.Request)

func HandleAuthorization

func HandleAuthorization(w http.ResponseWriter, r *http.Request)

func HandleCreateGroup

func HandleCreateGroup(w http.ResponseWriter, r *http.Request)

func HandleCreateSpace

func HandleCreateSpace(w http.ResponseWriter, r *http.Request)

func HandleCreateTemplate

func HandleCreateTemplate(w http.ResponseWriter, r *http.Request)

func HandleCreateTemplateVar

func HandleCreateTemplateVar(w http.ResponseWriter, r *http.Request)

func HandleCreateToken

func HandleCreateToken(w http.ResponseWriter, r *http.Request)

func HandleCreateUser

func HandleCreateUser(w http.ResponseWriter, r *http.Request)

func HandleCreateVolume

func HandleCreateVolume(w http.ResponseWriter, r *http.Request)

func HandleDeleteGroup

func HandleDeleteGroup(w http.ResponseWriter, r *http.Request)

func HandleDeleteSessions

func HandleDeleteSessions(w http.ResponseWriter, r *http.Request)

func HandleDeleteSpace

func HandleDeleteSpace(w http.ResponseWriter, r *http.Request)

func HandleDeleteTemplate

func HandleDeleteTemplate(w http.ResponseWriter, r *http.Request)

func HandleDeleteTemplateVar

func HandleDeleteTemplateVar(w http.ResponseWriter, r *http.Request)

func HandleDeleteToken

func HandleDeleteToken(w http.ResponseWriter, r *http.Request)

func HandleDeleteUser

func HandleDeleteUser(w http.ResponseWriter, r *http.Request)

func HandleDeleteVolume

func HandleDeleteVolume(w http.ResponseWriter, r *http.Request)

func HandleGetGroup

func HandleGetGroup(w http.ResponseWriter, r *http.Request)

func HandleGetGroups

func HandleGetGroups(w http.ResponseWriter, r *http.Request)

func HandleGetRoles

func HandleGetRoles(w http.ResponseWriter, r *http.Request)

func HandleGetSessions

func HandleGetSessions(w http.ResponseWriter, r *http.Request)

func HandleGetSpace

func HandleGetSpace(w http.ResponseWriter, r *http.Request)

func HandleGetSpaceServiceState

func HandleGetSpaceServiceState(w http.ResponseWriter, r *http.Request)

func HandleGetSpaces

func HandleGetSpaces(w http.ResponseWriter, r *http.Request)

func HandleGetTemplate

func HandleGetTemplate(w http.ResponseWriter, r *http.Request)

func HandleGetTemplateVar

func HandleGetTemplateVar(w http.ResponseWriter, r *http.Request)

func HandleGetTemplateVars

func HandleGetTemplateVars(w http.ResponseWriter, r *http.Request)

func HandleGetTemplates

func HandleGetTemplates(w http.ResponseWriter, r *http.Request)

func HandleGetTokens

func HandleGetTokens(w http.ResponseWriter, r *http.Request)

func HandleGetUser

func HandleGetUser(w http.ResponseWriter, r *http.Request)

func HandleGetUsers

func HandleGetUsers(w http.ResponseWriter, r *http.Request)

func HandleGetVolume

func HandleGetVolume(w http.ResponseWriter, r *http.Request)

func HandleGetVolumes

func HandleGetVolumes(w http.ResponseWriter, r *http.Request)

func HandleLookup

func HandleLookup(w http.ResponseWriter, r *http.Request)

func HandlePing

func HandlePing(w http.ResponseWriter, r *http.Request)

func HandleRegisterAgent

func HandleRegisterAgent(w http.ResponseWriter, r *http.Request)

func HandleSpaceStart

func HandleSpaceStart(w http.ResponseWriter, r *http.Request)

func HandleSpaceStop

func HandleSpaceStop(w http.ResponseWriter, r *http.Request)

func HandleSpaceStopUsersSpaces

func HandleSpaceStopUsersSpaces(w http.ResponseWriter, r *http.Request)

func HandleUpdateGroup

func HandleUpdateGroup(w http.ResponseWriter, r *http.Request)

func HandleUpdateSpace

func HandleUpdateSpace(w http.ResponseWriter, r *http.Request)

func HandleUpdateTemplate

func HandleUpdateTemplate(w http.ResponseWriter, r *http.Request)

func HandleUpdateTemplateVar

func HandleUpdateTemplateVar(w http.ResponseWriter, r *http.Request)

func HandleUpdateUser

func HandleUpdateUser(w http.ResponseWriter, r *http.Request)

func HandleUpdateVolume

func HandleUpdateVolume(w http.ResponseWriter, r *http.Request)

func HandleVolumeStart

func HandleVolumeStart(w http.ResponseWriter, r *http.Request)

func HandleVolumeStop

func HandleVolumeStop(w http.ResponseWriter, r *http.Request)

Types

type AgentRegisterResponse

type AgentRegisterResponse struct {
	Status      bool   `json:"status"`
	AccessToken string `json:"access_token"`
	ServerURL   string `json:"server_url"`
	SSHKey      string `json:"ssh_key"`
}

func CallRegisterAgent

func CallRegisterAgent(client *rest.RESTClient, spaceId string) (*AgentRegisterResponse, int, error)

type AgentStatusRequest

type AgentStatusRequest struct {
	AgentVersion  string `json:"agent_version"`
	HasCodeServer bool   `json:"has_code_server"`
	SSHPort       int    `json:"ssh_port"`
	VNCHttpPort   int    `json:"vnc_http_port"`
	HasTerminal   bool   `json:"has_terminal"`
	TcpPorts      []int  `json:"tcp_ports"`
	HttpPorts     []int  `json:"http_ports"`
}

type AgentStatusResponse

type AgentStatusResponse struct {
	Status bool `json:"status"`
}

type AuthorizationRequest

type AuthorizationRequest struct {
	Password string `json:"password"`
	Email    string `json:"email"`
}

type CreateTokenRequest

type CreateTokenRequest struct {
	Name string `json:"name"`
}

type ErrorResponse

type ErrorResponse struct {
	Error string `json:"error"`
}

type LookupResponse

type LookupResponse struct {
	Status bool   `json:"status"`
	Host   string `json:"host"`
	Port   string `json:"port"`
}

func CallLookup

func CallLookup(client *rest.RESTClient, service string) (*LookupResponse, int, error)

type PingResponse

type PingResponse struct {
	Status  bool   `json:"status"`
	Version string `json:"version"`
}

func CallPing

func CallPing(client *rest.RESTClient) (PingResponse, int, error)

type SpaceRequest

type SpaceRequest struct {
	Name       string           `json:"name"`
	TemplateId string           `json:"template_id"`
	AgentURL   string           `json:"agent_url"`
	Shell      string           `json:"shell"`
	UserId     string           `json:"user_id"`
	VolumeSize map[string]int64 `json:"volume_size"`
	AltNames   []string         `json:"alt_names"`
}

type SpaceServiceResponse

type SpaceServiceResponse struct {
	Name            string `json:"name"`
	HasCodeServer   bool   `json:"has_code_server"`
	HasSSH          bool   `json:"has_ssh"`
	HasHttpVNC      bool   `json:"has_http_vnc"`
	HasTerminal     bool   `json:"has_terminal"`
	IsDeployed      bool   `json:"is_deployed"`
	TcpPorts        []int  `json:"tcp_ports"`
	HttpPorts       []int  `json:"http_ports"`
	UpdateAvailable bool   `json:"update_available"`
}

type TemplateRequest

type TemplateRequest struct {
	Name        string   `json:"name"`
	Job         string   `json:"job"`
	Description string   `json:"description"`
	Volumes     string   `json:"volumes"`
	Groups      []string `json:"groups"`
}

type TemplateResponse

type TemplateResponse struct {
	Id          string   `json:"template_id"`
	Name        string   `json:"name"`
	Description string   `json:"description"`
	Usage       int      `json:"usage"`
	Deployed    int      `json:"deployed"`
	Groups      []string `json:"groups"`
}

type TemplateVarRequest

type TemplateVarRequest struct {
	Name      string `json:"name"`
	Value     string `json:"value"`
	Protected bool   `json:"protected"`
}

type UserGroupRequest

type UserGroupRequest struct {
	Name string `json:"name"`
}

type UserInfoResponse

type UserInfoResponse struct {
	Id                   string     `json:"user_id"`
	Username             string     `json:"username"`
	Email                string     `json:"email"`
	Roles                []string   `json:"roles"`
	Groups               []string   `json:"groups"`
	Active               bool       `json:"active"`
	MaxSpaces            int        `json:"max_spaces"`
	MaxDiskSpace         int        `json:"max_disk_space"`
	Current              bool       `json:"current"`
	LastLoginAt          *time.Time `json:"last_login_at"`
	NumberSpaces         int        `json:"number_spaces"`
	NumberSpacesDeployed int        `json:"number_spaces_deployed"`
	UsedDiskSpace        int        `json:"used_disk_space"`
}

type UserRequest

type UserRequest struct {
	Username        string   `json:"username"`
	Password        string   `json:"password"`
	ServicePassword string   `json:"service_password"`
	Email           string   `json:"email"`
	Roles           []string `json:"roles"`
	Groups          []string `json:"groups"`
	Active          bool     `json:"active"`
	MaxSpaces       int      `json:"max_spaces"`
	MaxDiskSpace    int      `json:"max_disk_space"`
	SSHPublicKey    string   `json:"ssh_public_key"`
	PreferredShell  string   `json:"preferred_shell"`
	Timezone        string   `json:"timezone"`
}

type VolumeRequest

type VolumeRequest struct {
	Name       string `json:"name"`
	Definition string `json:"definition"`
}

Jump to

Keyboard shortcuts

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