Documentation
¶
Index ¶
- Variables
- func CreateApiKey(c *gin.Context)
- func CreateBindingError(err error) *body.BindingError
- func CreateDeployment(c *gin.Context)
- func CreateGpuClaim(c *gin.Context)
- func CreateGpuLease(c *gin.Context)
- func CreateResourceMigration(c *gin.Context)
- func CreateSnapshot(c *gin.Context)
- func CreateTeam(c *gin.Context)
- func CreateVM(c *gin.Context)
- func CreateVmAction(c *gin.Context)
- func DeleteDeployment(c *gin.Context)
- func DeleteGpuClaim(c *gin.Context)
- func DeleteGpuLease(c *gin.Context)
- func DeleteNotification(c *gin.Context)
- func DeleteResourceMigration(c *gin.Context)
- func DeleteSM(c *gin.Context)
- func DeleteSnapshot(c *gin.Context)
- func DeleteTeam(c *gin.Context)
- func DeleteVM(c *gin.Context)
- func Discover(c *gin.Context)
- func DoDeploymentCommand(c *gin.Context)
- func GetCiConfig(c *gin.Context)
- func GetDeployment(c *gin.Context)
- func GetGpuClaim(c *gin.Context)
- func GetGpuGroup(c *gin.Context)
- func GetGpuLease(c *gin.Context)
- func GetJob(c *gin.Context)
- func GetLogs(c *gin.Context)
- func GetNotification(c *gin.Context)
- func GetResourceMigration(c *gin.Context)
- func GetSM(c *gin.Context)
- func GetSnapshot(c *gin.Context)
- func GetTeam(c *gin.Context)
- func GetUser(c *gin.Context)
- func GetVM(c *gin.Context)
- func HandleHarborHook(c *gin.Context)
- func ListDeployments(c *gin.Context)
- func ListGpuClaims(c *gin.Context)
- func ListGpuGroups(c *gin.Context)
- func ListGpuLeases(c *gin.Context)
- func ListHosts(c *gin.Context)
- func ListJobs(c *gin.Context)
- func ListNotifications(c *gin.Context)
- func ListResourceMigrations(c *gin.Context)
- func ListSMs(c *gin.Context)
- func ListSnapshots(c *gin.Context)
- func ListSystemCapacities(c *gin.Context)
- func ListSystemStats(c *gin.Context)
- func ListSystemStatus(c *gin.Context)
- func ListTeams(c *gin.Context)
- func ListUsers(c *gin.Context)
- func ListVMs(c *gin.Context)
- func ListWorkerStatus(c *gin.Context)
- func ListZones(c *gin.Context)
- func MakeVmToLargeForHostErr(cpuAvailable, ramAvailable int) error
- func Metrics(c *gin.Context)
- func Register(c *gin.Context)
- func UpdateDeployment(c *gin.Context)
- func UpdateGpuLease(c *gin.Context)
- func UpdateJob(c *gin.Context)
- func UpdateNotification(c *gin.Context)
- func UpdateResourceMigration(c *gin.Context)
- func UpdateTeam(c *gin.Context)
- func UpdateUser(c *gin.Context)
- func UpdateVM(c *gin.Context)
- func VerboseListHosts(c *gin.Context)
- func WithAuth(context *sys.ClientContext) (*core.AuthInfo, error)
Constants ¶
This section is empty.
Variables ¶
var ( // ErrAuthInfoNotAvailable is returned when the auth info is not available ErrAuthInfoNotAvailable = fmt.Errorf("auth info not available") // ErrAuthInfoSetupFailed is returned when the auth info setup failed ErrAuthInfoSetupFailed = fmt.Errorf("auth info setup failed") // ErrInternal is returned when an internal error occurs. // This is a generic error that should not be returned in the API, but rather logged ErrInternal = fmt.Errorf("internal error") // ErrNoAvailableGpu is returned when there are no available GPUs. // This is normally caused by all GPUs being leased ErrNoAvailableGpu = fmt.Errorf("no available GPUs") // ErrGpuNotAvailable is returned when the GPU is not available. // This is normally caused by the host being down ErrGpuNotAvailable = fmt.Errorf("GPU not available") // ErrHostNotAvailable is returned when the host is not available. // This is normally caused by the host being down or disabled/in maintenance ErrHostNotAvailable = fmt.Errorf("host not available") // ErrVmToLargeForHost is returned when the VM is too large for the host. // This is normally caused by the VM requesting more resources than the host has available ErrVmToLargeForHost = fmt.Errorf("VM too large for host") // ErrVmNotReady is returned when the VM is not ready. // This is normally caused by the internal CloudStack VM not being created yet ErrVmNotReady = fmt.Errorf("VM not ready") // ErrCouldNotGetGpuClaims is returned when getting gpu claims fails ErrCouldNotGetGpuClaims = fmt.Errorf("could not get gpu claims") )
Functions ¶
func CreateApiKey ¶
CreateApiKey @Summary Create API key @Description Create API key @Tags User @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param userId path string true "User ID" @Param body body body.ApiKeyCreate true "API key create body" @Success 200 {object} body.ApiKeyCreated @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/users/{userId}/apiKeys [post]
func CreateBindingError ¶
func CreateBindingError(err error) *body.BindingError
CreateBindingError creates a binding error from a validator error This is useful for returning a binding error from a gin handler
func CreateDeployment ¶
CreateDeployment @Summary Create deployment @Description Create deployment @Tags Deployment @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param body body body.DeploymentCreate true "Deployment body" @Success 200 {object} body.DeploymentRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 403 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/deployments [post]
func CreateGpuClaim ¶
CreateGpuClaim @Summary Create GpuClaim @Description Create GpuClaim @Tags GpuClaim @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param body body body.GpuClaimCreate true "GpuClaim body" @Success 200 {object} body.GpuClaimCreated @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 403 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuClaims [post]
func CreateGpuLease ¶
CreateGpuLease @Summary Create GPU Lease @Description Create GPU lease @Tags GpuLease @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param body body body.GpuLeaseCreate true "GPU lease" @Success 200 {object} body.GpuLeaseCreated @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuLeases [post]
func CreateResourceMigration ¶
CreateResourceMigration @Summary Create resource migration @Description Create resource migration @Tags ResourceMigration @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param body body body.ResourceMigrationCreate true "Resource Migration Create" @Success 200 {object} body.ResourceMigrationCreated @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/resourceMigrations [post]
func CreateSnapshot ¶
CreateSnapshot @Summary Create snapshot @Description Create snapshot @Tags Snapshot @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param vmId path string true "VM ID" @Success 200 {object} body.VmSnapshotCreated @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/snapshots/{vmId} [post]
func CreateTeam ¶
CreateTeam @Summary Create team @Description Create team @Tags Team @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param body body body.TeamCreate true "Team" @Success 200 {object} body.TeamRead @Failure 400 {object} body.BindingError @Failure 500 {object} sys.ErrorResponse @Router /v2/teams [post]
func CreateVM ¶
CreateVM @Summary Create VM @Description Create VM @Tags VM @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param body body body.VmCreate true "VM body" @Success 200 {object} body.VmCreated @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 403 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/vms [post]
func CreateVmAction ¶
CreateVmAction @Summary Creates a new action @Description Creates a new action @Tags VmAction @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param vmId path string true "VM ID" @Param body body body.VmActionCreate true "actions body" @Success 200 {object} body.VmActionCreated @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/vmActions/{vmId} [post]
func DeleteDeployment ¶
DeleteDeployment @Summary Delete deployment @Description Delete deployment @Tags Deployment @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param deploymentId path string true "Deployment ID" @Success 200 {object} body.DeploymentCreated @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 403 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/deployments/{deploymentId} [delete]
func DeleteGpuClaim ¶
DeleteGpuClaim @Summary Delete GpuClaim @Description Delete GpuClaim @Tags GpuClaim @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param gpuClaimId path string true "GpuClaim ID" @Success 200 {object} body.GpuClaimCreated @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 403 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuClaims/{gpuClaimId} [delete]
func DeleteGpuLease ¶
DeleteGpuLease @Summary Delete GPU lease @Description Delete GPU lease @Tags GpuLease @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param gpuLeaseId path string true "GPU lease ID" @Success 200 {object} body.GpuLeaseDeleted @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuLeases/{gpuLeaseId} [delete]
func DeleteNotification ¶
DeleteNotification godoc @Summary Delete notification @Description Delete notification @Tags Notification @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param notificationId path string true "Notification ID" @Success 200 @Failure 400 {object} sys.ErrorResponse @Router /v2/notifications/{notificationId} [delete]
func DeleteResourceMigration ¶
DeleteResourceMigration @Summary Delete resource migration @Description Delete resource migration @Tags ResourceMigration @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param resourceMigrationId path string true "Resource Migration ID" @Success 204 "No Content" @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/resourceMigrations/{resourceMigrationId} [delete]
func DeleteSM ¶
DeleteSM @Summary Delete storage manager @Description Delete storage manager @Tags StorageManager @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param storageManagerId path string true "Storage manager ID" @Success 200 {object} body.SmDeleted @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/storageManagers/{storageManagerId} [delete]
func DeleteSnapshot ¶
DeleteSnapshot @Summary Delete snapshot @Description Delete snapshot @Tags Snapshot @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param vmId path string true "VM ID" @Param snapshotId path string true "Snapshot ID" @Success 200 {object} body.VmSnapshotDeleted @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/vms/{vmId}/snapshot/{snapshotId} [delete]
func DeleteTeam ¶
DeleteTeam @Summary Delete team @Description Delete team @Tags Team @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param teamId path string true "Team ID" @Success 204 "No Content" @Failure 400 {object} body.BindingError @Failure 500 {object} sys.ErrorResponse @Router /v2/teams/{teamId} [delete]
func DeleteVM ¶
DeleteVM @Summary Delete VM @Description Delete VM @Tags VM @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param vmId path string true "VM ID" @Success 200 {object} body.VmDeleted @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/vms/{vmId} [delete]
func Discover ¶
Discover @Summary Discover @Description Discover @Tags Discover @Produce json @Success 200 {object} body.DiscoverRead @Failure 500 {object} sys.ErrorResponse @Router /v2/discover [get]
func DoDeploymentCommand ¶
DoDeploymentCommand @Summary Do command @Description Do command @Tags Deployment @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param deploymentId path string true "Deployment ID" @Param body body body.DeploymentCommand true "Command body" @Success 204 "No Content" @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 423 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/deployments/{deploymentId}/command [post]
func GetCiConfig ¶
GetCiConfig @Summary Get CI config @Description Get CI config @Tags Deployment @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param deploymentId path string true "Deployment ID" @Success 200 {object} body.CiConfig @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/deployments/{deploymentId}/ciConfig [get]
func GetDeployment ¶
GetDeployment @Summary Get deployment @Description Get deployment @Tags Deployment @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param deploymentId path string true "Deployment ID" @Success 200 {object} body.DeploymentRead @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/deployments/{deploymentId} [get]
func GetGpuClaim ¶
GetGpuClaim @Summary Get GPU claim @Description Get GPU claim @Tags GpuClaim @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param gpuClaimId path string true "GPU claim ID" @Success 200 {object} body.GpuClaimRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 423 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuClaims/{gpuClaimId} [get]
func GetGpuGroup ¶
GetGpuGroup @Summary Get GPU group @Description Get GPU group @Tags GpuGroup @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param gpuGroupId path string true "GPU group ID" @Success 200 {object} body.GpuGroupRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 423 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuGroups/{gpuGroupId} [get]
func GetGpuLease ¶
GetGpuLease @Summary Get GPU lease @Description Get GPU lease @Tags GpuLease @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param gpuLeaseId path string true "GPU lease ID" @Success 200 {object} body.GpuLeaseRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 423 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuLeases/{gpuLeaseId} [get]
func GetJob ¶
GetJob @Summary GetJob job by id @Description GetJob job by id @Tags Job @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param jobId path string true "Job ID" @Success 200 {object} body.JobRead @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/jobs/{jobId} [get]
func GetLogs ¶
GetLogs @Summary Get logs using Server-Sent Events @Description Get logs using Server-Sent Events @Tags Deployment @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param deploymentId path string true "Deployment ID" @Success 200 {string} string @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/deployments/{deploymentId}/logs [get]
func GetNotification ¶
GetNotification godoc @Summary Get notification @Description Get notification @Tags Notification @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param notificationId path string true "Notification ID" @Success 200 {object} body.NotificationRead @Failure 400 {object} sys.ErrorResponse @Router /v2/notifications/{notificationId} [get]
func GetResourceMigration ¶
GetResourceMigration @Summary Get resource migration @Description Get resource migration @Tags ResourceMigration @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param resourceMigrationId path string true "Resource Migration ID" @Success 200 {object} body.ResourceMigrationRead @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/resourceMigrations/{resourceMigrationId} [get]
func GetSM ¶
GetSM @Summary Get storage manager @Description Get storage manager @Tags StorageManager @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param storageManagerId path string true "Storage manager ID" @Success 200 {object} body.SmDeleted @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/storageManagers/{storageManagerId} [get]
func GetSnapshot ¶
GetSnapshot @Summary Get snapshot @Description Get snapshot @Tags Snapshot @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param vmId path string true "VM ID" @Param snapshotId path string true "Snapshot ID" @Success 200 {object} body.VmSnapshotRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/vms/{vmId}/snapshot/{snapshotId} [post]
func GetTeam ¶
GetTeam @Summary Get team @Description Get team @Tags Team @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param teamId path string true "Team ID" @Success 200 {object} body.TeamRead @Failure 400 {object} body.BindingError @Failure 500 {object} sys.ErrorResponse @Router /v2/teams/{teamId} [get]
func GetUser ¶
GetUser @Summary Get user @Description Get user @Tags User @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param userId path string true "User ID" @Param discover query bool false "Discovery mode" @Success 200 {object} body.UserRead @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/users/{userId} [get]
func GetVM ¶
GetVM @Summary Get VM @Description Get VM @Tags VM @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param vmId path string true "VM ID" @Success 200 {object} body.VmRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/vms/{vmId} [get]
func HandleHarborHook ¶
HandleHarborHook @Summary Handle Harbor hook @Description Handle Harbor hook @Tags Deployment @Accept json @Param Authorization header string false "Basic auth token" @Param body body body.HarborWebhook true "Harbor webhook body" @Produce json @Success 204 "No Content" @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/hooks/harbor [post]
func ListDeployments ¶
ListDeployments @Summary List deployments @Description List deployments @Tags Deployment @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param all query bool false "List all" @Param userId query string false "Filter by user ID" @Param shared query bool false "Include shared" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.DeploymentRead @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/deployments [get]
func ListGpuClaims ¶
ListGpuClaims @Summary List GPU claims @Description List GPU claims @Tags GpuClaim @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Param detailed query bool false "Admin detailed list" @Success 200 {array} body.GpuClaimRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 423 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuClaims [get]
func ListGpuGroups ¶
ListGpuGroups @Summary List GPU groups @Description List GPU groups @Tags GpuGroup @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.GpuGroupRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 423 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuGroups [get]
func ListGpuLeases ¶
ListGpuLeases @Summary List GPU leases @Description List GPU leases @Tags GpuLease @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param all query bool false "List all" @Param vmId query string false "Filter by VM ID" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.GpuLeaseRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 423 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuLeases [get]
func ListHosts ¶
ListHosts @Summary List Hosts @Description List Hosts @Tags Host @Produce json @Success 200 {array} body.HostRead @Failure 500 {object} sys.ErrorResponse @Router /v2/hosts [get]
func ListJobs ¶
ListJobs @Summary List jobs @Description List jobs @Tags Job @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param all query bool false "List all" @Param userId query string false "Filter by user ID" @Param type query string false "Filter by type" @Param status query string false "Filter by status" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.JobRead @Router /v2/jobs [get]
func ListNotifications ¶
ListNotifications godoc @Summary List notifications @Description List notifications @Tags Notification @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param all query bool false "List all notifications" @Param userId query string false "Filter by user ID" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.NotificationRead @Failure 400 {object} sys.ErrorResponse @Router /v2/notifications [get]
func ListResourceMigrations ¶
ListResourceMigrations @Summary List resource migrations @Description List resource migrations @Tags ResourceMigration @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.ResourceMigrationRead @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/resourceMigrations [get]
func ListSMs ¶
ListSMs @Summary Get storage manager list @Description Get storage manager list @Tags StorageManager @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param all query bool false "List all" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.SmRead @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/storageManagers [get]storageManager
func ListSnapshots ¶
ListSnapshots @Summary List snapshots @Description List snapshots @Tags Snapshot @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param vmId path string true "Filter by VM ID" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.VmSnapshotRead @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 423 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/snapshots/{vmId} [get]
func ListSystemCapacities ¶
ListSystemCapacities @Summary List system capacities @Description List system capacities @Tags System @Produce json @Param n query int false "n" @Success 200 {array} body.TimestampedSystemCapacities @Failure 400 {object} body.BindingError @Failure 500 {object} sys.ErrorResponse @Router /v2/systemCapacities [get]
func ListSystemStats ¶
ListSystemStats @Summary List system stats @Description List system stats @Tags System @Produce json @Param n query int false "n" @Success 200 {array} body.TimestampedSystemStats @Failure 400 {object} body.BindingError @Failure 500 {object} sys.ErrorResponse @Router /v2/systemStats [get]
func ListSystemStatus ¶
ListSystemStatus @Summary List system stats @Description List system stats @Tags System @Produce json @Param n query int false "n" @Success 200 {array} body.TimestampedSystemStatus @Failure 400 {object} body.BindingError @Failure 500 {object} sys.ErrorResponse @Router /v2/systemStatus [get]
func ListTeams ¶
ListTeams @Summary List teams @Description List teams @Tags Team @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param all query bool false "List all" @Param userId query string false "Filter by user ID" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.TeamRead @Failure 400 {object} body.BindingError @Failure 500 {object} sys.ErrorResponse @Router /v2/teams [get]
func ListUsers ¶
ListUsers @Summary List users @Description List users @Tags User @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param all query bool false "List all" @Param discover query bool false "Discovery mode" @Param search query string false "Search query" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.UserRead @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/users [get]
func ListVMs ¶
ListVMs @Summary List VMs @Description List VMs @Tags VM @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param all query bool false "List all" @Param userId query string false "Filter by user ID" @Param page query int false "Page number" @Param pageSize query int false "Number of items per page" @Success 200 {array} body.VmRead @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/vms [get]
func ListWorkerStatus ¶
ListWorkerStatus @Summary List worker status @Description List of worker status @Tags Status @Produce json @Success 200 {array} body.WorkerStatusRead @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/workerStatus [get]
func ListZones ¶
ListZones @Summary List zones @Description List zones @Tags Zone @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Success 200 {array} body.ZoneRead @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/zones [get]
func MakeVmToLargeForHostErr ¶
MakeVmToLargeForHostErr creates a ErrVmToLargeForHost with the available CPU and RAM
func Metrics ¶
Metrics @Summary Get metrics @Description Get metrics @Tags Metrics @Produce json @Success 200 {object} string @Failure 500 {object} sys.ErrorResponse @Router /v2/metrics [get]
func Register ¶
Register @Summary Register resource @Description Register resource @Tags Register @Produce json @Success 204 @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/register [get]
func UpdateDeployment ¶
UpdateDeployment @Summary Update deployment @Description Update deployment @Tags Deployment @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param deploymentId path string true "Deployment ID" @Param body body body.DeploymentUpdate true "Deployment update" @Success 200 {object} body.DeploymentUpdated @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 403 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/deployments/{deploymentId} [post]
func UpdateGpuLease ¶
UpdateGpuLease @Summary Update GPU lease @Description Update GPU lease @Tags GpuLease @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param gpuLeaseId path string true "GPU lease ID" @Param body body body.GpuLeaseUpdate true "GPU lease" @Success 200 {object} body.GpuLeaseUpdated @Failure 400 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/gpuLeases/{gpuLeaseId} [post]
func UpdateJob ¶
UpdateJob @Summary Update job @Description Update job. Only allowed for admins. @Tags Job @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param jobId path string true "Job ID" @Param body body body.JobUpdate true "Job update" @Success 200 {object} body.JobRead @Router /v2/jobs/{jobId} [post]
func UpdateNotification ¶
UpdateNotification godoc @Summary Update notification @Description Update notification @Tags Notification @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param notificationId path string true "Notification ID" @Param body body body.NotificationUpdate true "Notification update" @Success 200 @Failure 400 {object} sys.ErrorResponse @Router /v2/notifications/{notificationId} [post]
func UpdateResourceMigration ¶
UpdateResourceMigration @Summary Update resource migration @Description Update resource migration @Tags ResourceMigration @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param resourceMigrationId path string true "Resource Migration ID" @Param body body body.ResourceMigrationUpdate true "Resource Migration Update" @Success 200 {object} body.ResourceMigrationUpdated @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/resourceMigrations/{resourceMigrationId} [post]
func UpdateTeam ¶
UpdateTeam godoc @Summary Update team @Description Update team @Tags Team @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param teamId path string true "Team ID" @Param body body body.TeamUpdate true "Team" @Success 200 {object} body.TeamRead @Failure 400 {object} body.BindingError @Failure 500 {object} sys.ErrorResponse @Router /v2/teams/{teamId} [post]
func UpdateUser ¶
UpdateUser @Summary Update user @Description Update user @Tags User @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param userId path string true "User ID" @Param body body body.UserUpdate true "User update" @Success 200 {object} body.UserRead @Failure 400 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/users/{userId} [post]
func UpdateVM ¶
UpdateVM @Summary Update VM @Description Update VM @Tags VM @Accept json @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Param vmId path string true "VM ID" @Param body body body.VmUpdate true "VM update" @Success 200 {object} body.VmUpdated @Failure 400 {object} sys.ErrorResponse @Failure 401 {object} sys.ErrorResponse @Failure 403 {object} sys.ErrorResponse @Failure 404 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/vms/{vmId} [post]
func VerboseListHosts ¶
VerboseListHosts @Summary List Hosts verbose @Description List Hosts verbose @Tags Host @Produce json @Security ApiKeyAuth @Security KeycloakOAuth @Success 200 {array} body.HostVerboseRead @Failure 403 {object} sys.ErrorResponse @Failure 500 {object} sys.ErrorResponse @Router /v2/hosts/verbose [get]
Types ¶
This section is empty.
Source Files
¶
- api_key.go
- deployment.go
- deployment_ci_config.go
- deployment_command.go
- deployment_hook.go
- deployment_logs.go
- discover.go
- errors.go
- gpu_claim.go
- gpu_group.go
- gpu_lease.go
- hosts.go
- job.go
- notification.go
- register.go
- resource_migration.go
- sm.go
- snapshot.go
- system.go
- team.go
- user.go
- utils.go
- virtual_routes.go
- vm.go
- vm_action.go
- worker_status.go
- zone.go