This repository has been archived on 2026-05-13. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
educode-controller/internal/types/types.go
starryskymeow 2d8e8af80e add tpyes
2025-07-17 16:18:48 +08:00

43 lines
1.4 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package types
type Mount struct {
WorkspaceID string `json:"workspaceID" bind:"required"`
Path string `json:"path" bind:"required"`
}
// pvc, the storage
type Pvc struct {
ID string `json:"id" bind:"required"`
UID string `json:"uid" bind:"required"`
Limit string `json:"limit" bind:"required"`
StorageClassName string `json:"storageClassName" bind:"required"`
AccessMode string `json:"accessMode" bind:"required"`
Status string `json:"status,omitempty"`
Mount *Mount `json:"mount,omitempty"`
}
type HttpForward struct {
Target string `json:"target" bind:"required"`
WorkspaceID string `json:"workspaceID" bind:"required"`
}
type ResourceLimits struct {
// 1core=1000m
CPU string `json:"cpu"`
// 1Gi=1024Mi
Memory string `json:"memory"`
// temp storage limit1Gi=1024Mi
Storage string `json:"storage"`
}
type Workspace struct {
ID string `json:"id" bind:"required"`
UID string `json:"uid" bind:"required"`
Image string `json:"image" bind:"required"`
Envs map[string]string `json:"envs,omitempty"`
ResourceLimits *ResourceLimits `json:"resourcesLimits" bind:"required"`
Pvcs []Pvc `json:"pvcs,omitempty"`
HttpForwards []HttpForward `json:"httpForwards,omitempty"`
Status string `json:"status"`
}