Documentation
¶
Index ¶
- func CloneWorkspacesPath(name string) string
- func CreateWorkspacesPath() string
- func CredentialsWorkspacesPath(name string) string
- func DecodeCloneRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.ClonePayload, error)
- func DecodeCreateRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.CreateWorkspacePayload, error)
- func DecodeCredentialsRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.CredentialsPayload, error)
- func DecodeDeleteRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.DeletePayload, error)
- func DecodeGetRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.GetPayload, error)
- func DecodeListRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.ListPayload, error)
- func DecodeResetRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.ResetPayload, error)
- func DecodeSetGpuProfileRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.SetGpuProfilePayload, error)
- func DecodeStartRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.StartPayload, error)
- func DecodeStopRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.StopPayload, error)
- func DeleteWorkspacesPath(name string) string
- func EncodeCloneError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeCloneResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeCreateError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeCreateResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeCredentialsError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeCredentialsResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeDeleteError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeDeleteResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeGetError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeGetResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeGpuProfilesError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeGpuProfilesResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeListResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeResetError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeResetResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeSetGpuProfileError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeSetGpuProfileResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeStartError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeStartResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func EncodeStopError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeStopResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func GetWorkspacesPath(name string) string
- func GpuProfilesWorkspacesPath() string
- func ListWorkspacesPath() string
- func Mount(mux goahttp.Muxer, h *Server)
- func MountCloneHandler(mux goahttp.Muxer, h http.Handler)
- func MountCreateHandler(mux goahttp.Muxer, h http.Handler)
- func MountCredentialsHandler(mux goahttp.Muxer, h http.Handler)
- func MountDeleteHandler(mux goahttp.Muxer, h http.Handler)
- func MountGetHandler(mux goahttp.Muxer, h http.Handler)
- func MountGpuProfilesHandler(mux goahttp.Muxer, h http.Handler)
- func MountListHandler(mux goahttp.Muxer, h http.Handler)
- func MountResetHandler(mux goahttp.Muxer, h http.Handler)
- func MountSetGpuProfileHandler(mux goahttp.Muxer, h http.Handler)
- func MountStartHandler(mux goahttp.Muxer, h http.Handler)
- func MountStopHandler(mux goahttp.Muxer, h http.Handler)
- func NewCloneHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewClonePayload(body *CloneRequestBody, name string, namespace string) *workspaces.ClonePayload
- func NewCreateHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewCreateWorkspacePayload(body *CreateRequestBody) *workspaces.CreateWorkspacePayload
- func NewCredentialsHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewCredentialsPayload(name string, namespace string) *workspaces.CredentialsPayload
- func NewDeleteHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewDeletePayload(name string, namespace string) *workspaces.DeletePayload
- func NewGetHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewGetPayload(name string, namespace string) *workspaces.GetPayload
- func NewGpuProfilesHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewListHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewListPayload(namespace string) *workspaces.ListPayload
- func NewResetHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewResetPayload(name string, namespace string) *workspaces.ResetPayload
- func NewSetGpuProfileHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewSetGpuProfilePayload(body *SetGpuProfileRequestBody, name string, namespace string) *workspaces.SetGpuProfilePayload
- func NewStartHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewStartPayload(name string, namespace string) *workspaces.StartPayload
- func NewStopHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewStopPayload(name string, namespace string) *workspaces.StopPayload
- func ResetWorkspacesPath(name string) string
- func SetGpuProfileWorkspacesPath(name string) string
- func StartWorkspacesPath(name string) string
- func StopWorkspacesPath(name string) string
- func ValidateCloneRequestBody(body *CloneRequestBody) (err error)
- func ValidateCreateRequestBody(body *CreateRequestBody) (err error)
- func ValidateEnvVarRequestBody(body *EnvVarRequestBody) (err error)
- func ValidateSetGpuProfileRequestBody(body *SetGpuProfileRequestBody) (err error)
- func ValidateTolerationRequestBody(body *TolerationRequestBody) (err error)
- func ValidateVMOptionsRequestBody(body *VMOptionsRequestBody) (err error)
- func ValidateVolumeMountRequestBody(body *VolumeMountRequestBody) (err error)
- func ValidateWorkspaceContainerRequestBody(body *WorkspaceContainerRequestBody) (err error)
- type CloneRequestBody
- type CloneResponseBody
- type ContainerStateResponse
- type ContainerStateResponseBody
- type CreateRequestBody
- type CreateResponseBody
- type CredentialsResponseBody
- type EnvVarRequestBody
- type GetResponseBody
- type GpuProfilesResponseBody
- type ImageRemoteDesktopResponse
- type ImageRemoteDesktopResponseBody
- type ListResponseBody
- type MountPoint
- type ResetResponseBody
- type Server
- type SetGpuProfileRequestBody
- type SetGpuProfileResponseBody
- type StartResponseBody
- type StopResponseBody
- type TolerationRequestBody
- type VMGPUProfileResponse
- type VMGPUProfileResponseBody
- type VMOptionsRequestBody
- type VolumeMountRequestBody
- type VolumeMountResponse
- type VolumeMountResponseBody
- type WorkspaceConditionResponse
- type WorkspaceConditionResponseBody
- type WorkspaceContainerRequestBody
- type WorkspaceResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CloneWorkspacesPath ¶ added in v0.5.0
CloneWorkspacesPath returns the URL path to the workspaces service clone HTTP endpoint.
func CreateWorkspacesPath ¶
func CreateWorkspacesPath() string
CreateWorkspacesPath returns the URL path to the workspaces service create HTTP endpoint.
func CredentialsWorkspacesPath ¶ added in v0.7.0
CredentialsWorkspacesPath returns the URL path to the workspaces service credentials HTTP endpoint.
func DecodeCloneRequest ¶ added in v0.5.0
func DecodeCloneRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.ClonePayload, error)
DecodeCloneRequest returns a decoder for requests sent to the workspaces clone endpoint.
func DecodeCreateRequest ¶
func DecodeCreateRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.CreateWorkspacePayload, error)
DecodeCreateRequest returns a decoder for requests sent to the workspaces create endpoint.
func DecodeCredentialsRequest ¶ added in v0.7.0
func DecodeCredentialsRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.CredentialsPayload, error)
DecodeCredentialsRequest returns a decoder for requests sent to the workspaces credentials endpoint.
func DecodeDeleteRequest ¶
func DecodeDeleteRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.DeletePayload, error)
DecodeDeleteRequest returns a decoder for requests sent to the workspaces delete endpoint.
func DecodeGetRequest ¶
func DecodeGetRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.GetPayload, error)
DecodeGetRequest returns a decoder for requests sent to the workspaces get endpoint.
func DecodeListRequest ¶
func DecodeListRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.ListPayload, error)
DecodeListRequest returns a decoder for requests sent to the workspaces list endpoint.
func DecodeResetRequest ¶ added in v0.4.0
func DecodeResetRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.ResetPayload, error)
DecodeResetRequest returns a decoder for requests sent to the workspaces reset endpoint.
func DecodeSetGpuProfileRequest ¶ added in v0.11.0
func DecodeSetGpuProfileRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.SetGpuProfilePayload, error)
DecodeSetGpuProfileRequest returns a decoder for requests sent to the workspaces set_gpu_profile endpoint.
func DecodeStartRequest ¶
func DecodeStartRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.StartPayload, error)
DecodeStartRequest returns a decoder for requests sent to the workspaces start endpoint.
func DecodeStopRequest ¶
func DecodeStopRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (*workspaces.StopPayload, error)
DecodeStopRequest returns a decoder for requests sent to the workspaces stop endpoint.
func DeleteWorkspacesPath ¶
DeleteWorkspacesPath returns the URL path to the workspaces service delete HTTP endpoint.
func EncodeCloneError ¶ added in v0.5.0
func EncodeCloneError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeCloneError returns an encoder for errors returned by the clone workspaces endpoint.
func EncodeCloneResponse ¶ added in v0.5.0
func EncodeCloneResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeCloneResponse returns an encoder for responses returned by the workspaces clone endpoint.
func EncodeCreateError ¶
func EncodeCreateError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeCreateError returns an encoder for errors returned by the create workspaces endpoint.
func EncodeCreateResponse ¶
func EncodeCreateResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeCreateResponse returns an encoder for responses returned by the workspaces create endpoint.
func EncodeCredentialsError ¶ added in v0.7.0
func EncodeCredentialsError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeCredentialsError returns an encoder for errors returned by the credentials workspaces endpoint.
func EncodeCredentialsResponse ¶ added in v0.7.0
func EncodeCredentialsResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeCredentialsResponse returns an encoder for responses returned by the workspaces credentials endpoint.
func EncodeDeleteError ¶
func EncodeDeleteError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeDeleteError returns an encoder for errors returned by the delete workspaces endpoint.
func EncodeDeleteResponse ¶
func EncodeDeleteResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeDeleteResponse returns an encoder for responses returned by the workspaces delete endpoint.
func EncodeGetError ¶
func EncodeGetError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeGetError returns an encoder for errors returned by the get workspaces endpoint.
func EncodeGetResponse ¶
func EncodeGetResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeGetResponse returns an encoder for responses returned by the workspaces get endpoint.
func EncodeGpuProfilesError ¶ added in v0.11.0
func EncodeGpuProfilesError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeGpuProfilesError returns an encoder for errors returned by the gpu_profiles workspaces endpoint.
func EncodeGpuProfilesResponse ¶ added in v0.11.0
func EncodeGpuProfilesResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeGpuProfilesResponse returns an encoder for responses returned by the workspaces gpu_profiles endpoint.
func EncodeListResponse ¶
func EncodeListResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeListResponse returns an encoder for responses returned by the workspaces list endpoint.
func EncodeResetError ¶ added in v0.4.0
func EncodeResetError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeResetError returns an encoder for errors returned by the reset workspaces endpoint.
func EncodeResetResponse ¶ added in v0.4.0
func EncodeResetResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeResetResponse returns an encoder for responses returned by the workspaces reset endpoint.
func EncodeSetGpuProfileError ¶ added in v0.11.0
func EncodeSetGpuProfileError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeSetGpuProfileError returns an encoder for errors returned by the set_gpu_profile workspaces endpoint.
func EncodeSetGpuProfileResponse ¶ added in v0.11.0
func EncodeSetGpuProfileResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeSetGpuProfileResponse returns an encoder for responses returned by the workspaces set_gpu_profile endpoint.
func EncodeStartError ¶
func EncodeStartError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeStartError returns an encoder for errors returned by the start workspaces endpoint.
func EncodeStartResponse ¶
func EncodeStartResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeStartResponse returns an encoder for responses returned by the workspaces start endpoint.
func EncodeStopError ¶
func EncodeStopError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeStopError returns an encoder for errors returned by the stop workspaces endpoint.
func EncodeStopResponse ¶
func EncodeStopResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeStopResponse returns an encoder for responses returned by the workspaces stop endpoint.
func GetWorkspacesPath ¶
GetWorkspacesPath returns the URL path to the workspaces service get HTTP endpoint.
func GpuProfilesWorkspacesPath ¶ added in v0.11.0
func GpuProfilesWorkspacesPath() string
GpuProfilesWorkspacesPath returns the URL path to the workspaces service gpu_profiles HTTP endpoint.
func ListWorkspacesPath ¶
func ListWorkspacesPath() string
ListWorkspacesPath returns the URL path to the workspaces service list HTTP endpoint.
func MountCloneHandler ¶ added in v0.5.0
MountCloneHandler configures the mux to serve the "workspaces" service "clone" endpoint.
func MountCreateHandler ¶
MountCreateHandler configures the mux to serve the "workspaces" service "create" endpoint.
func MountCredentialsHandler ¶ added in v0.7.0
MountCredentialsHandler configures the mux to serve the "workspaces" service "credentials" endpoint.
func MountDeleteHandler ¶
MountDeleteHandler configures the mux to serve the "workspaces" service "delete" endpoint.
func MountGetHandler ¶
MountGetHandler configures the mux to serve the "workspaces" service "get" endpoint.
func MountGpuProfilesHandler ¶ added in v0.11.0
MountGpuProfilesHandler configures the mux to serve the "workspaces" service "gpu_profiles" endpoint.
func MountListHandler ¶
MountListHandler configures the mux to serve the "workspaces" service "list" endpoint.
func MountResetHandler ¶ added in v0.4.0
MountResetHandler configures the mux to serve the "workspaces" service "reset" endpoint.
func MountSetGpuProfileHandler ¶ added in v0.11.0
MountSetGpuProfileHandler configures the mux to serve the "workspaces" service "set_gpu_profile" endpoint.
func MountStartHandler ¶
MountStartHandler configures the mux to serve the "workspaces" service "start" endpoint.
func MountStopHandler ¶
MountStopHandler configures the mux to serve the "workspaces" service "stop" endpoint.
func NewCloneHandler ¶ added in v0.5.0
func NewCloneHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewCloneHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "clone" endpoint.
func NewClonePayload ¶ added in v0.5.0
func NewClonePayload(body *CloneRequestBody, name string, namespace string) *workspaces.ClonePayload
NewClonePayload builds a workspaces service clone endpoint payload.
func NewCreateHandler ¶
func NewCreateHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewCreateHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "create" endpoint.
func NewCreateWorkspacePayload ¶
func NewCreateWorkspacePayload(body *CreateRequestBody) *workspaces.CreateWorkspacePayload
NewCreateWorkspacePayload builds a workspaces service create endpoint payload.
func NewCredentialsHandler ¶ added in v0.7.0
func NewCredentialsHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewCredentialsHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "credentials" endpoint.
func NewCredentialsPayload ¶ added in v0.7.0
func NewCredentialsPayload(name string, namespace string) *workspaces.CredentialsPayload
NewCredentialsPayload builds a workspaces service credentials endpoint payload.
func NewDeleteHandler ¶
func NewDeleteHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewDeleteHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "delete" endpoint.
func NewDeletePayload ¶
func NewDeletePayload(name string, namespace string) *workspaces.DeletePayload
NewDeletePayload builds a workspaces service delete endpoint payload.
func NewGetHandler ¶
func NewGetHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewGetHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "get" endpoint.
func NewGetPayload ¶
func NewGetPayload(name string, namespace string) *workspaces.GetPayload
NewGetPayload builds a workspaces service get endpoint payload.
func NewGpuProfilesHandler ¶ added in v0.11.0
func NewGpuProfilesHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewGpuProfilesHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "gpu_profiles" endpoint.
func NewListHandler ¶
func NewListHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewListHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "list" endpoint.
func NewListPayload ¶
func NewListPayload(namespace string) *workspaces.ListPayload
NewListPayload builds a workspaces service list endpoint payload.
func NewResetHandler ¶ added in v0.4.0
func NewResetHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewResetHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "reset" endpoint.
func NewResetPayload ¶ added in v0.4.0
func NewResetPayload(name string, namespace string) *workspaces.ResetPayload
NewResetPayload builds a workspaces service reset endpoint payload.
func NewSetGpuProfileHandler ¶ added in v0.11.0
func NewSetGpuProfileHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewSetGpuProfileHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "set_gpu_profile" endpoint.
func NewSetGpuProfilePayload ¶ added in v0.11.0
func NewSetGpuProfilePayload(body *SetGpuProfileRequestBody, name string, namespace string) *workspaces.SetGpuProfilePayload
NewSetGpuProfilePayload builds a workspaces service set_gpu_profile endpoint payload.
func NewStartHandler ¶
func NewStartHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewStartHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "start" endpoint.
func NewStartPayload ¶
func NewStartPayload(name string, namespace string) *workspaces.StartPayload
NewStartPayload builds a workspaces service start endpoint payload.
func NewStopHandler ¶
func NewStopHandler( endpoint goa.Endpoint, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) http.Handler
NewStopHandler creates a HTTP handler which loads the HTTP request and calls the "workspaces" service "stop" endpoint.
func NewStopPayload ¶
func NewStopPayload(name string, namespace string) *workspaces.StopPayload
NewStopPayload builds a workspaces service stop endpoint payload.
func ResetWorkspacesPath ¶ added in v0.4.0
ResetWorkspacesPath returns the URL path to the workspaces service reset HTTP endpoint.
func SetGpuProfileWorkspacesPath ¶ added in v0.11.0
SetGpuProfileWorkspacesPath returns the URL path to the workspaces service set_gpu_profile HTTP endpoint.
func StartWorkspacesPath ¶
StartWorkspacesPath returns the URL path to the workspaces service start HTTP endpoint.
func StopWorkspacesPath ¶
StopWorkspacesPath returns the URL path to the workspaces service stop HTTP endpoint.
func ValidateCloneRequestBody ¶ added in v0.5.0
func ValidateCloneRequestBody(body *CloneRequestBody) (err error)
ValidateCloneRequestBody runs the validations defined on CloneRequestBody
func ValidateCreateRequestBody ¶
func ValidateCreateRequestBody(body *CreateRequestBody) (err error)
ValidateCreateRequestBody runs the validations defined on CreateRequestBody
func ValidateEnvVarRequestBody ¶
func ValidateEnvVarRequestBody(body *EnvVarRequestBody) (err error)
ValidateEnvVarRequestBody runs the validations defined on EnvVarRequestBody
func ValidateSetGpuProfileRequestBody ¶ added in v0.11.0
func ValidateSetGpuProfileRequestBody(body *SetGpuProfileRequestBody) (err error)
ValidateSetGpuProfileRequestBody runs the validations defined on set_gpu_profile_request_body
func ValidateTolerationRequestBody ¶
func ValidateTolerationRequestBody(body *TolerationRequestBody) (err error)
ValidateTolerationRequestBody runs the validations defined on TolerationRequestBody
func ValidateVMOptionsRequestBody ¶ added in v0.11.0
func ValidateVMOptionsRequestBody(body *VMOptionsRequestBody) (err error)
ValidateVMOptionsRequestBody runs the validations defined on VMOptionsRequestBody
func ValidateVolumeMountRequestBody ¶
func ValidateVolumeMountRequestBody(body *VolumeMountRequestBody) (err error)
ValidateVolumeMountRequestBody runs the validations defined on VolumeMountRequestBody
func ValidateWorkspaceContainerRequestBody ¶
func ValidateWorkspaceContainerRequestBody(body *WorkspaceContainerRequestBody) (err error)
ValidateWorkspaceContainerRequestBody runs the validations defined on WorkspaceContainerRequestBody
Types ¶
type CloneRequestBody ¶ added in v0.5.0
type CloneRequestBody struct {
// Name for the cloned workspace
NewName *string `form:"new_name,omitempty" json:"new_name,omitempty" xml:"new_name,omitempty"`
// Override the container image on the clone
Image *string `form:"image,omitempty" json:"image,omitempty" xml:"image,omitempty"`
// Override the container port on the clone
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// Override the CPU request on the clone
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Override the memory request on the clone
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// Override the CPU limit on the clone
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Override the memory limit on the clone
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
}
CloneRequestBody is the type of the "workspaces" service "clone" endpoint HTTP request body.
type CloneResponseBody ¶ added in v0.5.0
type CloneResponseBody struct {
// Workspace name
Name string `form:"name" json:"name" xml:"name"`
// Kubernetes namespace
Namespace string `form:"namespace" json:"namespace" xml:"namespace"`
// Workspace type: container, vm, or scratch
Type string `form:"type" json:"type" xml:"type"`
// Container image
Image string `form:"image" json:"image" xml:"image"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// Number of ready replicas
ReadyReplicas int `form:"ready_replicas" json:"ready_replicas" xml:"ready_replicas"`
// Container state
ContainerState *ContainerStateResponseBody `form:"container_state,omitempty" json:"container_state,omitempty" xml:"container_state,omitempty"`
// Workspace conditions
Conditions []*WorkspaceConditionResponseBody `form:"conditions,omitempty" json:"conditions,omitempty" xml:"conditions,omitempty"`
// Whether the workspace is stopped
Stopped bool `form:"stopped" json:"stopped" xml:"stopped"`
// Creation timestamp
CreatedAt *string `form:"created_at,omitempty" json:"created_at,omitempty" xml:"created_at,omitempty"`
// Attached volumes
VolumeMounts []*VolumeMountResponseBody `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Remote desktop agent configuration (Tier 1)
RemoteDesktop *ImageRemoteDesktopResponseBody `form:"remote_desktop,omitempty" json:"remote_desktop,omitempty" xml:"remote_desktop,omitempty"`
// Resolved guest profile; windows11-amd64-v1 uses display-only native
// provisioning
VMProfile *string `form:"vm_profile,omitempty" json:"vm_profile,omitempty" xml:"vm_profile,omitempty"`
// Configured elevated command identity hint, not live runner readiness;
// admission verifies policy, ownership and installed runner
ExecutionIdentity *string `form:"execution_identity,omitempty" json:"execution_identity,omitempty" xml:"execution_identity,omitempty"`
// Windows native setup and bootstrap removal have completed
Provisioned *bool `form:"provisioned,omitempty" json:"provisioned,omitempty" xml:"provisioned,omitempty"`
// Resolved GPU contract; absent means software rendering, not guest
// driver/capture/encode status
VMGpuProfile *VMGPUProfileResponseBody `form:"vm_gpu_profile,omitempty" json:"vm_gpu_profile,omitempty" xml:"vm_gpu_profile,omitempty"`
}
CloneResponseBody is the type of the "workspaces" service "clone" endpoint HTTP response body.
func NewCloneResponseBody ¶ added in v0.5.0
func NewCloneResponseBody(res *workspacesviews.WorkspaceView) *CloneResponseBody
NewCloneResponseBody builds the HTTP response body from the result of the "clone" endpoint of the "workspaces" service.
type ContainerStateResponse ¶
type ContainerStateResponse struct {
// Current state: running, waiting, terminated
State *string `form:"state,omitempty" json:"state,omitempty" xml:"state,omitempty"`
// Reason for the state
Reason *string `form:"reason,omitempty" json:"reason,omitempty" xml:"reason,omitempty"`
// Details about the state
Message *string `form:"message,omitempty" json:"message,omitempty" xml:"message,omitempty"`
// Time the container started
StartedAt *string `form:"started_at,omitempty" json:"started_at,omitempty" xml:"started_at,omitempty"`
}
ContainerStateResponse is used to define fields on response body types.
type ContainerStateResponseBody ¶
type ContainerStateResponseBody struct {
// Current state: running, waiting, terminated
State *string `form:"state,omitempty" json:"state,omitempty" xml:"state,omitempty"`
// Reason for the state
Reason *string `form:"reason,omitempty" json:"reason,omitempty" xml:"reason,omitempty"`
// Details about the state
Message *string `form:"message,omitempty" json:"message,omitempty" xml:"message,omitempty"`
// Time the container started
StartedAt *string `form:"started_at,omitempty" json:"started_at,omitempty" xml:"started_at,omitempty"`
}
ContainerStateResponseBody is used to define fields on response body types.
type CreateRequestBody ¶
type CreateRequestBody struct {
// Workspace name
Name *string `form:"name,omitempty" json:"name,omitempty" xml:"name,omitempty"`
// Target namespace
Namespace *string `form:"namespace,omitempty" json:"namespace,omitempty" xml:"namespace,omitempty"`
// Workspace type: 'container' (default, runs as a StatefulSet), 'vm' (KubeVirt
// VirtualMachine booting a containerDisk image), or 'scratch' (plain
// Deployment)
Type *string `form:"type,omitempty" json:"type,omitempty" xml:"type,omitempty"`
// Main container spec
Container *WorkspaceContainerRequestBody `form:"container,omitempty" json:"container,omitempty" xml:"container,omitempty"`
// Windows private root import settings
VMOptions *VMOptionsRequestBody `form:"vm_options,omitempty" json:"vm_options,omitempty" xml:"vm_options,omitempty"`
// Volumes to mount
VolumeMounts []*VolumeMountRequestBody `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Custom environment variables to inject into the workspace container
Env []*EnvVarRequestBody `form:"env,omitempty" json:"env,omitempty" xml:"env,omitempty"`
// Pod tolerations for scheduling
Tolerations []*TolerationRequestBody `form:"tolerations,omitempty" json:"tolerations,omitempty" xml:"tolerations,omitempty"`
// Node selector labels for scheduling
NodeSelector map[string]string `form:"node_selector,omitempty" json:"node_selector,omitempty" xml:"node_selector,omitempty"`
// frameworks)
SharedMemory *bool `form:"shared_memory,omitempty" json:"shared_memory,omitempty" xml:"shared_memory,omitempty"`
// Image pull policy for the workspace container (Always, IfNotPresent, Never).
// Overrides the image's default. When unset, the image's
// defaultImagePullPolicy applies; if that is also unset the field is omitted
// so Kubernetes applies its own default (Always for :latest or untagged
// references, IfNotPresent otherwise)
ImagePullPolicy *string `form:"image_pull_policy,omitempty" json:"image_pull_policy,omitempty" xml:"image_pull_policy,omitempty"`
}
CreateRequestBody is the type of the "workspaces" service "create" endpoint HTTP request body.
type CreateResponseBody ¶
type CreateResponseBody struct {
// Workspace name
Name string `form:"name" json:"name" xml:"name"`
// Kubernetes namespace
Namespace string `form:"namespace" json:"namespace" xml:"namespace"`
// Workspace type: container, vm, or scratch
Type string `form:"type" json:"type" xml:"type"`
// Container image
Image string `form:"image" json:"image" xml:"image"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// Number of ready replicas
ReadyReplicas int `form:"ready_replicas" json:"ready_replicas" xml:"ready_replicas"`
// Container state
ContainerState *ContainerStateResponseBody `form:"container_state,omitempty" json:"container_state,omitempty" xml:"container_state,omitempty"`
// Workspace conditions
Conditions []*WorkspaceConditionResponseBody `form:"conditions,omitempty" json:"conditions,omitempty" xml:"conditions,omitempty"`
// Whether the workspace is stopped
Stopped bool `form:"stopped" json:"stopped" xml:"stopped"`
// Creation timestamp
CreatedAt *string `form:"created_at,omitempty" json:"created_at,omitempty" xml:"created_at,omitempty"`
// Attached volumes
VolumeMounts []*VolumeMountResponseBody `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Remote desktop agent configuration (Tier 1)
RemoteDesktop *ImageRemoteDesktopResponseBody `form:"remote_desktop,omitempty" json:"remote_desktop,omitempty" xml:"remote_desktop,omitempty"`
// Resolved guest profile; windows11-amd64-v1 uses display-only native
// provisioning
VMProfile *string `form:"vm_profile,omitempty" json:"vm_profile,omitempty" xml:"vm_profile,omitempty"`
// Configured elevated command identity hint, not live runner readiness;
// admission verifies policy, ownership and installed runner
ExecutionIdentity *string `form:"execution_identity,omitempty" json:"execution_identity,omitempty" xml:"execution_identity,omitempty"`
// Windows native setup and bootstrap removal have completed
Provisioned *bool `form:"provisioned,omitempty" json:"provisioned,omitempty" xml:"provisioned,omitempty"`
// Resolved GPU contract; absent means software rendering, not guest
// driver/capture/encode status
VMGpuProfile *VMGPUProfileResponseBody `form:"vm_gpu_profile,omitempty" json:"vm_gpu_profile,omitempty" xml:"vm_gpu_profile,omitempty"`
}
CreateResponseBody is the type of the "workspaces" service "create" endpoint HTTP response body.
func NewCreateResponseBody ¶
func NewCreateResponseBody(res *workspacesviews.WorkspaceView) *CreateResponseBody
NewCreateResponseBody builds the HTTP response body from the result of the "create" endpoint of the "workspaces" service.
type CredentialsResponseBody ¶ added in v0.7.0
type CredentialsResponseBody struct {
Username string `form:"username" json:"username" xml:"username"`
Password string `form:"password" json:"password" xml:"password"`
}
CredentialsResponseBody is the type of the "workspaces" service "credentials" endpoint HTTP response body.
func NewCredentialsResponseBody ¶ added in v0.7.0
func NewCredentialsResponseBody(res *workspaces.WorkspaceInitialCredentials) *CredentialsResponseBody
NewCredentialsResponseBody builds the HTTP response body from the result of the "credentials" endpoint of the "workspaces" service.
type EnvVarRequestBody ¶
type EnvVarRequestBody struct {
// Environment variable name
Name *string `form:"name,omitempty" json:"name,omitempty" xml:"name,omitempty"`
// Environment variable value
Value *string `form:"value,omitempty" json:"value,omitempty" xml:"value,omitempty"`
}
EnvVarRequestBody is used to define fields on request body types.
type GetResponseBody ¶
type GetResponseBody struct {
// Workspace name
Name string `form:"name" json:"name" xml:"name"`
// Kubernetes namespace
Namespace string `form:"namespace" json:"namespace" xml:"namespace"`
// Workspace type: container, vm, or scratch
Type string `form:"type" json:"type" xml:"type"`
// Container image
Image string `form:"image" json:"image" xml:"image"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// Number of ready replicas
ReadyReplicas int `form:"ready_replicas" json:"ready_replicas" xml:"ready_replicas"`
// Container state
ContainerState *ContainerStateResponseBody `form:"container_state,omitempty" json:"container_state,omitempty" xml:"container_state,omitempty"`
// Workspace conditions
Conditions []*WorkspaceConditionResponseBody `form:"conditions,omitempty" json:"conditions,omitempty" xml:"conditions,omitempty"`
// Whether the workspace is stopped
Stopped bool `form:"stopped" json:"stopped" xml:"stopped"`
// Creation timestamp
CreatedAt *string `form:"created_at,omitempty" json:"created_at,omitempty" xml:"created_at,omitempty"`
// Attached volumes
VolumeMounts []*VolumeMountResponseBody `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Remote desktop agent configuration (Tier 1)
RemoteDesktop *ImageRemoteDesktopResponseBody `form:"remote_desktop,omitempty" json:"remote_desktop,omitempty" xml:"remote_desktop,omitempty"`
// Resolved guest profile; windows11-amd64-v1 uses display-only native
// provisioning
VMProfile *string `form:"vm_profile,omitempty" json:"vm_profile,omitempty" xml:"vm_profile,omitempty"`
// Configured elevated command identity hint, not live runner readiness;
// admission verifies policy, ownership and installed runner
ExecutionIdentity *string `form:"execution_identity,omitempty" json:"execution_identity,omitempty" xml:"execution_identity,omitempty"`
// Windows native setup and bootstrap removal have completed
Provisioned *bool `form:"provisioned,omitempty" json:"provisioned,omitempty" xml:"provisioned,omitempty"`
// Resolved GPU contract; absent means software rendering, not guest
// driver/capture/encode status
VMGpuProfile *VMGPUProfileResponseBody `form:"vm_gpu_profile,omitempty" json:"vm_gpu_profile,omitempty" xml:"vm_gpu_profile,omitempty"`
}
GetResponseBody is the type of the "workspaces" service "get" endpoint HTTP response body.
func NewGetResponseBody ¶
func NewGetResponseBody(res *workspacesviews.WorkspaceView) *GetResponseBody
NewGetResponseBody builds the HTTP response body from the result of the "get" endpoint of the "workspaces" service.
type GpuProfilesResponseBody ¶ added in v0.11.0
type GpuProfilesResponseBody []*VMGPUProfileResponse
GpuProfilesResponseBody is the type of the "workspaces" service "gpu_profiles" endpoint HTTP response body.
func NewGpuProfilesResponseBody ¶ added in v0.11.0
func NewGpuProfilesResponseBody(res []*workspaces.VMGPUProfile) GpuProfilesResponseBody
NewGpuProfilesResponseBody builds the HTTP response body from the result of the "gpu_profiles" endpoint of the "workspaces" service.
type ImageRemoteDesktopResponse ¶ added in v0.5.0
type ImageRemoteDesktopResponse struct {
// Protocol name: "selkies" (Linux in-guest agent) or "agent" (cross-platform
// kw-agent)
Protocol string `form:"protocol" json:"protocol" xml:"protocol"`
// Guest port the agent listens on
Port int `form:"port" json:"port" xml:"port"`
// Path relative to the agent's base URL
Path string `form:"path" json:"path" xml:"path"`
}
ImageRemoteDesktopResponse is used to define fields on response body types.
type ImageRemoteDesktopResponseBody ¶ added in v0.5.0
type ImageRemoteDesktopResponseBody struct {
// Protocol name: "selkies" (Linux in-guest agent) or "agent" (cross-platform
// kw-agent)
Protocol string `form:"protocol" json:"protocol" xml:"protocol"`
// Guest port the agent listens on
Port int `form:"port" json:"port" xml:"port"`
// Path relative to the agent's base URL
Path string `form:"path" json:"path" xml:"path"`
}
ImageRemoteDesktopResponseBody is used to define fields on response body types.
type ListResponseBody ¶
type ListResponseBody []*WorkspaceResponse
ListResponseBody is the type of the "workspaces" service "list" endpoint HTTP response body.
func NewListResponseBody ¶
func NewListResponseBody(res []*workspaces.Workspace) ListResponseBody
NewListResponseBody builds the HTTP response body from the result of the "list" endpoint of the "workspaces" service.
type MountPoint ¶
type MountPoint struct {
// Method is the name of the service method served by the mounted HTTP handler.
Method string
// Verb is the HTTP method used to match requests to the mounted handler.
Verb string
// Pattern is the HTTP request path pattern used to match requests to the
// mounted handler.
Pattern string
}
MountPoint holds information about the mounted endpoints.
type ResetResponseBody ¶ added in v0.4.0
type ResetResponseBody struct {
// Workspace name
Name string `form:"name" json:"name" xml:"name"`
// Kubernetes namespace
Namespace string `form:"namespace" json:"namespace" xml:"namespace"`
// Workspace type: container, vm, or scratch
Type string `form:"type" json:"type" xml:"type"`
// Container image
Image string `form:"image" json:"image" xml:"image"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// Number of ready replicas
ReadyReplicas int `form:"ready_replicas" json:"ready_replicas" xml:"ready_replicas"`
// Container state
ContainerState *ContainerStateResponseBody `form:"container_state,omitempty" json:"container_state,omitempty" xml:"container_state,omitempty"`
// Workspace conditions
Conditions []*WorkspaceConditionResponseBody `form:"conditions,omitempty" json:"conditions,omitempty" xml:"conditions,omitempty"`
// Whether the workspace is stopped
Stopped bool `form:"stopped" json:"stopped" xml:"stopped"`
// Creation timestamp
CreatedAt *string `form:"created_at,omitempty" json:"created_at,omitempty" xml:"created_at,omitempty"`
// Attached volumes
VolumeMounts []*VolumeMountResponseBody `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Remote desktop agent configuration (Tier 1)
RemoteDesktop *ImageRemoteDesktopResponseBody `form:"remote_desktop,omitempty" json:"remote_desktop,omitempty" xml:"remote_desktop,omitempty"`
// Resolved guest profile; windows11-amd64-v1 uses display-only native
// provisioning
VMProfile *string `form:"vm_profile,omitempty" json:"vm_profile,omitempty" xml:"vm_profile,omitempty"`
// Configured elevated command identity hint, not live runner readiness;
// admission verifies policy, ownership and installed runner
ExecutionIdentity *string `form:"execution_identity,omitempty" json:"execution_identity,omitempty" xml:"execution_identity,omitempty"`
// Windows native setup and bootstrap removal have completed
Provisioned *bool `form:"provisioned,omitempty" json:"provisioned,omitempty" xml:"provisioned,omitempty"`
// Resolved GPU contract; absent means software rendering, not guest
// driver/capture/encode status
VMGpuProfile *VMGPUProfileResponseBody `form:"vm_gpu_profile,omitempty" json:"vm_gpu_profile,omitempty" xml:"vm_gpu_profile,omitempty"`
}
ResetResponseBody is the type of the "workspaces" service "reset" endpoint HTTP response body.
func NewResetResponseBody ¶ added in v0.4.0
func NewResetResponseBody(res *workspacesviews.WorkspaceView) *ResetResponseBody
NewResetResponseBody builds the HTTP response body from the result of the "reset" endpoint of the "workspaces" service.
type Server ¶
type Server struct {
Mounts []*MountPoint
GpuProfiles http.Handler
SetGpuProfile http.Handler
Credentials http.Handler
List http.Handler
Get http.Handler
Create http.Handler
Delete http.Handler
Start http.Handler
Stop http.Handler
Reset http.Handler
Clone http.Handler
}
Server lists the workspaces service endpoint HTTP handlers.
func New ¶
func New( e *workspaces.Endpoints, mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder, encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, errhandler func(context.Context, http.ResponseWriter, error), formatter func(ctx context.Context, err error) goahttp.Statuser, ) *Server
New instantiates HTTP handlers for all the workspaces service endpoints using the provided encoder and decoder. The handlers are mounted on the given mux using the HTTP verb and path defined in the design. errhandler is called whenever a response fails to be encoded. formatter is used to format errors returned by the service methods prior to encoding. Both errhandler and formatter are optional and can be nil.
func (*Server) MethodNames ¶
MethodNames returns the methods served.
type SetGpuProfileRequestBody ¶ added in v0.11.0
type SetGpuProfileRequestBody struct {
ProfileID *string `form:"profile_id,omitempty" json:"profile_id,omitempty" xml:"profile_id,omitempty"`
}
SetGpuProfileRequestBody is the type of the "workspaces" service "set_gpu_profile" endpoint HTTP request body.
type SetGpuProfileResponseBody ¶ added in v0.11.0
type SetGpuProfileResponseBody struct {
// Workspace name
Name string `form:"name" json:"name" xml:"name"`
// Kubernetes namespace
Namespace string `form:"namespace" json:"namespace" xml:"namespace"`
// Workspace type: container, vm, or scratch
Type string `form:"type" json:"type" xml:"type"`
// Container image
Image string `form:"image" json:"image" xml:"image"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// Number of ready replicas
ReadyReplicas int `form:"ready_replicas" json:"ready_replicas" xml:"ready_replicas"`
// Container state
ContainerState *ContainerStateResponseBody `form:"container_state,omitempty" json:"container_state,omitempty" xml:"container_state,omitempty"`
// Workspace conditions
Conditions []*WorkspaceConditionResponseBody `form:"conditions,omitempty" json:"conditions,omitempty" xml:"conditions,omitempty"`
// Whether the workspace is stopped
Stopped bool `form:"stopped" json:"stopped" xml:"stopped"`
// Creation timestamp
CreatedAt *string `form:"created_at,omitempty" json:"created_at,omitempty" xml:"created_at,omitempty"`
// Attached volumes
VolumeMounts []*VolumeMountResponseBody `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Remote desktop agent configuration (Tier 1)
RemoteDesktop *ImageRemoteDesktopResponseBody `form:"remote_desktop,omitempty" json:"remote_desktop,omitempty" xml:"remote_desktop,omitempty"`
// Resolved guest profile; windows11-amd64-v1 uses display-only native
// provisioning
VMProfile *string `form:"vm_profile,omitempty" json:"vm_profile,omitempty" xml:"vm_profile,omitempty"`
// Configured elevated command identity hint, not live runner readiness;
// admission verifies policy, ownership and installed runner
ExecutionIdentity *string `form:"execution_identity,omitempty" json:"execution_identity,omitempty" xml:"execution_identity,omitempty"`
// Windows native setup and bootstrap removal have completed
Provisioned *bool `form:"provisioned,omitempty" json:"provisioned,omitempty" xml:"provisioned,omitempty"`
// Resolved GPU contract; absent means software rendering, not guest
// driver/capture/encode status
VMGpuProfile *VMGPUProfileResponseBody `form:"vm_gpu_profile,omitempty" json:"vm_gpu_profile,omitempty" xml:"vm_gpu_profile,omitempty"`
}
SetGpuProfileResponseBody is the type of the "workspaces" service "set_gpu_profile" endpoint HTTP response body.
func NewSetGpuProfileResponseBody ¶ added in v0.11.0
func NewSetGpuProfileResponseBody(res *workspacesviews.WorkspaceView) *SetGpuProfileResponseBody
NewSetGpuProfileResponseBody builds the HTTP response body from the result of the "set_gpu_profile" endpoint of the "workspaces" service.
type StartResponseBody ¶
type StartResponseBody struct {
// Workspace name
Name string `form:"name" json:"name" xml:"name"`
// Kubernetes namespace
Namespace string `form:"namespace" json:"namespace" xml:"namespace"`
// Workspace type: container, vm, or scratch
Type string `form:"type" json:"type" xml:"type"`
// Container image
Image string `form:"image" json:"image" xml:"image"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// Number of ready replicas
ReadyReplicas int `form:"ready_replicas" json:"ready_replicas" xml:"ready_replicas"`
// Container state
ContainerState *ContainerStateResponseBody `form:"container_state,omitempty" json:"container_state,omitempty" xml:"container_state,omitempty"`
// Workspace conditions
Conditions []*WorkspaceConditionResponseBody `form:"conditions,omitempty" json:"conditions,omitempty" xml:"conditions,omitempty"`
// Whether the workspace is stopped
Stopped bool `form:"stopped" json:"stopped" xml:"stopped"`
// Creation timestamp
CreatedAt *string `form:"created_at,omitempty" json:"created_at,omitempty" xml:"created_at,omitempty"`
// Attached volumes
VolumeMounts []*VolumeMountResponseBody `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Remote desktop agent configuration (Tier 1)
RemoteDesktop *ImageRemoteDesktopResponseBody `form:"remote_desktop,omitempty" json:"remote_desktop,omitempty" xml:"remote_desktop,omitempty"`
// Resolved guest profile; windows11-amd64-v1 uses display-only native
// provisioning
VMProfile *string `form:"vm_profile,omitempty" json:"vm_profile,omitempty" xml:"vm_profile,omitempty"`
// Configured elevated command identity hint, not live runner readiness;
// admission verifies policy, ownership and installed runner
ExecutionIdentity *string `form:"execution_identity,omitempty" json:"execution_identity,omitempty" xml:"execution_identity,omitempty"`
// Windows native setup and bootstrap removal have completed
Provisioned *bool `form:"provisioned,omitempty" json:"provisioned,omitempty" xml:"provisioned,omitempty"`
// Resolved GPU contract; absent means software rendering, not guest
// driver/capture/encode status
VMGpuProfile *VMGPUProfileResponseBody `form:"vm_gpu_profile,omitempty" json:"vm_gpu_profile,omitempty" xml:"vm_gpu_profile,omitempty"`
}
StartResponseBody is the type of the "workspaces" service "start" endpoint HTTP response body.
func NewStartResponseBody ¶
func NewStartResponseBody(res *workspacesviews.WorkspaceView) *StartResponseBody
NewStartResponseBody builds the HTTP response body from the result of the "start" endpoint of the "workspaces" service.
type StopResponseBody ¶
type StopResponseBody struct {
// Workspace name
Name string `form:"name" json:"name" xml:"name"`
// Kubernetes namespace
Namespace string `form:"namespace" json:"namespace" xml:"namespace"`
// Workspace type: container, vm, or scratch
Type string `form:"type" json:"type" xml:"type"`
// Container image
Image string `form:"image" json:"image" xml:"image"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// Number of ready replicas
ReadyReplicas int `form:"ready_replicas" json:"ready_replicas" xml:"ready_replicas"`
// Container state
ContainerState *ContainerStateResponseBody `form:"container_state,omitempty" json:"container_state,omitempty" xml:"container_state,omitempty"`
// Workspace conditions
Conditions []*WorkspaceConditionResponseBody `form:"conditions,omitempty" json:"conditions,omitempty" xml:"conditions,omitempty"`
// Whether the workspace is stopped
Stopped bool `form:"stopped" json:"stopped" xml:"stopped"`
// Creation timestamp
CreatedAt *string `form:"created_at,omitempty" json:"created_at,omitempty" xml:"created_at,omitempty"`
// Attached volumes
VolumeMounts []*VolumeMountResponseBody `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Remote desktop agent configuration (Tier 1)
RemoteDesktop *ImageRemoteDesktopResponseBody `form:"remote_desktop,omitempty" json:"remote_desktop,omitempty" xml:"remote_desktop,omitempty"`
// Resolved guest profile; windows11-amd64-v1 uses display-only native
// provisioning
VMProfile *string `form:"vm_profile,omitempty" json:"vm_profile,omitempty" xml:"vm_profile,omitempty"`
// Configured elevated command identity hint, not live runner readiness;
// admission verifies policy, ownership and installed runner
ExecutionIdentity *string `form:"execution_identity,omitempty" json:"execution_identity,omitempty" xml:"execution_identity,omitempty"`
// Windows native setup and bootstrap removal have completed
Provisioned *bool `form:"provisioned,omitempty" json:"provisioned,omitempty" xml:"provisioned,omitempty"`
// Resolved GPU contract; absent means software rendering, not guest
// driver/capture/encode status
VMGpuProfile *VMGPUProfileResponseBody `form:"vm_gpu_profile,omitempty" json:"vm_gpu_profile,omitempty" xml:"vm_gpu_profile,omitempty"`
}
StopResponseBody is the type of the "workspaces" service "stop" endpoint HTTP response body.
func NewStopResponseBody ¶
func NewStopResponseBody(res *workspacesviews.WorkspaceView) *StopResponseBody
NewStopResponseBody builds the HTTP response body from the result of the "stop" endpoint of the "workspaces" service.
type TolerationRequestBody ¶
type TolerationRequestBody struct {
// Toleration key
Key *string `form:"key,omitempty" json:"key,omitempty" xml:"key,omitempty"`
// Operator: Exists or Equal
Operator *string `form:"operator,omitempty" json:"operator,omitempty" xml:"operator,omitempty"`
// Toleration value
Value *string `form:"value,omitempty" json:"value,omitempty" xml:"value,omitempty"`
// Taint effect: NoSchedule, PreferNoSchedule, or NoExecute
Effect *string `form:"effect,omitempty" json:"effect,omitempty" xml:"effect,omitempty"`
}
TolerationRequestBody is used to define fields on request body types.
type VMGPUProfileResponse ¶ added in v0.11.0
type VMGPUProfileResponse struct {
ID string `form:"id" json:"id" xml:"id"`
DisplayName string `form:"display_name" json:"display_name" xml:"display_name"`
ResourceName string `form:"resource_name" json:"resource_name" xml:"resource_name"`
Kind string `form:"kind" json:"kind" xml:"kind"`
Count int `form:"count" json:"count" xml:"count"`
NodeSelector map[string]string `form:"node_selector" json:"node_selector" xml:"node_selector"`
GuestDriverVersion string `form:"guest_driver_version" json:"guest_driver_version" xml:"guest_driver_version"`
Experimental bool `form:"experimental" json:"experimental" xml:"experimental"`
}
VMGPUProfileResponse is used to define fields on response body types.
type VMGPUProfileResponseBody ¶ added in v0.11.0
type VMGPUProfileResponseBody struct {
ID string `form:"id" json:"id" xml:"id"`
DisplayName string `form:"display_name" json:"display_name" xml:"display_name"`
ResourceName string `form:"resource_name" json:"resource_name" xml:"resource_name"`
Kind string `form:"kind" json:"kind" xml:"kind"`
Count int `form:"count" json:"count" xml:"count"`
NodeSelector map[string]string `form:"node_selector" json:"node_selector" xml:"node_selector"`
GuestDriverVersion string `form:"guest_driver_version" json:"guest_driver_version" xml:"guest_driver_version"`
Experimental bool `form:"experimental" json:"experimental" xml:"experimental"`
}
VMGPUProfileResponseBody is used to define fields on response body types.
type VMOptionsRequestBody ¶ added in v0.7.0
type VMOptionsRequestBody struct {
// Same-namespace CDI accessKeyId/secretKey Secret
ImportSecretName *string `form:"import_secret_name,omitempty" json:"import_secret_name,omitempty" xml:"import_secret_name,omitempty"`
// Same-namespace registry CA ConfigMap
ImportCertConfigMapName *string `` /* 133-byte string literal not displayed */
// Persistent root StorageClass; empty uses cluster default
StorageClassName *string `form:"storage_class_name,omitempty" json:"storage_class_name,omitempty" xml:"storage_class_name,omitempty"`
// Persistent Windows root capacity, at least 80Gi
RootDiskSize *string `form:"root_disk_size,omitempty" json:"root_disk_size,omitempty" xml:"root_disk_size,omitempty"`
// Versioned operator-approved VM GPU profile ID; omitted/empty keeps software
// graphics
GpuProfile *string `form:"gpu_profile,omitempty" json:"gpu_profile,omitempty" xml:"gpu_profile,omitempty"`
}
VMOptionsRequestBody is used to define fields on request body types.
type VolumeMountRequestBody ¶
type VolumeMountRequestBody struct {
// Volume/PVC name
Name *string `form:"name,omitempty" json:"name,omitempty" xml:"name,omitempty"`
// Mount path in container
MountPath *string `form:"mount_path,omitempty" json:"mount_path,omitempty" xml:"mount_path,omitempty"`
// Volume mount type for VMs: 'disk' (virtio disk) or 'cdrom' (optical disc).
// Empty/omitted defaults to 'disk' for VM volume mounts.
Type *string `form:"type,omitempty" json:"type,omitempty" xml:"type,omitempty"`
// Disk bus type for VMs when type is 'cdrom' (e.g. 'sata', 'ide'). Ignored for
// 'disk' type.
Bus *string `form:"bus,omitempty" json:"bus,omitempty" xml:"bus,omitempty"`
// Whether the mount is read-only. Omitted defaults to writable for container
// PVCs and VM data disks, and read-only for VM CD-ROMs.
Readonly *bool `form:"readonly,omitempty" json:"readonly,omitempty" xml:"readonly,omitempty"`
}
VolumeMountRequestBody is used to define fields on request body types.
type VolumeMountResponse ¶
type VolumeMountResponse struct {
// Volume/PVC name
Name string `form:"name" json:"name" xml:"name"`
// Mount path in container
MountPath string `form:"mount_path" json:"mount_path" xml:"mount_path"`
// Volume mount type for VMs: 'disk' (virtio disk) or 'cdrom' (optical disc).
// Empty/omitted defaults to 'disk' for VM volume mounts.
Type *string `form:"type,omitempty" json:"type,omitempty" xml:"type,omitempty"`
// Disk bus type for VMs when type is 'cdrom' (e.g. 'sata', 'ide'). Ignored for
// 'disk' type.
Bus *string `form:"bus,omitempty" json:"bus,omitempty" xml:"bus,omitempty"`
// Whether the mount is read-only. Omitted defaults to writable for container
// PVCs and VM data disks, and read-only for VM CD-ROMs.
Readonly *bool `form:"readonly,omitempty" json:"readonly,omitempty" xml:"readonly,omitempty"`
}
VolumeMountResponse is used to define fields on response body types.
type VolumeMountResponseBody ¶
type VolumeMountResponseBody struct {
// Volume/PVC name
Name string `form:"name" json:"name" xml:"name"`
// Mount path in container
MountPath string `form:"mount_path" json:"mount_path" xml:"mount_path"`
// Volume mount type for VMs: 'disk' (virtio disk) or 'cdrom' (optical disc).
// Empty/omitted defaults to 'disk' for VM volume mounts.
Type *string `form:"type,omitempty" json:"type,omitempty" xml:"type,omitempty"`
// Disk bus type for VMs when type is 'cdrom' (e.g. 'sata', 'ide'). Ignored for
// 'disk' type.
Bus *string `form:"bus,omitempty" json:"bus,omitempty" xml:"bus,omitempty"`
// Whether the mount is read-only. Omitted defaults to writable for container
// PVCs and VM data disks, and read-only for VM CD-ROMs.
Readonly *bool `form:"readonly,omitempty" json:"readonly,omitempty" xml:"readonly,omitempty"`
}
VolumeMountResponseBody is used to define fields on response body types.
type WorkspaceConditionResponse ¶
type WorkspaceConditionResponse struct {
// Condition type
Type *string `form:"type,omitempty" json:"type,omitempty" xml:"type,omitempty"`
// Condition status
Status *string `form:"status,omitempty" json:"status,omitempty" xml:"status,omitempty"`
// Brief reason
Reason *string `form:"reason,omitempty" json:"reason,omitempty" xml:"reason,omitempty"`
// Detailed message
Message *string `form:"message,omitempty" json:"message,omitempty" xml:"message,omitempty"`
// Last transition time
LastTransitionTime *string `form:"last_transition_time,omitempty" json:"last_transition_time,omitempty" xml:"last_transition_time,omitempty"`
}
WorkspaceConditionResponse is used to define fields on response body types.
type WorkspaceConditionResponseBody ¶
type WorkspaceConditionResponseBody struct {
// Condition type
Type *string `form:"type,omitempty" json:"type,omitempty" xml:"type,omitempty"`
// Condition status
Status *string `form:"status,omitempty" json:"status,omitempty" xml:"status,omitempty"`
// Brief reason
Reason *string `form:"reason,omitempty" json:"reason,omitempty" xml:"reason,omitempty"`
// Detailed message
Message *string `form:"message,omitempty" json:"message,omitempty" xml:"message,omitempty"`
// Last transition time
LastTransitionTime *string `form:"last_transition_time,omitempty" json:"last_transition_time,omitempty" xml:"last_transition_time,omitempty"`
}
WorkspaceConditionResponseBody is used to define fields on response body types.
type WorkspaceContainerRequestBody ¶
type WorkspaceContainerRequestBody struct {
// Container entrypoint override, passed verbatim
Command []string `form:"command,omitempty" json:"command,omitempty" xml:"command,omitempty"`
// Container argument override, passed verbatim
Args []string `form:"args,omitempty" json:"args,omitempty" xml:"args,omitempty"`
// Container name
Name *string `form:"name,omitempty" json:"name,omitempty" xml:"name,omitempty"`
// Container image
Image *string `form:"image,omitempty" json:"image,omitempty" xml:"image,omitempty"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// GPU resource request count (e.g. "1")
GpuRequest *string `form:"gpu_request,omitempty" json:"gpu_request,omitempty" xml:"gpu_request,omitempty"`
// GPU vendor resource name (e.g. nvidia.com/gpu, amd.com/gpu)
GpuVendor *string `form:"gpu_vendor,omitempty" json:"gpu_vendor,omitempty" xml:"gpu_vendor,omitempty"`
}
WorkspaceContainerRequestBody is used to define fields on request body types.
type WorkspaceResponse ¶
type WorkspaceResponse struct {
// Workspace name
Name string `form:"name" json:"name" xml:"name"`
// Kubernetes namespace
Namespace string `form:"namespace" json:"namespace" xml:"namespace"`
// Workspace type: container, vm, or scratch
Type string `form:"type" json:"type" xml:"type"`
// Container image
Image string `form:"image" json:"image" xml:"image"`
// Container port
Port *int `form:"port,omitempty" json:"port,omitempty" xml:"port,omitempty"`
// CPU request
CPURequest *string `form:"cpu_request,omitempty" json:"cpu_request,omitempty" xml:"cpu_request,omitempty"`
// Memory request
MemoryRequest *string `form:"memory_request,omitempty" json:"memory_request,omitempty" xml:"memory_request,omitempty"`
// CPU limit
CPULimit *string `form:"cpu_limit,omitempty" json:"cpu_limit,omitempty" xml:"cpu_limit,omitempty"`
// Memory limit
MemoryLimit *string `form:"memory_limit,omitempty" json:"memory_limit,omitempty" xml:"memory_limit,omitempty"`
// Number of ready replicas
ReadyReplicas int `form:"ready_replicas" json:"ready_replicas" xml:"ready_replicas"`
// Container state
ContainerState *ContainerStateResponse `form:"container_state,omitempty" json:"container_state,omitempty" xml:"container_state,omitempty"`
// Workspace conditions
Conditions []*WorkspaceConditionResponse `form:"conditions,omitempty" json:"conditions,omitempty" xml:"conditions,omitempty"`
// Whether the workspace is stopped
Stopped bool `form:"stopped" json:"stopped" xml:"stopped"`
// Creation timestamp
CreatedAt *string `form:"created_at,omitempty" json:"created_at,omitempty" xml:"created_at,omitempty"`
// Attached volumes
VolumeMounts []*VolumeMountResponse `form:"volume_mounts,omitempty" json:"volume_mounts,omitempty" xml:"volume_mounts,omitempty"`
// Remote desktop agent configuration (Tier 1)
RemoteDesktop *ImageRemoteDesktopResponse `form:"remote_desktop,omitempty" json:"remote_desktop,omitempty" xml:"remote_desktop,omitempty"`
// Resolved guest profile; windows11-amd64-v1 uses display-only native
// provisioning
VMProfile *string `form:"vm_profile,omitempty" json:"vm_profile,omitempty" xml:"vm_profile,omitempty"`
// Configured elevated command identity hint, not live runner readiness;
// admission verifies policy, ownership and installed runner
ExecutionIdentity *string `form:"execution_identity,omitempty" json:"execution_identity,omitempty" xml:"execution_identity,omitempty"`
// Windows native setup and bootstrap removal have completed
Provisioned *bool `form:"provisioned,omitempty" json:"provisioned,omitempty" xml:"provisioned,omitempty"`
// Resolved GPU contract; absent means software rendering, not guest
// driver/capture/encode status
VMGpuProfile *VMGPUProfileResponse `form:"vm_gpu_profile,omitempty" json:"vm_gpu_profile,omitempty" xml:"vm_gpu_profile,omitempty"`
}
WorkspaceResponse is used to define fields on response body types.