handlers

package
v1.15.3 Latest Latest
Warning

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

Go to latest
Published: Feb 20, 2026 License: BSD-3-Clause Imports: 65 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RegisterApiKeys

func RegisterApiKeys(api huma.API, apiKeyService *services.ApiKeyService)

RegisterApiKeys registers API key management routes using Huma.

func RegisterAppImages

func RegisterAppImages(api huma.API, appImagesService *services.ApplicationImagesService)

RegisterAppImages registers application image routes using Huma.

func RegisterAuth

func RegisterAuth(api huma.API, userService *services.UserService, authService *services.AuthService, oidcService *services.OidcService)

RegisterAuth registers authentication routes using Huma.

func RegisterContainerRegistries

func RegisterContainerRegistries(api huma.API, registryService *services.ContainerRegistryService, environmentService *services.EnvironmentService)

RegisterContainerRegistries registers all container registry endpoints.

func RegisterContainers

func RegisterContainers(api huma.API, containerSvc *services.ContainerService, dockerSvc *services.DockerClientService)

RegisterContainers registers container endpoints.

func RegisterCustomize

func RegisterCustomize(api huma.API, customizeSearchService *services.CustomizeSearchService)

RegisterCustomize registers customization endpoints using Huma.

func RegisterEnvironments

func RegisterEnvironments(api huma.API, environmentService *services.EnvironmentService, settingsService *services.SettingsService, apiKeyService *services.ApiKeyService, eventService *services.EventService, cfg *config.Config)

RegisterEnvironments registers all environment management endpoints.

func RegisterEvents

func RegisterEvents(api huma.API, eventService *services.EventService)

RegisterEvents registers all event management endpoints.

func RegisterFonts

func RegisterFonts(api huma.API, fontService *services.FontService)

RegisterFonts registers font routes using Huma.

func RegisterGitOpsSyncs

func RegisterGitOpsSyncs(api huma.API, syncService *services.GitOpsSyncService)

RegisterGitOpsSyncs registers all GitOps sync endpoints.

func RegisterGitRepositories

func RegisterGitRepositories(api huma.API, repoService *services.GitRepositoryService)

RegisterGitRepositories registers all git repository endpoints.

func RegisterHealth

func RegisterHealth(api huma.API)

RegisterHealth registers health check routes using Huma.

func RegisterImageUpdates

func RegisterImageUpdates(api huma.API, imageUpdateSvc *services.ImageUpdateService)

RegisterImageUpdates registers image update endpoints.

func RegisterImages

func RegisterImages(api huma.API, dockerService *services.DockerClientService, imageService *services.ImageService, imageUpdateService *services.ImageUpdateService, settingsService *services.SettingsService)

RegisterImages registers image management routes using Huma.

func RegisterJobSchedules

func RegisterJobSchedules(api huma.API, jobSvc *services.JobService, envSvc *services.EnvironmentService)

func RegisterNetworks

func RegisterNetworks(api huma.API, networkSvc *services.NetworkService, dockerSvc *services.DockerClientService)

RegisterNetworks registers network endpoints.

func RegisterNotifications

func RegisterNotifications(api huma.API, notificationSvc *services.NotificationService, appriseSvc *services.AppriseService)

RegisterNotifications registers notification endpoints.

func RegisterOidc

func RegisterOidc(api huma.API, authService *services.AuthService, oidcService *services.OidcService, cfg *config.Config)

RegisterOidc registers all OIDC authentication endpoints using Huma.

func RegisterProjects

func RegisterProjects(api huma.API, projectService *services.ProjectService)

RegisterProjects registers project management routes using Huma. Note: WebSocket and streaming endpoints remain as Gin handlers.

func RegisterSettings

func RegisterSettings(api huma.API, settingsService *services.SettingsService, settingsSearchService *services.SettingsSearchService, environmentService *services.EnvironmentService, cfg *config.Config)

RegisterSettings registers settings management routes using Huma.

func RegisterSystem

func RegisterSystem(api huma.API, dockerService *services.DockerClientService, systemService *services.SystemService, upgradeService *services.SystemUpgradeService, cfg *config.Config)

RegisterSystem registers system management endpoints using Huma. Note: WebSocket endpoints (stats) remain in the Gin handler.

func RegisterTemplates

func RegisterTemplates(api huma.API, templateService *services.TemplateService)

RegisterTemplates registers all template management endpoints.

func RegisterUpdater

func RegisterUpdater(api huma.API, updaterService *services.UpdaterService)

RegisterUpdater registers updater management routes using Huma.

func RegisterUsers

func RegisterUsers(api huma.API, userService *services.UserService)

RegisterUsers registers all user management endpoints.

func RegisterVersion

func RegisterVersion(api huma.API, versionService *services.VersionService)

RegisterVersion registers version endpoints.

func RegisterVolumes

func RegisterVolumes(api huma.API, dockerService *services.DockerClientService, volumeService *services.VolumeService)

RegisterVolumes registers volume management routes using Huma.

func RegisterVulnerability

func RegisterVulnerability(api huma.API, vulnerabilityService *services.VulnerabilityService)

RegisterVulnerability registers vulnerability scanning routes using Huma.

Types

type ApiKeyHandler

type ApiKeyHandler struct {
	// contains filtered or unexported fields
}

ApiKeyHandler provides Huma-based API key management endpoints.

func (*ApiKeyHandler) CreateApiKey

func (h *ApiKeyHandler) CreateApiKey(ctx context.Context, input *CreateApiKeyInput) (*CreateApiKeyOutput, error)

CreateApiKey creates a new API key.

func (*ApiKeyHandler) DeleteApiKey

func (h *ApiKeyHandler) DeleteApiKey(ctx context.Context, input *DeleteApiKeyInput) (*DeleteApiKeyOutput, error)

DeleteApiKey deletes an API key.

func (*ApiKeyHandler) GetApiKey

func (h *ApiKeyHandler) GetApiKey(ctx context.Context, input *GetApiKeyInput) (*GetApiKeyOutput, error)

GetApiKey returns details of a specific API key.

func (*ApiKeyHandler) ListApiKeys

func (h *ApiKeyHandler) ListApiKeys(ctx context.Context, input *ListApiKeysInput) (*ListApiKeysOutput, error)

ListApiKeys returns a paginated list of API keys.

func (*ApiKeyHandler) UpdateApiKey

func (h *ApiKeyHandler) UpdateApiKey(ctx context.Context, input *UpdateApiKeyInput) (*UpdateApiKeyOutput, error)

UpdateApiKey updates an existing API key.

type ApiKeyPaginatedResponse

type ApiKeyPaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []apikey.ApiKey         `json:"data"`
	Pagination base.PaginationResponse `json:"pagination"`
}

ApiKeyPaginatedResponse is the paginated response for API keys.

type AppImagesHandler

type AppImagesHandler struct {
	// contains filtered or unexported fields
}

AppImagesHandler provides Huma-based application image endpoints.

func (*AppImagesHandler) GetDefaultProfile

func (h *AppImagesHandler) GetDefaultProfile(ctx context.Context, input *struct{}) (*GetAppImageOutput, error)

GetDefaultProfile returns the default user profile image.

func (*AppImagesHandler) GetFavicon

func (h *AppImagesHandler) GetFavicon(ctx context.Context, input *struct{}) (*GetAppImageOutput, error)

GetFavicon returns the application favicon image.

GetLogo returns the application logo image.

func (*AppImagesHandler) GetLogoEmail

func (h *AppImagesHandler) GetLogoEmail(ctx context.Context, input *struct{}) (*GetAppImageOutput, error)

GetLogoEmail returns the application logo image for emails (PNG).

type AuthHandler

type AuthHandler struct {
	// contains filtered or unexported fields
}

func (*AuthHandler) ChangePassword

func (h *AuthHandler) ChangePassword(ctx context.Context, input *ChangePasswordInput) (*ChangePasswordOutput, error)

ChangePassword changes the current user's password.

func (*AuthHandler) GetCurrentUser

func (h *AuthHandler) GetCurrentUser(ctx context.Context, input *struct{}) (*GetCurrentUserOutput, error)

GetCurrentUser returns the currently authenticated user's information.

func (*AuthHandler) Login

func (h *AuthHandler) Login(ctx context.Context, input *LoginInput) (*LoginOutput, error)

Login authenticates a user and returns tokens.

func (*AuthHandler) Logout

func (h *AuthHandler) Logout(ctx context.Context, input *struct{}) (*LogoutOutput, error)

Logout clears the authentication session.

func (*AuthHandler) RefreshToken

func (h *AuthHandler) RefreshToken(ctx context.Context, input *RefreshTokenInput) (*RefreshTokenOutput, error)

RefreshToken obtains a new access token using a refresh token.

type BackupHasPathInput

type BackupHasPathInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	BackupID      string `path:"backupId" doc:"Backup ID"`
	Path          string `query:"path" doc:"Path to check"`
}

type BackupHasPathOutput

type BackupHasPathOutput struct {
	Body base.ApiResponse[BackupHasPathResponse]
}

type BackupHasPathResponse

type BackupHasPathResponse struct {
	Exists bool `json:"exists"`
}

type BrowseDirectoryInput

type BrowseDirectoryInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	Path          string `query:"path" default:"/" doc:"Directory path to browse"`
}

type BrowseDirectoryOutput

type BrowseDirectoryOutput struct {
	Body base.ApiResponse[[]volumetypes.FileEntry]
}

type BrowseFilesInput

type BrowseFilesInput struct {
	ID     string `path:"id" doc:"Repository ID"`
	Branch string `query:"branch" doc:"Branch to browse"`
	Path   string `query:"path" doc:"Path within repository (optional)"`
}

type BrowseFilesOutput

type BrowseFilesOutput struct {
	Body base.ApiResponse[gitops.BrowseResponse]
}

type BrowseSyncFilesInput

type BrowseSyncFilesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	SyncID        string `path:"syncId" doc:"Sync ID"`
	Path          string `query:"path" doc:"Path to browse (optional)"`
}

type BrowseSyncFilesOutput

type BrowseSyncFilesOutput struct {
	Body base.ApiResponse[gitops.BrowseResponse]
}

type ChangePasswordInput

type ChangePasswordInput struct {
	Body auth.PasswordChange
}

type ChangePasswordOutput

type ChangePasswordOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type CheckAllImagesInput

type CheckAllImagesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          imageupdate.CheckAllImagesRequest
}

type CheckAllImagesOutput

type CheckAllImagesOutput struct {
	Body base.ApiResponse[imageupdate.BatchResponse]
}

type CheckImageUpdateByIDInput

type CheckImageUpdateByIDInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ImageID       string `path:"imageId" doc:"Image ID"`
}

type CheckImageUpdateByIDOutput

type CheckImageUpdateByIDOutput struct {
	Body base.ApiResponse[imageupdate.Response]
}

type CheckImageUpdateInput

type CheckImageUpdateInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ImageRef      string `query:"imageRef" doc:"Image reference"`
}

type CheckImageUpdateOutput

type CheckImageUpdateOutput struct {
	Body base.ApiResponse[imageupdate.Response]
}

type CheckMultipleImagesInput

type CheckMultipleImagesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          imageupdate.BatchImageUpdateRequest
}

type CheckMultipleImagesOutput

type CheckMultipleImagesOutput struct {
	Body base.ApiResponse[imageupdate.BatchResponse]
}

type CheckUpgradeInput

type CheckUpgradeInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type CheckUpgradeOutput

type CheckUpgradeOutput struct {
	Body UpgradeCheckResultData
}

type ContainerActionInput

type ContainerActionInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ContainerID   string `path:"containerId" doc:"Container ID"`
}

type ContainerActionOutput

type ContainerActionOutput struct {
	Body ContainerActionResponse
}

type ContainerActionResponse

type ContainerActionResponse struct {
	Success bool                 `json:"success"`
	Data    base.MessageResponse `json:"data"`
}

ContainerActionResponse is a dedicated response type

type ContainerCreatedResponse

type ContainerCreatedResponse struct {
	Success bool                   `json:"success"`
	Data    containertypes.Created `json:"data"`
}

ContainerCreatedResponse is a dedicated response type

type ContainerDetailsResponse

type ContainerDetailsResponse struct {
	Success bool                   `json:"success"`
	Data    containertypes.Details `json:"data"`
}

ContainerDetailsResponse is a dedicated response type

type ContainerHandler

type ContainerHandler struct {
	// contains filtered or unexported fields
}

func (*ContainerHandler) CreateContainer

func (*ContainerHandler) DeleteContainer

func (*ContainerHandler) GetContainer

func (h *ContainerHandler) GetContainer(ctx context.Context, input *GetContainerInput) (*GetContainerOutput, error)

func (*ContainerHandler) GetContainerStatusCounts

func (*ContainerHandler) ListContainers

func (*ContainerHandler) RestartContainer

func (h *ContainerHandler) RestartContainer(ctx context.Context, input *ContainerActionInput) (*ContainerActionOutput, error)

func (*ContainerHandler) StartContainer

func (*ContainerHandler) StopContainer

type ContainerPaginatedResponse

type ContainerPaginatedResponse struct {
	Success    bool                        `json:"success"`
	Data       []containertypes.Summary    `json:"data"`
	Counts     containertypes.StatusCounts `json:"counts"`
	Pagination base.PaginationResponse     `json:"pagination"`
}

Paginated response

type ContainerRegistryHandler

type ContainerRegistryHandler struct {
	// contains filtered or unexported fields
}

ContainerRegistryHandler handles container registry management endpoints.

func (*ContainerRegistryHandler) CreateRegistry

CreateRegistry creates a new container registry.

func (*ContainerRegistryHandler) DeleteRegistry

DeleteRegistry deletes a container registry.

func (*ContainerRegistryHandler) GetRegistry

GetRegistry returns a container registry by ID.

func (*ContainerRegistryHandler) ListRegistries

ListRegistries returns a paginated list of container registries.

func (*ContainerRegistryHandler) SyncRegistries

SyncRegistries syncs container registries from a remote source.

func (*ContainerRegistryHandler) TestRegistry

TestRegistry tests connectivity to a container registry.

func (*ContainerRegistryHandler) UpdateRegistry

UpdateRegistry updates a container registry.

type ContainerRegistryPaginatedResponse

type ContainerRegistryPaginatedResponse struct {
	Success    bool                                  `json:"success"`
	Data       []containerregistry.ContainerRegistry `json:"data"`
	Pagination base.PaginationResponse               `json:"pagination"`
}

ContainerRegistryPaginatedResponse is the paginated response for container registries.

type ContainerStatusCountsResponse

type ContainerStatusCountsResponse struct {
	Success bool                        `json:"success"`
	Data    containertypes.StatusCounts `json:"data"`
}

ContainerStatusCountsResponse is a dedicated response type to avoid schema name collision

type ConvertDockerRunInput

type ConvertDockerRunInput struct {
	EnvironmentID string                         `path:"id" doc:"Environment ID"`
	Body          models.ConvertDockerRunRequest `doc:"Docker run command"`
}

type ConvertDockerRunOutput

type ConvertDockerRunOutput struct {
	Body models.ConvertDockerRunResponse
}

type CreateApiKeyInput

type CreateApiKeyInput struct {
	Body apikey.CreateApiKey
}

type CreateApiKeyOutput

type CreateApiKeyOutput struct {
	Body base.ApiResponse[apikey.ApiKeyCreatedDto]
}

type CreateBackupInput

type CreateBackupInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
}

type CreateBackupOutput

type CreateBackupOutput struct {
	Body base.ApiResponse[*models.VolumeBackup]
}

type CreateContainerInput

type CreateContainerInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          containertypes.Create
}

type CreateContainerOutput

type CreateContainerOutput struct {
	Body ContainerCreatedResponse
}

type CreateContainerRegistryInput

type CreateContainerRegistryInput struct {
	Body models.CreateContainerRegistryRequest
}

type CreateContainerRegistryOutput

type CreateContainerRegistryOutput struct {
	Body base.ApiResponse[containerregistry.ContainerRegistry]
}

type CreateDirectoryInput

type CreateDirectoryInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	Path          string `query:"path" doc:"Directory path to create"`
}

type CreateEnvironmentInput

type CreateEnvironmentInput struct {
	Body environment.Create
}

type CreateEnvironmentOutput

type CreateEnvironmentOutput struct {
	Body base.ApiResponse[EnvironmentWithApiKey]
}

type CreateEventInput

type CreateEventInput struct {
	Body event.CreateEvent
}

type CreateEventOutput

type CreateEventOutput struct {
	Body base.ApiResponse[event.Event]
}

type CreateGitOpsSyncInput

type CreateGitOpsSyncInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          gitops.CreateSyncRequest
}

type CreateGitOpsSyncOutput

type CreateGitOpsSyncOutput struct {
	Body base.ApiResponse[gitops.GitOpsSync]
}

type CreateGitRepositoryInput

type CreateGitRepositoryInput struct {
	Body models.CreateGitRepositoryRequest
}

type CreateGitRepositoryOutput

type CreateGitRepositoryOutput struct {
	Body base.ApiResponse[gitops.GitRepository]
}

type CreateNetworkInput

type CreateNetworkInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          networktypes.CreateRequest
}

type CreateNetworkOutput

type CreateNetworkOutput struct {
	Body NetworkCreatedApiResponse
}

type CreateOrUpdateAppriseSettingsInput

type CreateOrUpdateAppriseSettingsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          notification.AppriseUpdate
}

type CreateOrUpdateAppriseSettingsOutput

type CreateOrUpdateAppriseSettingsOutput struct {
	Body notification.AppriseResponse
}

type CreateOrUpdateNotificationSettingsInput

type CreateOrUpdateNotificationSettingsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          notification.Update
}

type CreateOrUpdateNotificationSettingsOutput

type CreateOrUpdateNotificationSettingsOutput struct {
	Body notification.Response
}

type CreateProjectInput

type CreateProjectInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          project.CreateProject
}

type CreateProjectOutput

type CreateProjectOutput struct {
	Body base.ApiResponse[project.CreateReponse]
}

type CreateTemplateInput

type CreateTemplateInput struct {
	Body template.CreateRequest
}

type CreateTemplateOutput

type CreateTemplateOutput struct {
	Body base.ApiResponse[template.Template]
}

type CreateTemplateRegistryInput

type CreateTemplateRegistryInput struct {
	Body template.CreateRegistryRequest
}

type CreateTemplateRegistryOutput

type CreateTemplateRegistryOutput struct {
	Body base.ApiResponse[template.TemplateRegistry]
}

type CreateUserInput

type CreateUserInput struct {
	Body user.CreateUser
}

type CreateUserOutput

type CreateUserOutput struct {
	Body base.ApiResponse[user.User]
}

type CreateVolumeInput

type CreateVolumeInput struct {
	EnvironmentID string             `path:"id" doc:"Environment ID"`
	Body          volumetypes.Create `doc:"Volume creation data"`
}

type CreateVolumeOutput

type CreateVolumeOutput struct {
	Body base.ApiResponse[*volumetypes.Volume]
}

type CustomizeHandler

type CustomizeHandler struct {
	// contains filtered or unexported fields
}

CustomizeHandler handles customization search endpoints.

func (*CustomizeHandler) GetCategories

GetCategories returns all available customization categories.

func (*CustomizeHandler) Search

Search searches customization options by query.

type DeleteApiKeyInput

type DeleteApiKeyInput struct {
	ID string `path:"id" doc:"API key ID"`
}

type DeleteApiKeyOutput

type DeleteApiKeyOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteBackupInput

type DeleteBackupInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	BackupID      string `path:"backupId" doc:"Backup ID"`
}

type DeleteBackupOutput

type DeleteBackupOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteContainerInput

type DeleteContainerInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ContainerID   string `path:"containerId" doc:"Container ID"`
	Force         bool   `query:"force" default:"false" doc:"Force delete running container"`
	RemoveVolumes bool   `query:"volumes" default:"false" doc:"Remove associated volumes"`
}

type DeleteContainerOutput

type DeleteContainerOutput struct {
	Body ContainerActionResponse
}

type DeleteContainerRegistryInput

type DeleteContainerRegistryInput struct {
	ID string `path:"id" doc:"Registry ID"`
}

type DeleteContainerRegistryOutput

type DeleteContainerRegistryOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteEnvironmentInput

type DeleteEnvironmentInput struct {
	ID string `path:"id" doc:"Environment ID"`
}

type DeleteEnvironmentOutput

type DeleteEnvironmentOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteEventInput

type DeleteEventInput struct {
	EventID string `path:"eventId" doc:"Event ID"`
}

type DeleteEventOutput

type DeleteEventOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteFileInput

type DeleteFileInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	Path          string `query:"path" doc:"File or directory path to delete"`
}

type DeleteGitOpsSyncInput

type DeleteGitOpsSyncInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	SyncID        string `path:"syncId" doc:"Sync ID"`
}

type DeleteGitOpsSyncOutput

type DeleteGitOpsSyncOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteGitRepositoryInput

type DeleteGitRepositoryInput struct {
	ID string `path:"id" doc:"Repository ID"`
}

type DeleteGitRepositoryOutput

type DeleteGitRepositoryOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteNetworkInput

type DeleteNetworkInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	NetworkID     string `path:"networkId" doc:"Network ID"`
}

type DeleteNetworkOutput

type DeleteNetworkOutput struct {
	Body NetworkMessageApiResponse
}

type DeleteNotificationSettingsInput

type DeleteNotificationSettingsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Provider      string `path:"provider" doc:"Provider"`
}

type DeleteNotificationSettingsOutput

type DeleteNotificationSettingsOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteTemplateInput

type DeleteTemplateInput struct {
	ID string `path:"id" doc:"Template ID"`
}

type DeleteTemplateOutput

type DeleteTemplateOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteTemplateRegistryInput

type DeleteTemplateRegistryInput struct {
	ID string `path:"id" doc:"Registry ID"`
}

type DeleteTemplateRegistryOutput

type DeleteTemplateRegistryOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeleteUserInput

type DeleteUserInput struct {
	UserID string `path:"userId" doc:"User ID"`
}

type DeleteUserOutput

type DeleteUserOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeployProjectInput

type DeployProjectInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
}

type DeployProjectOutput

type DeployProjectOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DeploymentSnippet

type DeploymentSnippet struct {
	DockerRun     string `json:"dockerRun" doc:"Docker run command snippet"`
	DockerCompose string `json:"dockerCompose" doc:"Docker compose YAML snippet"`
}

type DestroyProjectInput

type DestroyProjectInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
	Body          *project.Destroy
}

type DestroyProjectOutput

type DestroyProjectOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DownProjectInput

type DownProjectInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
}

type DownProjectOutput

type DownProjectOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type DownloadBackupInput

type DownloadBackupInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	BackupID      string `path:"backupId" doc:"Backup ID"`
}

type DownloadBackupOutput

type DownloadBackupOutput struct {
	ContentType        string `header:"Content-Type"`
	ContentDisposition string `header:"Content-Disposition"`
	ContentLength      int64  `header:"Content-Length"`
	Body               io.ReadCloser
}

type DownloadFileInput

type DownloadFileInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	Path          string `query:"path" doc:"File path"`
}

type DownloadFileOutput

type DownloadFileOutput struct {
	ContentType        string `header:"Content-Type"`
	ContentDisposition string `header:"Content-Disposition"`
	ContentLength      int64  `header:"Content-Length"`
	Body               io.ReadCloser
}

type DownloadTemplateInput

type DownloadTemplateInput struct {
	ID string `path:"id" doc:"Template ID"`
}

type DownloadTemplateOutput

type DownloadTemplateOutput struct {
	Body base.ApiResponse[template.Template]
}

type EnvironmentHandler

type EnvironmentHandler struct {
	// contains filtered or unexported fields
}

EnvironmentHandler handles environment management endpoints.

func (*EnvironmentHandler) CreateEnvironment

CreateEnvironment creates a new environment.

func (*EnvironmentHandler) DeleteEnvironment

DeleteEnvironment deletes an environment.

func (*EnvironmentHandler) GetDeploymentSnippets

GetDeploymentSnippets returns deployment snippets for an environment.

func (*EnvironmentHandler) GetEnvironment

GetEnvironment returns an environment by ID.

func (*EnvironmentHandler) GetEnvironmentVersion

GetEnvironmentVersion returns the version of a remote environment.

func (*EnvironmentHandler) ListEnvironments

ListEnvironments returns a paginated list of environments.

func (*EnvironmentHandler) PairAgent

func (h *EnvironmentHandler) PairAgent(ctx context.Context, input *PairAgentInput) (*PairAgentOutput, error)

PairAgent generates or rotates the local agent pairing token.

func (*EnvironmentHandler) PairEnvironment

PairEnvironment handles agent pairing callback with API key.

func (*EnvironmentHandler) SyncEnvironment

SyncEnvironment syncs container registries and git repositories to an environment.

func (*EnvironmentHandler) TestConnection

TestConnection tests connectivity to an environment.

func (*EnvironmentHandler) UpdateEnvironment

UpdateEnvironment updates an environment.

func (*EnvironmentHandler) UpdateHeartbeat

UpdateHeartbeat updates the heartbeat for an environment.

type EnvironmentPaginatedResponse

type EnvironmentPaginatedResponse struct {
	Success    bool                      `json:"success"`
	Data       []environment.Environment `json:"data"`
	Pagination base.PaginationResponse   `json:"pagination"`
}

EnvironmentPaginatedResponse is the paginated response for environments.

type EnvironmentWithApiKey

type EnvironmentWithApiKey struct {
	environment.Environment
	ApiKey *string `json:"apiKey,omitempty" doc:"API key for pairing (only shown once during creation)"` //nolint:gosec // response schema requires apiKey naming
}

type EventHandler

type EventHandler struct {
	// contains filtered or unexported fields
}

EventHandler handles event management endpoints.

func (*EventHandler) CreateEvent

func (h *EventHandler) CreateEvent(ctx context.Context, input *CreateEventInput) (*CreateEventOutput, error)

CreateEvent creates a new event.

func (*EventHandler) DeleteEvent

func (h *EventHandler) DeleteEvent(ctx context.Context, input *DeleteEventInput) (*DeleteEventOutput, error)

DeleteEvent deletes an event.

func (*EventHandler) GetEventsByEnvironment

GetEventsByEnvironment returns events for a specific environment.

func (*EventHandler) ListEvents

func (h *EventHandler) ListEvents(ctx context.Context, input *ListEventsInput) (*ListEventsOutput, error)

ListEvents returns a paginated list of events.

type EventPaginatedResponse

type EventPaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []event.Event           `json:"data"`
	Pagination base.PaginationResponse `json:"pagination"`
}

EventPaginatedResponse is the paginated response for events.

type ExchangeDeviceTokenInput

type ExchangeDeviceTokenInput struct {
	Body auth.OidcDeviceTokenRequest
}

type ExchangeDeviceTokenOutput

type ExchangeDeviceTokenOutput struct {
	SetCookie []string `header:"Set-Cookie" doc:"Session token cookie"`
	Body      auth.OidcDeviceTokenResponse
}

type FetchTemplateRegistryInput

type FetchTemplateRegistryInput struct {
	URL string `query:"url" required:"true" doc:"Registry URL"`
}

type FetchTemplateRegistryOutput

type FetchTemplateRegistryOutput struct {
	Body base.ApiResponse[template.RemoteRegistry]
}

type FileContentResponse

type FileContentResponse struct {
	Content  []byte `json:"content"`
	MimeType string `json:"mimeType"`
}

type FontsHandler

type FontsHandler struct {
	// contains filtered or unexported fields
}

FontsHandler provides Huma-based font endpoints.

func (*FontsHandler) GetMonoFont

func (h *FontsHandler) GetMonoFont(ctx context.Context, input *struct{}) (*GetFontOutput, error)

GetMonoFont returns the monospace font.

func (*FontsHandler) GetSansFont

func (h *FontsHandler) GetSansFont(ctx context.Context, input *struct{}) (*GetFontOutput, error)

GetSansFont returns the sans-serif font.

func (*FontsHandler) GetSerifFont

func (h *FontsHandler) GetSerifFont(ctx context.Context, input *struct{}) (*GetFontOutput, error)

GetSerifFont returns the serif font.

type GetAllNotificationSettingsInput

type GetAllNotificationSettingsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetAllNotificationSettingsOutput

type GetAllNotificationSettingsOutput struct {
	Body []notification.Response
}

type GetAllTemplatesInput

type GetAllTemplatesInput struct{}

type GetAllTemplatesOutput

type GetAllTemplatesOutput struct {
	Body base.ApiResponse[[]template.Template]
}

type GetApiKeyInput

type GetApiKeyInput struct {
	ID string `path:"id" doc:"API key ID"`
}

type GetApiKeyOutput

type GetApiKeyOutput struct {
	Body base.ApiResponse[apikey.ApiKey]
}

type GetAppImageOutput

type GetAppImageOutput struct {
	ContentType  string `header:"Content-Type"`
	CacheControl string `header:"Cache-Control"`
	Body         []byte
}

type GetAppVersionInput

type GetAppVersionInput struct{}

type GetAppVersionOutput

type GetAppVersionOutput struct {
	Body version.Info
}

type GetAppriseSettingsInput

type GetAppriseSettingsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetAppriseSettingsOutput

type GetAppriseSettingsOutput struct {
	Body notification.AppriseResponse
}

type GetCategoriesOutput

type GetCategoriesOutput struct {
	Body []category.Category
}

type GetContainerInput

type GetContainerInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ContainerID   string `path:"containerId" doc:"Container ID"`
}

type GetContainerOutput

type GetContainerOutput struct {
	Body ContainerDetailsResponse
}

type GetContainerRegistryInput

type GetContainerRegistryInput struct {
	ID string `path:"id" doc:"Registry ID"`
}

type GetContainerRegistryOutput

type GetContainerRegistryOutput struct {
	Body base.ApiResponse[containerregistry.ContainerRegistry]
}

type GetContainerStatusCountsInput

type GetContainerStatusCountsInput struct {
	EnvironmentID   string `path:"id" doc:"Environment ID"`
	IncludeInternal bool   `query:"includeInternal" default:"false" doc:"Include internal containers"`
}

type GetContainerStatusCountsOutput

type GetContainerStatusCountsOutput struct {
	Body ContainerStatusCountsResponse
}

type GetCurrentUserOutput

type GetCurrentUserOutput struct {
	Body base.ApiResponse[user.User]
}

type GetCustomizeCategoriesInput

type GetCustomizeCategoriesInput struct{}

type GetCustomizeCategoriesOutput

type GetCustomizeCategoriesOutput struct {
	Body []category.Category
}

type GetDefaultTemplatesInput

type GetDefaultTemplatesInput struct{}

type GetDefaultTemplatesOutput

type GetDefaultTemplatesOutput struct {
	Body base.ApiResponse[template.DefaultTemplatesResponse]
}

type GetDeploymentSnippetsInput

type GetDeploymentSnippetsInput struct {
	ID string `path:"id" doc:"Environment ID"`
}

type GetDeploymentSnippetsOutput

type GetDeploymentSnippetsOutput struct {
	Body base.ApiResponse[DeploymentSnippet]
}

type GetDockerInfoInput

type GetDockerInfoInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetDockerInfoOutput

type GetDockerInfoOutput struct {
	Body dockerinfo.Info
}

type GetEnvironmentInput

type GetEnvironmentInput struct {
	ID string `path:"id" doc:"Environment ID"`
}

type GetEnvironmentOutput

type GetEnvironmentOutput struct {
	Body base.ApiResponse[environment.Environment]
}

type GetEnvironmentSummaryInput

type GetEnvironmentSummaryInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetEnvironmentSummaryOutput

type GetEnvironmentSummaryOutput struct {
	Body base.ApiResponse[vulnerability.EnvironmentVulnerabilitySummary]
}

type GetEnvironmentVersionInput

type GetEnvironmentVersionInput struct {
	ID string `path:"id" doc:"Environment ID"`
}

type GetEnvironmentVersionOutput

type GetEnvironmentVersionOutput struct {
	Body base.ApiResponse[version.Info]
}

type GetEventsByEnvironmentInput

type GetEventsByEnvironmentInput struct {
	EnvironmentID string `path:"environmentId" doc:"Environment ID"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Column to sort by"`
	Order         string `query:"order" default:"asc" doc:"Sort direction"`
	Start         int    `query:"start" default:"0" doc:"Start index"`
	Limit         int    `query:"limit" default:"20" doc:"Limit"`
	Severity      string `query:"severity" doc:"Filter by severity"`
	Type          string `query:"type" doc:"Filter by event type"`
}

type GetEventsByEnvironmentOutput

type GetEventsByEnvironmentOutput struct {
	Body EventPaginatedResponse
}

type GetFileContentInput

type GetFileContentInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	Path          string `query:"path" doc:"File path"`
	MaxBytes      int64  `query:"maxBytes" default:"1048576" doc:"Maximum bytes to read (default 1MB)"`
}

type GetFileContentOutput

type GetFileContentOutput struct {
	Body base.ApiResponse[FileContentResponse]
}

type GetFontOutput

type GetFontOutput struct {
	ContentType  string `header:"Content-Type"`
	CacheControl string `header:"Cache-Control"`
	Body         []byte
}

type GetGitOpsSyncInput

type GetGitOpsSyncInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	SyncID        string `path:"syncId" doc:"Sync ID"`
}

type GetGitOpsSyncOutput

type GetGitOpsSyncOutput struct {
	Body base.ApiResponse[gitops.GitOpsSync]
}

type GetGitRepositoryInput

type GetGitRepositoryInput struct {
	ID string `path:"id" doc:"Repository ID"`
}

type GetGitRepositoryOutput

type GetGitRepositoryOutput struct {
	Body base.ApiResponse[gitops.GitRepository]
}

type GetGlobalVariablesInput

type GetGlobalVariablesInput struct{}

type GetGlobalVariablesOutput

type GetGlobalVariablesOutput struct {
	Body base.ApiResponse[[]env.Variable]
}

type GetImageInput

type GetImageInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ImageID       string `path:"imageId" doc:"Image ID"`
}

type GetImageOutput

type GetImageOutput struct {
	Body base.ApiResponse[image.DetailSummary]
}

type GetImageUsageCountsInput

type GetImageUsageCountsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetImageUsageCountsOutput

type GetImageUsageCountsOutput struct {
	Body ImageUsageCountsResponse
}

type GetJobSchedulesInput

type GetJobSchedulesInput struct {
	ID string `path:"id" doc:"Environment ID"`
}

type GetJobSchedulesOutput

type GetJobSchedulesOutput struct {
	Body jobschedule.Config
}

type GetJobsOutput

type GetJobsOutput struct {
	Body jobschedule.JobListResponse
}

type GetLogoInput

type GetLogoInput struct {
	Full  bool   `query:"full" default:"false" doc:"Return full logo instead of icon"`
	Color string `query:"color" doc:"Optional accent color override for preview (e.g., 'oklch(0.65 0.2 150)')"`
}

type GetNetworkCountsInput

type GetNetworkCountsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetNetworkCountsOutput

type GetNetworkCountsOutput struct {
	Body NetworkCountsApiResponse
}

type GetNetworkInput

type GetNetworkInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	NetworkID     string `path:"networkId" doc:"Network ID"`
	Sort          string `query:"sort" default:"name"`
	Order         string `query:"order" default:"asc"`
}

type GetNetworkOutput

type GetNetworkOutput struct {
	Body NetworkInspectApiResponse
}

type GetNotificationSettingsInput

type GetNotificationSettingsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Provider      string `path:"provider" doc:"Provider"`
}

type GetNotificationSettingsOutput

type GetNotificationSettingsOutput struct {
	Body notification.Response
}

type GetOidcAuthUrlInput

type GetOidcAuthUrlInput struct {
	OidcHeaders
	Body auth.OidcAuthUrlRequest
}

type GetOidcAuthUrlOutput

type GetOidcAuthUrlOutput struct {
	SetCookie string `header:"Set-Cookie" doc:"OIDC state cookie"`
	Body      auth.OidcAuthUrlResponse
}

type GetOidcConfigInput

type GetOidcConfigInput struct {
	OidcHeaders
}

type GetOidcConfigOutput

type GetOidcConfigOutput struct {
	Body auth.OidcConfigResponse
}

type GetOidcStatusInput

type GetOidcStatusInput struct{}

type GetOidcStatusOutput

type GetOidcStatusOutput struct {
	Body auth.OidcStatusInfo
}

type GetProjectInput

type GetProjectInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
}

type GetProjectOutput

type GetProjectOutput struct {
	Body base.ApiResponse[project.Details]
}

type GetProjectStatusCountsInput

type GetProjectStatusCountsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetProjectStatusCountsOutput

type GetProjectStatusCountsOutput struct {
	Body base.ApiResponse[project.StatusCounts]
}

type GetPublicSettingsInput

type GetPublicSettingsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetPublicSettingsOutput

type GetPublicSettingsOutput struct {
	Body []settings.PublicSetting
}

type GetScanResultInput

type GetScanResultInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ImageID       string `path:"imageId" doc:"Image ID"`
}

type GetScanResultOutput

type GetScanResultOutput struct {
	Body base.ApiResponse[vulnerability.ScanResult]
}

type GetScanSummariesInput

type GetScanSummariesInput struct {
	EnvironmentID string                             `path:"id" doc:"Environment ID"`
	Body          vulnerability.ScanSummariesRequest `doc:"Batch scan summary request"`
}

type GetScanSummariesOutput

type GetScanSummariesOutput struct {
	Body base.ApiResponse[vulnerability.ScanSummariesResponse]
}

type GetScanSummaryInput

type GetScanSummaryInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ImageID       string `path:"imageId" doc:"Image ID"`
}

type GetScanSummaryOutput

type GetScanSummaryOutput struct {
	Body base.ApiResponse[vulnerability.ScanSummary]
}

type GetScannerStatusInput

type GetScannerStatusInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetScannerStatusOutput

type GetScannerStatusOutput struct {
	Body base.ApiResponse[ScannerStatus]
}

type GetSettingsInput

type GetSettingsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetSettingsOutput

type GetSettingsOutput struct {
	Body []settings.PublicSetting
}

type GetSyncStatusInput

type GetSyncStatusInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	SyncID        string `path:"syncId" doc:"Sync ID"`
}

type GetSyncStatusOutput

type GetSyncStatusOutput struct {
	Body base.ApiResponse[gitops.SyncStatus]
}

type GetTemplateContentInput

type GetTemplateContentInput struct {
	ID string `path:"id" doc:"Template ID"`
}

type GetTemplateContentOutput

type GetTemplateContentOutput struct {
	Body base.ApiResponse[template.TemplateContent]
}

type GetTemplateInput

type GetTemplateInput struct {
	ID string `path:"id" doc:"Template ID"`
}

type GetTemplateOutput

type GetTemplateOutput struct {
	Body base.ApiResponse[template.Template]
}

type GetTemplateRegistriesInput

type GetTemplateRegistriesInput struct{}

type GetTemplateRegistriesOutput

type GetTemplateRegistriesOutput struct {
	Body base.ApiResponse[[]template.TemplateRegistry]
}

type GetUpdateSummaryInput

type GetUpdateSummaryInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetUpdateSummaryOutput

type GetUpdateSummaryOutput struct {
	Body base.ApiResponse[imageupdate.Summary]
}

type GetUpdaterHistoryInput

type GetUpdaterHistoryInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Limit         int    `query:"limit" default:"50" doc:"Number of history entries to return"`
}

type GetUpdaterHistoryOutput

type GetUpdaterHistoryOutput struct {
	Body base.ApiResponse[[]models.AutoUpdateRecord]
}

type GetUpdaterStatusInput

type GetUpdaterStatusInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetUpdaterStatusOutput

type GetUpdaterStatusOutput struct {
	Body base.ApiResponse[updater.Status]
}

type GetUserInput

type GetUserInput struct {
	UserID string `path:"userId" doc:"User ID"`
}

type GetUserOutput

type GetUserOutput struct {
	Body base.ApiResponse[user.User]
}

type GetVersionInput

type GetVersionInput struct {
	Current string `query:"current" doc:"Current version to compare against"`
}

type GetVersionOutput

type GetVersionOutput struct {
	Body version.Check
}

type GetVolumeInput

type GetVolumeInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
}

type GetVolumeOutput

type GetVolumeOutput struct {
	Body base.ApiResponse[*volumetypes.Volume]
}

type GetVolumeSizesInput

type GetVolumeSizesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type GetVolumeSizesOutput

type GetVolumeSizesOutput struct {
	Body base.ApiResponse[[]VolumeSizeInfo]
}

type GetVolumeUsageCountsInput

type GetVolumeUsageCountsInput struct {
	EnvironmentID   string `path:"id" doc:"Environment ID"`
	IncludeInternal bool   `query:"includeInternal" default:"false" doc:"Include internal volumes"`
}

type GetVolumeUsageCountsOutput

type GetVolumeUsageCountsOutput struct {
	Body base.ApiResponse[VolumeUsageCountsData]
}

type GetVolumeUsageInput

type GetVolumeUsageInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
}

type GetVolumeUsageOutput

type GetVolumeUsageOutput struct {
	Body base.ApiResponse[VolumeUsageResponse]
}

type GitOpsSyncHandler

type GitOpsSyncHandler struct {
	// contains filtered or unexported fields
}

GitOpsSyncHandler handles GitOps sync management endpoints.

func (*GitOpsSyncHandler) BrowseFiles

BrowseFiles returns the file tree at the specified path in the repository.

func (*GitOpsSyncHandler) CreateSync

CreateSync creates a new GitOps sync.

func (*GitOpsSyncHandler) DeleteSync

DeleteSync deletes a GitOps sync by ID.

func (*GitOpsSyncHandler) GetStatus

GetStatus returns the current status of a GitOps sync.

func (*GitOpsSyncHandler) GetSync

GetSync returns a GitOps sync by ID.

func (*GitOpsSyncHandler) ImportSyncs

ImportSyncs imports multiple GitOps syncs.

func (*GitOpsSyncHandler) ListSyncs

ListSyncs returns a paginated list of GitOps syncs.

func (*GitOpsSyncHandler) PerformSync

func (h *GitOpsSyncHandler) PerformSync(ctx context.Context, input *PerformSyncInput) (*PerformSyncOutput, error)

PerformSync manually triggers a sync operation.

func (*GitOpsSyncHandler) UpdateSync

UpdateSync updates an existing GitOps sync.

type GitOpsSyncPaginatedResponse

type GitOpsSyncPaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []gitops.GitOpsSync     `json:"data"`
	Counts     gitops.SyncCounts       `json:"counts"`
	Pagination base.PaginationResponse `json:"pagination"`
}

GitOpsSyncPaginatedResponse is the paginated response for GitOps syncs.

type GitRepositoryHandler

type GitRepositoryHandler struct {
	// contains filtered or unexported fields
}

GitRepositoryHandler handles git repository management endpoints.

func (*GitRepositoryHandler) BrowseFiles

BrowseFiles returns files and directories from a git repository.

func (*GitRepositoryHandler) CreateRepository

CreateRepository creates a new git repository.

func (*GitRepositoryHandler) DeleteRepository

DeleteRepository deletes a git repository by ID.

func (*GitRepositoryHandler) GetRepository

GetRepository returns a git repository by ID.

func (*GitRepositoryHandler) ListBranches

ListBranches returns all branches from a git repository.

func (*GitRepositoryHandler) ListRepositories

ListRepositories returns a paginated list of git repositories.

func (*GitRepositoryHandler) SyncRepositories

SyncRepositories syncs git repositories from a manager to this agent instance.

func (*GitRepositoryHandler) TestRepository

TestRepository tests connectivity and authentication to a git repository.

func (*GitRepositoryHandler) UpdateRepository

UpdateRepository updates an existing git repository.

type GitRepositoryPaginatedResponse

type GitRepositoryPaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []gitops.GitRepository  `json:"data"`
	Pagination base.PaginationResponse `json:"pagination"`
}

GitRepositoryPaginatedResponse is the paginated response for git repositories.

type HandleOidcCallbackInput

type HandleOidcCallbackInput struct {
	OidcHeaders
	OidcStateCookie string `cookie:"oidc_state" doc:"OIDC state cookie from auth URL request"`
	Body            auth.OidcCallbackRequest
}

type HandleOidcCallbackOutput

type HandleOidcCallbackOutput struct {
	SetCookie []string `header:"Set-Cookie" doc:"Session and clear state cookies"`
	Body      auth.OidcCallbackResponse
}

type HealthOutput

type HealthOutput struct {
	Body system.HealthResponse
}

HealthOutput is the response for health check

type IgnoreVulnerabilityInput

type IgnoreVulnerabilityInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          vulnerability.IgnorePayload
}

type IgnoreVulnerabilityOutput

type IgnoreVulnerabilityOutput struct {
	Body base.ApiResponse[vulnerability.IgnoredVulnerability]
}

type ImageHandler

type ImageHandler struct {
	// contains filtered or unexported fields
}

ImageHandler provides Huma-based image management endpoints.

func (*ImageHandler) GetImage

func (h *ImageHandler) GetImage(ctx context.Context, input *GetImageInput) (*GetImageOutput, error)

GetImage returns an image by ID.

func (*ImageHandler) GetImageUsageCounts

func (h *ImageHandler) GetImageUsageCounts(ctx context.Context, input *GetImageUsageCountsInput) (*GetImageUsageCountsOutput, error)

GetImageUsageCounts returns counts of images by usage status.

func (*ImageHandler) ListImages

func (h *ImageHandler) ListImages(ctx context.Context, input *ListImagesInput) (*ListImagesOutput, error)

ListImages returns a paginated list of images.

func (*ImageHandler) PruneImages

func (h *ImageHandler) PruneImages(ctx context.Context, input *PruneImagesInput) (*PruneImagesOutput, error)

PruneImages removes unused Docker images.

func (*ImageHandler) PullImage

func (h *ImageHandler) PullImage(ctx context.Context, input *PullImageInput) (*huma.StreamResponse, error)

PullImage pulls a Docker image with streaming progress.

func (*ImageHandler) RemoveImage

func (h *ImageHandler) RemoveImage(ctx context.Context, input *RemoveImageInput) (*RemoveImageOutput, error)

RemoveImage removes a Docker image.

func (*ImageHandler) UploadImage

func (h *ImageHandler) UploadImage(ctx context.Context, input *UploadImageInput) (*UploadImageOutput, error)

UploadImage uploads a Docker image from a tar archive.

type ImagePaginatedResponse

type ImagePaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []image.Summary         `json:"data"`
	Pagination base.PaginationResponse `json:"pagination"`
}

ImagePaginatedResponse is the paginated response for images.

type ImageUpdateHandler

type ImageUpdateHandler struct {
	// contains filtered or unexported fields
}

func (*ImageUpdateHandler) CheckAllImages

func (*ImageUpdateHandler) CheckImageUpdate

func (*ImageUpdateHandler) CheckImageUpdateByID

func (*ImageUpdateHandler) CheckMultipleImages

func (*ImageUpdateHandler) GetUpdateSummary

type ImageUsageCountsResponse

type ImageUsageCountsResponse struct {
	Success bool              `json:"success"`
	Data    image.UsageCounts `json:"data"`
}

type ImportGitOpsSyncsInput

type ImportGitOpsSyncsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          []gitops.ImportGitOpsSyncRequest
}

type ImportGitOpsSyncsOutput

type ImportGitOpsSyncsOutput struct {
	Body base.ApiResponse[gitops.ImportGitOpsSyncResponse]
}

type InitiateDeviceAuthInput

type InitiateDeviceAuthInput struct{}

type InitiateDeviceAuthOutput

type InitiateDeviceAuthOutput struct {
	Body auth.OidcDeviceAuthResponse
}

type JobSchedulesHandler

type JobSchedulesHandler struct {
	// contains filtered or unexported fields
}

func (*JobSchedulesHandler) Get

func (*JobSchedulesHandler) ListJobs

func (h *JobSchedulesHandler) ListJobs(ctx context.Context, input *ListJobsInput) (*GetJobsOutput, error)

func (*JobSchedulesHandler) RunJob

func (h *JobSchedulesHandler) RunJob(ctx context.Context, input *RunJobInput) (*RunJobOutput, error)

func (*JobSchedulesHandler) Update

type ListAllVulnerabilitiesInput

type ListAllVulnerabilitiesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Sort field"`
	Order         string `query:"order" doc:"Sort order"`
	Start         int    `query:"start" doc:"Start offset"`
	Limit         int    `query:"limit" doc:"Limit"`
	Page          int    `query:"page" doc:"Page number"`
	Severity      string `query:"severity" doc:"Comma-separated severity filter"`
	ImageName     string `query:"imageName" doc:"Filter by image/repo name (substring)"`
}

type ListAllVulnerabilitiesOutput

type ListAllVulnerabilitiesOutput struct {
	Body base.Paginated[vulnerability.VulnerabilityWithImage]
}

type ListApiKeysInput

type ListApiKeysInput struct {
	Search string `query:"search" doc:"Search query for filtering by name or description"`
	Sort   string `query:"sort" doc:"Column to sort by"`
	Order  string `query:"order" default:"asc" doc:"Sort direction (asc or desc)"`
	Start  int    `query:"start" default:"0" doc:"Start index for pagination"`
	Limit  int    `query:"limit" default:"20" doc:"Number of items per page"`
}

type ListApiKeysOutput

type ListApiKeysOutput struct {
	Body ApiKeyPaginatedResponse
}

type ListBackupFilesInput

type ListBackupFilesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	BackupID      string `path:"backupId" doc:"Backup ID"`
}

type ListBackupFilesOutput

type ListBackupFilesOutput struct {
	Body base.ApiResponse[[]string]
}

type ListBackupsInput

type ListBackupsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Column to sort by"`
	Order         string `query:"order" default:"asc" doc:"Sort direction"`
	Start         int    `query:"start" default:"0" doc:"Start index"`
	Limit         int    `query:"limit" default:"20" doc:"Limit"`
}

type ListBackupsOutput

type ListBackupsOutput struct {
	Body VolumeBackupPaginatedResponse
}

type ListBranchesInput

type ListBranchesInput struct {
	ID string `path:"id" doc:"Repository ID"`
}

type ListBranchesOutput

type ListBranchesOutput struct {
	Body base.ApiResponse[gitops.BranchesResponse]
}

type ListContainerRegistriesInput

type ListContainerRegistriesInput struct {
	Search string `query:"search" doc:"Search query"`
	Sort   string `query:"sort" doc:"Column to sort by"`
	Order  string `query:"order" default:"asc" doc:"Sort direction"`
	Start  int    `query:"start" default:"0" doc:"Start index"`
	Limit  int    `query:"limit" default:"20" doc:"Items per page"`
}

type ListContainerRegistriesOutput

type ListContainerRegistriesOutput struct {
	Body ContainerRegistryPaginatedResponse
}

type ListContainersInput

type ListContainersInput struct {
	EnvironmentID   string `path:"id" doc:"Environment ID"`
	Search          string `query:"search" doc:"Search query"`
	Sort            string `query:"sort" doc:"Column to sort by"`
	Order           string `query:"order" default:"asc" doc:"Sort direction"`
	Start           int    `query:"start" default:"0" doc:"Start index"`
	Limit           int    `query:"limit" default:"20" doc:"Limit"`
	IncludeInternal bool   `query:"includeInternal" default:"false" doc:"Include internal containers"`
	Updates         string `query:"updates" doc:"Filter by update status (has_update, up_to_date, error, unknown)"`
}

type ListContainersOutput

type ListContainersOutput struct {
	Body ContainerPaginatedResponse
}

type ListEnvironmentsInput

type ListEnvironmentsInput struct {
	Search string `query:"search" doc:"Search query for filtering by name or API URL"`
	Sort   string `query:"sort" doc:"Column to sort by"`
	Order  string `query:"order" default:"asc" doc:"Sort direction (asc or desc)"`
	Start  int    `query:"start" default:"0" doc:"Start index for pagination"`
	Limit  int    `query:"limit" default:"20" doc:"Items per page"`
}

type ListEnvironmentsOutput

type ListEnvironmentsOutput struct {
	Body EnvironmentPaginatedResponse
}

type ListEventsInput

type ListEventsInput struct {
	Search   string `query:"search" doc:"Search query"`
	Sort     string `query:"sort" doc:"Column to sort by"`
	Order    string `query:"order" default:"asc" doc:"Sort direction"`
	Start    int    `query:"start" default:"0" doc:"Start index"`
	Limit    int    `query:"limit" default:"20" doc:"Limit"`
	Severity string `query:"severity" doc:"Filter by severity"`
	Type     string `query:"type" doc:"Filter by event type"`
}

type ListEventsOutput

type ListEventsOutput struct {
	Body EventPaginatedResponse
}

type ListGitOpsSyncsInput

type ListGitOpsSyncsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Column to sort by"`
	Order         string `query:"order" default:"asc" doc:"Sort direction"`
	Start         int    `query:"start" default:"0" doc:"Start index"`
	Limit         int    `query:"limit" default:"20" doc:"Items per page"`
}

type ListGitOpsSyncsOutput

type ListGitOpsSyncsOutput struct {
	Body GitOpsSyncPaginatedResponse
}

type ListGitRepositoriesInput

type ListGitRepositoriesInput struct {
	Search string `query:"search" doc:"Search query"`
	Sort   string `query:"sort" doc:"Column to sort by"`
	Order  string `query:"order" default:"asc" doc:"Sort direction"`
	Start  int    `query:"start" default:"0" doc:"Start index"`
	Limit  int    `query:"limit" default:"20" doc:"Items per page"`
}

type ListGitRepositoriesOutput

type ListGitRepositoriesOutput struct {
	Body GitRepositoryPaginatedResponse
}

type ListIgnoredVulnerabilitiesInput

type ListIgnoredVulnerabilitiesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Sort field"`
	Order         string `query:"order" doc:"Sort order"`
	Start         int    `query:"start" doc:"Start offset"`
	Limit         int    `query:"limit" doc:"Limit"`
	Page          int    `query:"page" doc:"Page number"`
}

type ListIgnoredVulnerabilitiesOutput

type ListIgnoredVulnerabilitiesOutput struct {
	Body base.Paginated[vulnerability.IgnoredVulnerability]
}

type ListImageVulnerabilitiesInput

type ListImageVulnerabilitiesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ImageID       string `path:"imageId" doc:"Image ID"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Sort field"`
	Order         string `query:"order" doc:"Sort order"`
	Start         int    `query:"start" doc:"Start offset"`
	Limit         int    `query:"limit" doc:"Limit"`
	Page          int    `query:"page" doc:"Page number"`
	Severity      string `query:"severity" doc:"Comma-separated severity filter"`
}

type ListImageVulnerabilitiesOutput

type ListImageVulnerabilitiesOutput struct {
	Body base.Paginated[vulnerability.Vulnerability]
}

type ListImagesInput

type ListImagesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Column to sort by"`
	Order         string `query:"order" default:"asc" doc:"Sort direction (asc or desc)"`
	Start         int    `query:"start" default:"0" doc:"Start index for pagination"`
	Limit         int    `query:"limit" default:"20" doc:"Number of items per page"`
	InUse         string `query:"inUse" doc:"Filter by in-use status (true/false)"`
	Updates       string `query:"updates" doc:"Filter by update availability (true/false)"`
}

type ListImagesOutput

type ListImagesOutput struct {
	Body ImagePaginatedResponse
}

type ListJobsInput

type ListJobsInput struct {
	ID string `path:"id" doc:"Environment ID"`
}

type ListNetworksInput

type ListNetworksInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Column to sort by"`
	Order         string `query:"order" default:"asc" doc:"Sort direction (asc or desc)"`
	Start         int    `query:"start" default:"0" doc:"Start index for pagination"`
	Limit         int    `query:"limit" default:"20" doc:"Number of items per page"`
	InUse         string `query:"inUse" doc:"Filter by in-use status (true/false)"`
}

type ListNetworksOutput

type ListNetworksOutput struct {
	Body NetworkPaginatedResponse
}

type ListProjectsInput

type ListProjectsInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Search        string `query:"search" doc:"Search query"`
	Sort          string `query:"sort" doc:"Column to sort by"`
	Order         string `query:"order" default:"asc" doc:"Sort direction (asc or desc)"`
	Start         int    `query:"start" default:"0" doc:"Start index for pagination"`
	Limit         int    `query:"limit" default:"20" doc:"Number of items per page"`
	Status        string `query:"status" doc:"Filter by status (comma-separated: running,stopped,partially running)"`
}

type ListProjectsOutput

type ListProjectsOutput struct {
	Body ProjectPaginatedResponse
}

type ListTemplatesInput

type ListTemplatesInput struct {
	Search string `query:"search" doc:"Search query"`
	Sort   string `query:"sort" doc:"Column to sort by"`
	Order  string `query:"order" default:"asc" doc:"Sort direction"`
	Start  int    `query:"start" default:"0" doc:"Start index"`
	Limit  int    `query:"limit" default:"20" doc:"Items per page"`
}

type ListTemplatesOutput

type ListTemplatesOutput struct {
	Body TemplatePaginatedResponse
}

type ListUsersInput

type ListUsersInput struct {
	Search string `query:"search" doc:"Search query"`
	Sort   string `query:"sort" doc:"Column to sort by"`
	Order  string `query:"order" default:"asc" doc:"Sort direction"`
	Start  int    `query:"start" default:"0" doc:"Start index"`
	Limit  int    `query:"limit" default:"20" doc:"Items per page"`
}

type ListUsersOutput

type ListUsersOutput struct {
	Body UserPaginatedResponse
}

type ListVolumesInput

type ListVolumesInput struct {
	EnvironmentID   string `path:"id" doc:"Environment ID"`
	Search          string `query:"search" doc:"Search query"`
	Sort            string `query:"sort" doc:"Column to sort by"`
	Order           string `query:"order" default:"asc" doc:"Sort direction (asc or desc)"`
	Start           int    `query:"start" default:"0" doc:"Start index for pagination"`
	Limit           int    `query:"limit" default:"20" doc:"Number of items per page"`
	InUse           string `query:"inUse" doc:"Filter by in-use status (true/false)"`
	IncludeInternal bool   `query:"includeInternal" default:"false" doc:"Include internal volumes"`
}

type ListVolumesOutput

type ListVolumesOutput struct {
	Body VolumePaginatedResponse
}

type LoginInput

type LoginInput struct {
	Body auth.Login
}

type LoginOutput

type LoginOutput struct {
	SetCookie string `header:"Set-Cookie" doc:"Session cookie"`
	Body      base.ApiResponse[auth.LoginResponse]
}

type LogoutOutput

type LogoutOutput struct {
	SetCookie string `header:"Set-Cookie" doc:"Cleared session cookie"`
	Body      base.ApiResponse[base.MessageResponse]
}

type NetworkCountsApiResponse

type NetworkCountsApiResponse struct {
	Success bool                     `json:"success"`
	Data    networktypes.UsageCounts `json:"data"`
}

type NetworkCreatedApiResponse

type NetworkCreatedApiResponse struct {
	Success bool                        `json:"success"`
	Data    networktypes.CreateResponse `json:"data"`
}

type NetworkHandler

type NetworkHandler struct {
	// contains filtered or unexported fields
}

func (*NetworkHandler) CreateNetwork

func (h *NetworkHandler) CreateNetwork(ctx context.Context, input *CreateNetworkInput) (*CreateNetworkOutput, error)

func (*NetworkHandler) DeleteNetwork

func (h *NetworkHandler) DeleteNetwork(ctx context.Context, input *DeleteNetworkInput) (*DeleteNetworkOutput, error)

func (*NetworkHandler) GetNetwork

func (h *NetworkHandler) GetNetwork(ctx context.Context, input *GetNetworkInput) (*GetNetworkOutput, error)

func (*NetworkHandler) GetNetworkCounts

func (h *NetworkHandler) GetNetworkCounts(ctx context.Context, input *GetNetworkCountsInput) (*GetNetworkCountsOutput, error)

func (*NetworkHandler) ListNetworks

func (h *NetworkHandler) ListNetworks(ctx context.Context, input *ListNetworksInput) (*ListNetworksOutput, error)

func (*NetworkHandler) PruneNetworks

func (h *NetworkHandler) PruneNetworks(ctx context.Context, input *PruneNetworksInput) (*PruneNetworksOutput, error)

type NetworkInspectApiResponse

type NetworkInspectApiResponse struct {
	Success bool                 `json:"success"`
	Data    networktypes.Inspect `json:"data"`
}

NetworkInspectApiResponse is a dedicated response type

type NetworkMessageApiResponse

type NetworkMessageApiResponse struct {
	Success bool                 `json:"success"`
	Data    base.MessageResponse `json:"data"`
}

NetworkMessageApiResponse is a dedicated response type

type NetworkPaginatedResponse

type NetworkPaginatedResponse struct {
	Success    bool                     `json:"success"`
	Data       []networktypes.Summary   `json:"data"`
	Counts     networktypes.UsageCounts `json:"counts"`
	Pagination base.PaginationResponse  `json:"pagination"`
}

type NetworkPruneResponse

type NetworkPruneResponse struct {
	Success bool                     `json:"success"`
	Data    networktypes.PruneReport `json:"data"`
}

NetworkPruneResponse is a dedicated response type

type NotificationHandler

type NotificationHandler struct {
	// contains filtered or unexported fields
}

func (*NotificationHandler) CreateOrUpdateAppriseSettings

func (*NotificationHandler) DeleteNotificationSettings

func (*NotificationHandler) GetAllNotificationSettings

func (*NotificationHandler) GetAppriseSettings

func (*NotificationHandler) GetNotificationSettings

func (*NotificationHandler) TestAppriseNotification

func (*NotificationHandler) TestNotification

type OidcHandler

type OidcHandler struct {
	// contains filtered or unexported fields
}

OidcHandler handles OIDC authentication endpoints.

func (*OidcHandler) ExchangeDeviceToken

func (h *OidcHandler) ExchangeDeviceToken(ctx context.Context, input *ExchangeDeviceTokenInput) (*ExchangeDeviceTokenOutput, error)

ExchangeDeviceToken exchanges a device code for authentication tokens.

func (*OidcHandler) GetOidcAuthUrl

func (h *OidcHandler) GetOidcAuthUrl(ctx context.Context, input *GetOidcAuthUrlInput) (*GetOidcAuthUrlOutput, error)

GetOidcAuthUrl generates an OIDC authorization URL and sets the state cookie.

func (*OidcHandler) GetOidcConfig

func (h *OidcHandler) GetOidcConfig(ctx context.Context, input *GetOidcConfigInput) (*GetOidcConfigOutput, error)

GetOidcConfig returns the OIDC client configuration.

func (*OidcHandler) GetOidcStatus

GetOidcStatus returns the OIDC configuration status.

func (*OidcHandler) HandleOidcCallback

func (h *OidcHandler) HandleOidcCallback(ctx context.Context, input *HandleOidcCallbackInput) (*HandleOidcCallbackOutput, error)

HandleOidcCallback processes the OIDC callback and completes authentication.

func (*OidcHandler) InitiateDeviceAuth

InitiateDeviceAuth initiates the OIDC device authorization flow.

type OidcHeaders

type OidcHeaders struct {
	Origin          string `header:"Origin"`
	XForwardedHost  string `header:"X-Forwarded-Host"`
	XForwardedProto string `header:"X-Forwarded-Proto"`
	Host            string `header:"Host"`
}

type PairAgentInput

type PairAgentInput struct {
	ID   string                        `path:"id" doc:"Environment ID (must be 0 for local)"`
	Body *environment.AgentPairRequest `json:"body,omitempty"`
}

type PairAgentOutput

type PairAgentOutput struct {
	Body base.ApiResponse[environment.AgentPairResponse]
}

type PairEnvironmentInput

type PairEnvironmentInput struct {
	XAPIKey string `header:"X-API-Key" doc:"API key for environment pairing"`
}

type PairEnvironmentOutput

type PairEnvironmentOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type PerformSyncInput

type PerformSyncInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	SyncID        string `path:"syncId" doc:"Sync ID"`
}

type PerformSyncOutput

type PerformSyncOutput struct {
	Body base.ApiResponse[gitops.SyncResult]
}

type ProjectHandler

type ProjectHandler struct {
	// contains filtered or unexported fields
}

ProjectHandler provides Huma-based project management endpoints.

func (*ProjectHandler) CreateProject

func (h *ProjectHandler) CreateProject(ctx context.Context, input *CreateProjectInput) (*CreateProjectOutput, error)

CreateProject creates a new Docker Compose project.

func (*ProjectHandler) DeployProject

func (h *ProjectHandler) DeployProject(ctx context.Context, input *DeployProjectInput) (*huma.StreamResponse, error)

DeployProject deploys a Docker Compose project.

func (*ProjectHandler) DestroyProject

func (h *ProjectHandler) DestroyProject(ctx context.Context, input *DestroyProjectInput) (*DestroyProjectOutput, error)

DestroyProject destroys a Docker Compose project.

func (*ProjectHandler) DownProject

func (h *ProjectHandler) DownProject(ctx context.Context, input *DownProjectInput) (*DownProjectOutput, error)

DownProject brings down a Docker Compose project.

func (*ProjectHandler) GetProject

func (h *ProjectHandler) GetProject(ctx context.Context, input *GetProjectInput) (*GetProjectOutput, error)

GetProject returns a project by ID.

func (*ProjectHandler) GetProjectStatusCounts

GetProjectStatusCounts returns counts of projects by status.

func (*ProjectHandler) ListProjects

func (h *ProjectHandler) ListProjects(ctx context.Context, input *ListProjectsInput) (*ListProjectsOutput, error)

ListProjects returns a paginated list of projects.

func (*ProjectHandler) PullProjectImages

func (h *ProjectHandler) PullProjectImages(ctx context.Context, input *PullProjectImagesInput) (*huma.StreamResponse, error)

PullProjectImages pulls all images for a project with streaming progress.

func (*ProjectHandler) RedeployProject

func (h *ProjectHandler) RedeployProject(ctx context.Context, input *RedeployProjectInput) (*RedeployProjectOutput, error)

RedeployProject redeploys a Docker Compose project.

func (*ProjectHandler) RestartProject

func (h *ProjectHandler) RestartProject(ctx context.Context, input *RestartProjectInput) (*RestartProjectOutput, error)

RestartProject restarts all containers in a project.

func (*ProjectHandler) UpdateProject

func (h *ProjectHandler) UpdateProject(ctx context.Context, input *UpdateProjectInput) (*UpdateProjectOutput, error)

UpdateProject updates a Docker Compose project.

func (*ProjectHandler) UpdateProjectInclude

UpdateProjectInclude updates an include file within a project.

type ProjectPaginatedResponse

type ProjectPaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []project.Details       `json:"data"`
	Pagination base.PaginationResponse `json:"pagination"`
}

ProjectPaginatedResponse is the paginated response for projects.

type PruneAllInput

type PruneAllInput struct {
	EnvironmentID string                 `path:"id" doc:"Environment ID"`
	Body          system.PruneAllRequest `doc:"Prune options"`
}

type PruneAllOutput

type PruneAllOutput struct {
	Body base.ApiResponse[system.PruneAllResult]
}

type PruneImagesInput

type PruneImagesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Dangling      bool   `query:"dangling" doc:"Only remove dangling images"`
	Body          *struct {
		Dangling *bool               `json:"dangling,omitempty"`
		Filters  map[string][]string `json:"filters,omitempty"`
	}
}

type PruneImagesOutput

type PruneImagesOutput struct {
	Body base.ApiResponse[image.PruneReport]
}

type PruneNetworksInput

type PruneNetworksInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type PruneNetworksOutput

type PruneNetworksOutput struct {
	Body NetworkPruneResponse
}

type PruneVolumesInput

type PruneVolumesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type PruneVolumesOutput

type PruneVolumesOutput struct {
	Body base.ApiResponse[VolumePruneReportData]
}

type PullImageInput

type PullImageInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Body          image.PullOptions
}

type PullProgressEvent

type PullProgressEvent struct {
	Status         string `json:"status,omitempty"`
	ID             string `json:"id,omitempty"`
	Progress       string `json:"progress,omitempty"`
	ProgressDetail struct {
		Current int64 `json:"current,omitempty"`
		Total   int64 `json:"total,omitempty"`
	} `json:"progressDetail"`
	Error string `json:"error,omitempty"`
}

PullProgressEvent represents a Docker pull progress event

type PullProjectImagesInput

type PullProjectImagesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
}

type RedeployProjectInput

type RedeployProjectInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
}

type RedeployProjectOutput

type RedeployProjectOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type RefreshTokenInput

type RefreshTokenInput struct {
	Body auth.Refresh
}

type RefreshTokenOutput

type RefreshTokenOutput struct {
	SetCookie string `header:"Set-Cookie" doc:"Updated session cookie"`
	Body      base.ApiResponse[auth.TokenRefreshResponse]
}

type RemoveImageInput

type RemoveImageInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ImageID       string `path:"imageId" doc:"Image ID"`
	Force         bool   `query:"force" doc:"Force removal"`
}

type RemoveImageOutput

type RemoveImageOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type RemoveVolumeInput

type RemoveVolumeInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	Force         bool   `query:"force" doc:"Force removal"`
}

type RemoveVolumeOutput

type RemoveVolumeOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type RestartProjectInput

type RestartProjectInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
}

type RestartProjectOutput

type RestartProjectOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type RestoreBackupFilesInput

type RestoreBackupFilesInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	BackupID      string `path:"backupId" doc:"Backup ID"`
	Body          struct {
		Paths []string `json:"paths" doc:"Paths to restore from backup"`
	}
}

type RestoreBackupFilesOutput

type RestoreBackupFilesOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type RestoreBackupInput

type RestoreBackupInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	VolumeName    string `path:"volumeName" doc:"Volume name"`
	BackupID      string `path:"backupId" doc:"Backup ID"`
}

type RestoreBackupOutput

type RestoreBackupOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type RunJobInput

type RunJobInput struct {
	ID    string `path:"id" doc:"Environment ID"`
	JobID string `path:"jobId" minLength:"1" doc:"Job ID to run"`
}

type RunJobOutput

type RunJobOutput struct {
	Body jobschedule.JobRunResponse
}

type RunUpdaterInput

type RunUpdaterInput struct {
	EnvironmentID string           `path:"id" doc:"Environment ID"`
	Body          *updater.Options `doc:"Updater run options"`
}

type RunUpdaterOutput

type RunUpdaterOutput struct {
	Body base.ApiResponse[*updater.Result]
}

type SaveDefaultTemplatesInput

type SaveDefaultTemplatesInput struct {
	Body template.SaveDefaultTemplatesRequest
}

type SaveDefaultTemplatesOutput

type SaveDefaultTemplatesOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type ScanImageInput

type ScanImageInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ImageID       string `path:"imageId" doc:"Image ID to scan"`
}

type ScanImageOutput

type ScanImageOutput struct {
	Body base.ApiResponse[vulnerability.ScanResult]
}

type ScannerStatus

type ScannerStatus struct {
	// Available indicates if the vulnerability scanner (Trivy) is available
	Available bool `json:"available"`

	// Version is the version of the scanner if available
	Version string `json:"version,omitempty"`
}

type SearchCustomizeInput

type SearchCustomizeInput struct {
	Body search.Request
}

type SearchCustomizeOutput

type SearchCustomizeOutput struct {
	Body search.Response
}

type SearchSettingsInput

type SearchSettingsInput struct {
	Body search.Request `doc:"Search query"`
}

type SearchSettingsOutput

type SearchSettingsOutput struct {
	Body search.Response
}

type SettingsHandler

type SettingsHandler struct {
	// contains filtered or unexported fields
}

SettingsHandler provides Huma-based settings management endpoints.

func (*SettingsHandler) GetCategories

func (h *SettingsHandler) GetCategories(ctx context.Context, input *struct{}) (*GetCategoriesOutput, error)

GetCategories returns all available settings categories.

func (*SettingsHandler) GetPublicSettings

GetPublicSettings returns public settings for an environment.

func (*SettingsHandler) GetSettings

func (h *SettingsHandler) GetSettings(ctx context.Context, input *GetSettingsInput) (*GetSettingsOutput, error)

GetSettings returns all settings for an environment.

func (*SettingsHandler) Search

Search searches settings by query.

func (*SettingsHandler) UpdateSettings

func (h *SettingsHandler) UpdateSettings(ctx context.Context, input *UpdateSettingsInput) (*UpdateSettingsOutput, error)

UpdateSettings updates settings for an environment.

type StartAllContainersInput

type StartAllContainersInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type StartAllContainersOutput

type StartAllContainersOutput struct {
	Body base.ApiResponse[containertypes.ActionResult]
}

type StartAllStoppedContainersInput

type StartAllStoppedContainersInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type StartAllStoppedContainersOutput

type StartAllStoppedContainersOutput struct {
	Body base.ApiResponse[containertypes.ActionResult]
}

type StopAllContainersInput

type StopAllContainersInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type StopAllContainersOutput

type StopAllContainersOutput struct {
	Body base.ApiResponse[containertypes.ActionResult]
}

type SyncContainerRegistriesInput

type SyncContainerRegistriesInput struct {
	Body containerregistry.SyncRequest
}

type SyncContainerRegistriesOutput

type SyncContainerRegistriesOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type SyncEnvironmentInput

type SyncEnvironmentInput struct {
	ID string `path:"id" doc:"Environment ID"`
}

type SyncEnvironmentOutput

type SyncEnvironmentOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type SyncGitRepositoriesInput

type SyncGitRepositoriesInput struct {
	Body gitops.RepositorySyncRequest
}

type SyncGitRepositoriesOutput

type SyncGitRepositoriesOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type SystemHandler

type SystemHandler struct {
	// contains filtered or unexported fields
}

SystemHandler handles system management endpoints.

func (*SystemHandler) CheckUpgradeAvailable

func (h *SystemHandler) CheckUpgradeAvailable(ctx context.Context, input *CheckUpgradeInput) (*CheckUpgradeOutput, error)

CheckUpgradeAvailable checks if a system upgrade is available.

func (*SystemHandler) ConvertDockerRun

func (h *SystemHandler) ConvertDockerRun(ctx context.Context, input *ConvertDockerRunInput) (*ConvertDockerRunOutput, error)

ConvertDockerRun converts a docker run command to docker-compose format.

func (*SystemHandler) GetDockerInfo

func (h *SystemHandler) GetDockerInfo(ctx context.Context, input *GetDockerInfoInput) (*GetDockerInfoOutput, error)

GetDockerInfo returns Docker daemon version and system information.

func (*SystemHandler) Health

Health checks if the Docker daemon is responsive.

func (*SystemHandler) PruneAll

func (h *SystemHandler) PruneAll(ctx context.Context, input *PruneAllInput) (*PruneAllOutput, error)

PruneAll removes unused Docker resources.

func (*SystemHandler) StartAllContainers

func (h *SystemHandler) StartAllContainers(ctx context.Context, input *StartAllContainersInput) (*StartAllContainersOutput, error)

StartAllContainers starts all Docker containers.

func (*SystemHandler) StartAllStoppedContainers

StartAllStoppedContainers starts all stopped Docker containers.

func (*SystemHandler) StopAllContainers

func (h *SystemHandler) StopAllContainers(ctx context.Context, input *StopAllContainersInput) (*StopAllContainersOutput, error)

StopAllContainers stops all running Docker containers.

func (*SystemHandler) TriggerUpgrade

func (h *SystemHandler) TriggerUpgrade(ctx context.Context, input *TriggerUpgradeInput) (*TriggerUpgradeOutput, error)

TriggerUpgrade triggers a system upgrade.

type SystemHealthInput

type SystemHealthInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type SystemHealthOutput

type SystemHealthOutput struct {
	Status int `status:"200"`
}

type TemplateHandler

type TemplateHandler struct {
	// contains filtered or unexported fields
}

TemplateHandler handles template management endpoints.

func (*TemplateHandler) CreateRegistry

CreateRegistry creates a new template registry.

func (*TemplateHandler) CreateTemplate

func (h *TemplateHandler) CreateTemplate(ctx context.Context, input *CreateTemplateInput) (*CreateTemplateOutput, error)

CreateTemplate creates a new template.

func (*TemplateHandler) DeleteRegistry

DeleteRegistry deletes a template registry.

func (*TemplateHandler) DeleteTemplate

func (h *TemplateHandler) DeleteTemplate(ctx context.Context, input *DeleteTemplateInput) (*DeleteTemplateOutput, error)

DeleteTemplate deletes a template.

func (*TemplateHandler) DownloadTemplate

DownloadTemplate downloads a remote template to local storage.

func (*TemplateHandler) FetchRegistry

FetchRegistry fetches templates from a remote registry URL.

func (*TemplateHandler) GetAllTemplates

GetAllTemplates returns all templates without pagination.

func (*TemplateHandler) GetDefaultTemplates

GetDefaultTemplates returns the default compose and env templates.

func (*TemplateHandler) GetGlobalVariables

GetGlobalVariables returns global template variables.

func (*TemplateHandler) GetRegistries

GetRegistries returns all template registries.

func (*TemplateHandler) GetTemplate

func (h *TemplateHandler) GetTemplate(ctx context.Context, input *GetTemplateInput) (*GetTemplateOutput, error)

GetTemplate returns a template by ID.

func (*TemplateHandler) GetTemplateContent

GetTemplateContent returns template content with parsed data.

func (*TemplateHandler) ListTemplates

func (h *TemplateHandler) ListTemplates(ctx context.Context, input *ListTemplatesInput) (*ListTemplatesOutput, error)

ListTemplates returns a paginated list of templates.

func (*TemplateHandler) SaveDefaultTemplates

SaveDefaultTemplates saves the default compose and env templates.

func (*TemplateHandler) UpdateGlobalVariables

UpdateGlobalVariables updates global template variables.

func (*TemplateHandler) UpdateRegistry

UpdateRegistry updates a template registry.

func (*TemplateHandler) UpdateTemplate

func (h *TemplateHandler) UpdateTemplate(ctx context.Context, input *UpdateTemplateInput) (*UpdateTemplateOutput, error)

UpdateTemplate updates a template.

type TemplatePaginatedResponse

type TemplatePaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []template.Template     `json:"data"`
	Pagination base.PaginationResponse `json:"pagination"`
}

TemplatePaginatedResponse is the paginated response for templates.

type TestAppriseNotificationInput

type TestAppriseNotificationInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Type          string `query:"type" default:"simple"`
}

type TestAppriseNotificationOutput

type TestAppriseNotificationOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type TestConnectionInput

type TestConnectionInput struct {
	ID   string                             `path:"id" doc:"Environment ID"`
	Body *environment.TestConnectionRequest `json:"body,omitempty"`
}

type TestConnectionOutput

type TestConnectionOutput struct {
	Body base.ApiResponse[environment.Test]
}

type TestContainerRegistryInput

type TestContainerRegistryInput struct {
	ID string `path:"id" doc:"Registry ID"`
}

type TestContainerRegistryOutput

type TestContainerRegistryOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type TestGitRepositoryInput

type TestGitRepositoryInput struct {
	ID     string `path:"id" doc:"Repository ID"`
	Branch string `query:"branch" doc:"Branch to test (optional, uses repository default branch when omitted)"`
}

type TestGitRepositoryOutput

type TestGitRepositoryOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type TestNotificationInput

type TestNotificationInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	Provider      string `path:"provider" doc:"Provider"`
	Type          string `query:"type" default:"simple"`
}

type TestNotificationOutput

type TestNotificationOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type TriggerUpgradeInput

type TriggerUpgradeInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
}

type TriggerUpgradeOutput

type TriggerUpgradeOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type UnignoreVulnerabilityInput

type UnignoreVulnerabilityInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	IgnoreID      string `path:"ignoreId" doc:"Ignore record ID"`
}

type UnignoreVulnerabilityOutput

type UnignoreVulnerabilityOutput struct {
	Body base.ApiResponse[struct{}]
}

type UpdateApiKeyInput

type UpdateApiKeyInput struct {
	ID   string `path:"id" doc:"API key ID"`
	Body apikey.UpdateApiKey
}

type UpdateApiKeyOutput

type UpdateApiKeyOutput struct {
	Body base.ApiResponse[apikey.ApiKey]
}

type UpdateContainerInput

type UpdateContainerInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ContainerID   string `path:"containerId" doc:"Container ID to update"`
}

type UpdateContainerOutput

type UpdateContainerOutput struct {
	Body base.ApiResponse[*updater.Result]
}

type UpdateContainerRegistryInput

type UpdateContainerRegistryInput struct {
	ID   string `path:"id" doc:"Registry ID"`
	Body models.UpdateContainerRegistryRequest
}

type UpdateContainerRegistryOutput

type UpdateContainerRegistryOutput struct {
	Body base.ApiResponse[containerregistry.ContainerRegistry]
}

type UpdateEnvironmentInput

type UpdateEnvironmentInput struct {
	ID   string `path:"id" doc:"Environment ID"`
	Body environment.Update
}

type UpdateEnvironmentOutput

type UpdateEnvironmentOutput struct {
	Body base.ApiResponse[environment.Environment]
}

type UpdateGitOpsSyncInput

type UpdateGitOpsSyncInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	SyncID        string `path:"syncId" doc:"Sync ID"`
	Body          gitops.UpdateSyncRequest
}

type UpdateGitOpsSyncOutput

type UpdateGitOpsSyncOutput struct {
	Body base.ApiResponse[gitops.GitOpsSync]
}

type UpdateGitRepositoryInput

type UpdateGitRepositoryInput struct {
	ID   string `path:"id" doc:"Repository ID"`
	Body models.UpdateGitRepositoryRequest
}

type UpdateGitRepositoryOutput

type UpdateGitRepositoryOutput struct {
	Body base.ApiResponse[gitops.GitRepository]
}

type UpdateGlobalVariablesInput

type UpdateGlobalVariablesInput struct {
	Body env.Summary
}

type UpdateGlobalVariablesOutput

type UpdateGlobalVariablesOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type UpdateHeartbeatInput

type UpdateHeartbeatInput struct {
	ID string `path:"id" doc:"Environment ID"`
}

type UpdateHeartbeatOutput

type UpdateHeartbeatOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type UpdateJobSchedulesInput

type UpdateJobSchedulesInput struct {
	ID   string             `path:"id" doc:"Environment ID"`
	Body jobschedule.Update `doc:"Job schedule update data"`
}

type UpdateJobSchedulesOutput

type UpdateJobSchedulesOutput struct {
	Body base.ApiResponse[jobschedule.Config]
}

type UpdateProjectIncludeInput

type UpdateProjectIncludeInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
	Body          project.UpdateIncludeFile
}

type UpdateProjectIncludeOutput

type UpdateProjectIncludeOutput struct {
	Body base.ApiResponse[project.Details]
}

type UpdateProjectInput

type UpdateProjectInput struct {
	EnvironmentID string `path:"id" doc:"Environment ID"`
	ProjectID     string `path:"projectId" doc:"Project ID"`
	Body          project.UpdateProject
}

type UpdateProjectOutput

type UpdateProjectOutput struct {
	Body base.ApiResponse[project.Details]
}

type UpdateSettingsInput

type UpdateSettingsInput struct {
	EnvironmentID string          `path:"id" doc:"Environment ID"`
	Body          settings.Update `doc:"Settings update data"`
}

type UpdateSettingsOutput

type UpdateSettingsOutput struct {
	Body base.ApiResponse[[]settings.SettingDto]
}

type UpdateTemplateInput

type UpdateTemplateInput struct {
	ID   string `path:"id" doc:"Template ID"`
	Body template.UpdateRequest
}

type UpdateTemplateOutput

type UpdateTemplateOutput struct {
	Body base.ApiResponse[template.Template]
}

type UpdateTemplateRegistryInput

type UpdateTemplateRegistryInput struct {
	ID   string `path:"id" doc:"Registry ID"`
	Body template.UpdateRegistryRequest
}

type UpdateTemplateRegistryOutput

type UpdateTemplateRegistryOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type UpdateUserInput

type UpdateUserInput struct {
	UserID string `path:"userId" doc:"User ID"`
	Body   user.UpdateUser
}

type UpdateUserOutput

type UpdateUserOutput struct {
	Body base.ApiResponse[user.User]
}

type UpdaterHandler

type UpdaterHandler struct {
	// contains filtered or unexported fields
}

UpdaterHandler provides Huma-based updater management endpoints.

func (*UpdaterHandler) GetUpdaterHistory

func (h *UpdaterHandler) GetUpdaterHistory(ctx context.Context, input *GetUpdaterHistoryInput) (*GetUpdaterHistoryOutput, error)

GetUpdaterHistory returns the history of update operations.

func (*UpdaterHandler) GetUpdaterStatus

func (h *UpdaterHandler) GetUpdaterStatus(ctx context.Context, input *GetUpdaterStatusInput) (*GetUpdaterStatusOutput, error)

GetUpdaterStatus returns the current status of the updater.

func (*UpdaterHandler) RunUpdater

func (h *UpdaterHandler) RunUpdater(ctx context.Context, input *RunUpdaterInput) (*RunUpdaterOutput, error)

RunUpdater applies pending container updates.

func (*UpdaterHandler) UpdateContainer

func (h *UpdaterHandler) UpdateContainer(ctx context.Context, input *UpdateContainerInput) (*UpdateContainerOutput, error)

UpdateContainer updates a single container by pulling the latest image and recreating it.

type UpgradeCheckResultData

type UpgradeCheckResultData struct {
	CanUpgrade bool   `json:"canUpgrade"`
	Error      bool   `json:"error"`
	Message    string `json:"message"`
}

UpgradeCheckResultData is the response for upgrade check.

type UploadAndRestoreInput

type UploadAndRestoreInput struct {
	EnvironmentID string         `path:"id" doc:"Environment ID"`
	VolumeName    string         `path:"volumeName" doc:"Volume name"`
	RawBody       multipart.Form `contentType:"multipart/form-data"`
}

type UploadAndRestoreOutput

type UploadAndRestoreOutput struct {
	Body base.ApiResponse[base.MessageResponse]
}

type UploadFileInput

type UploadFileInput struct {
	EnvironmentID string         `path:"id" doc:"Environment ID"`
	VolumeName    string         `path:"volumeName" doc:"Volume name"`
	Path          string         `query:"path" default:"/" doc:"Destination path"`
	RawBody       multipart.Form `contentType:"multipart/form-data"`
}

type UploadImageInput

type UploadImageInput struct {
	EnvironmentID string         `path:"id" doc:"Environment ID"`
	RawBody       multipart.Form `contentType:"multipart/form-data"`
}

type UploadImageOutput

type UploadImageOutput struct {
	Body base.ApiResponse[image.LoadResult]
}

type UserHandler

type UserHandler struct {
	// contains filtered or unexported fields
}

UserHandler handles user management endpoints.

func (*UserHandler) CreateUser

func (h *UserHandler) CreateUser(ctx context.Context, input *CreateUserInput) (*CreateUserOutput, error)

CreateUser creates a new user.

func (*UserHandler) DeleteUser

func (h *UserHandler) DeleteUser(ctx context.Context, input *DeleteUserInput) (*DeleteUserOutput, error)

DeleteUser deletes a user.

func (*UserHandler) GetUser

func (h *UserHandler) GetUser(ctx context.Context, input *GetUserInput) (*GetUserOutput, error)

GetUser returns a user by ID.

func (*UserHandler) ListUsers

func (h *UserHandler) ListUsers(ctx context.Context, input *ListUsersInput) (*ListUsersOutput, error)

ListUsers returns a paginated list of users.

func (*UserHandler) UpdateUser

func (h *UserHandler) UpdateUser(ctx context.Context, input *UpdateUserInput) (*UpdateUserOutput, error)

UpdateUser updates a user.

type UserPaginatedResponse

type UserPaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []user.User             `json:"data"`
	Pagination base.PaginationResponse `json:"pagination"`
}

UserPaginatedResponse is the paginated response for users.

type VersionHandler

type VersionHandler struct {
	// contains filtered or unexported fields
}

VersionHandler handles version information endpoints.

func (*VersionHandler) GetAppVersion

GetAppVersion returns the current application version.

func (*VersionHandler) GetVersion

func (h *VersionHandler) GetVersion(ctx context.Context, input *GetVersionInput) (*GetVersionOutput, error)

GetVersion returns version information with optional update check.

type VolumeBackupPaginatedResponse

type VolumeBackupPaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []models.VolumeBackup   `json:"data"`
	Pagination base.PaginationResponse `json:"pagination"`
	Warnings   []string                `json:"warnings,omitempty"`
}

type VolumeHandler

type VolumeHandler struct {
	// contains filtered or unexported fields
}

VolumeHandler provides Huma-based volume management endpoints.

func (*VolumeHandler) BackupHasPath

func (h *VolumeHandler) BackupHasPath(ctx context.Context, input *BackupHasPathInput) (*BackupHasPathOutput, error)

func (*VolumeHandler) BrowseDirectory

func (h *VolumeHandler) BrowseDirectory(ctx context.Context, input *BrowseDirectoryInput) (*BrowseDirectoryOutput, error)

func (*VolumeHandler) CreateBackup

func (h *VolumeHandler) CreateBackup(ctx context.Context, input *CreateBackupInput) (*CreateBackupOutput, error)

func (*VolumeHandler) CreateDirectory

func (*VolumeHandler) CreateVolume

func (h *VolumeHandler) CreateVolume(ctx context.Context, input *CreateVolumeInput) (*CreateVolumeOutput, error)

CreateVolume creates a new Docker volume.

func (*VolumeHandler) DeleteBackup

func (h *VolumeHandler) DeleteBackup(ctx context.Context, input *DeleteBackupInput) (*DeleteBackupOutput, error)

func (*VolumeHandler) DeleteFile

func (*VolumeHandler) DownloadBackup

func (h *VolumeHandler) DownloadBackup(ctx context.Context, input *DownloadBackupInput) (*DownloadBackupOutput, error)

func (*VolumeHandler) DownloadFile

func (h *VolumeHandler) DownloadFile(ctx context.Context, input *DownloadFileInput) (*DownloadFileOutput, error)

func (*VolumeHandler) GetFileContent

func (h *VolumeHandler) GetFileContent(ctx context.Context, input *GetFileContentInput) (*GetFileContentOutput, error)

func (*VolumeHandler) GetVolume

func (h *VolumeHandler) GetVolume(ctx context.Context, input *GetVolumeInput) (*GetVolumeOutput, error)

GetVolume returns a volume by name.

func (*VolumeHandler) GetVolumeSizes

func (h *VolumeHandler) GetVolumeSizes(ctx context.Context, input *GetVolumeSizesInput) (*GetVolumeSizesOutput, error)

GetVolumeSizes returns disk usage sizes for all volumes. This is a slow operation as it requires calculating disk usage.

func (*VolumeHandler) GetVolumeUsage

func (h *VolumeHandler) GetVolumeUsage(ctx context.Context, input *GetVolumeUsageInput) (*GetVolumeUsageOutput, error)

GetVolumeUsage returns containers using a specific volume.

func (*VolumeHandler) GetVolumeUsageCounts

GetVolumeUsageCounts returns counts of volumes by usage status.

func (*VolumeHandler) ListBackupFiles

func (h *VolumeHandler) ListBackupFiles(ctx context.Context, input *ListBackupFilesInput) (*ListBackupFilesOutput, error)

func (*VolumeHandler) ListBackups

func (h *VolumeHandler) ListBackups(ctx context.Context, input *ListBackupsInput) (*ListBackupsOutput, error)

func (*VolumeHandler) ListVolumes

func (h *VolumeHandler) ListVolumes(ctx context.Context, input *ListVolumesInput) (*ListVolumesOutput, error)

ListVolumes returns a paginated list of volumes.

func (*VolumeHandler) PruneVolumes

func (h *VolumeHandler) PruneVolumes(ctx context.Context, input *PruneVolumesInput) (*PruneVolumesOutput, error)

PruneVolumes removes all unused Docker volumes.

func (*VolumeHandler) RemoveVolume

func (h *VolumeHandler) RemoveVolume(ctx context.Context, input *RemoveVolumeInput) (*RemoveVolumeOutput, error)

RemoveVolume removes a Docker volume.

func (*VolumeHandler) RestoreBackup

func (h *VolumeHandler) RestoreBackup(ctx context.Context, input *RestoreBackupInput) (*RestoreBackupOutput, error)

func (*VolumeHandler) RestoreBackupFiles

func (h *VolumeHandler) RestoreBackupFiles(ctx context.Context, input *RestoreBackupFilesInput) (*RestoreBackupFilesOutput, error)

func (*VolumeHandler) UploadAndRestore

func (h *VolumeHandler) UploadAndRestore(ctx context.Context, input *UploadAndRestoreInput) (*UploadAndRestoreOutput, error)

func (*VolumeHandler) UploadFile

type VolumePaginatedResponse

type VolumePaginatedResponse struct {
	Success    bool                    `json:"success"`
	Data       []volumetypes.Volume    `json:"data"`
	Counts     VolumeUsageCountsData   `json:"counts"`
	Pagination base.PaginationResponse `json:"pagination"`
}

VolumePaginatedResponse is the paginated response for volumes.

type VolumePruneReportData

type VolumePruneReportData struct {
	VolumesDeleted []string `json:"volumesDeleted,omitempty"`
	SpaceReclaimed uint64   `json:"spaceReclaimed"`
}

VolumePruneReportData represents the result of a volume prune operation. This is a local type to avoid schema naming conflicts with image.PruneReport.

type VolumeSizeInfo

type VolumeSizeInfo struct {
	Name     string `json:"name"`
	Size     int64  `json:"size"`
	RefCount int64  `json:"refCount"`
}

VolumeSizeInfo represents size information for a single volume.

type VolumeUsageCountsData

type VolumeUsageCountsData struct {
	Inuse  int `json:"inuse"`
	Unused int `json:"unused"`
	Total  int `json:"total"`
}

VolumeUsageCountsData represents the counts of volumes by usage status. This is a local type to avoid schema naming conflicts with image.UsageCounts.

type VolumeUsageResponse

type VolumeUsageResponse struct {
	InUse      bool     `json:"inUse"`
	Containers []string `json:"containers"`
}

VolumeUsageResponse represents volume usage information.

type VulnerabilityHandler

type VulnerabilityHandler struct {
	// contains filtered or unexported fields
}

VulnerabilityHandler provides Huma-based vulnerability scanning endpoints.

func (*VulnerabilityHandler) GetEnvironmentSummary

GetEnvironmentSummary returns aggregated vulnerability info for the current environment.

func (*VulnerabilityHandler) GetScanResult

GetScanResult retrieves the vulnerability scan result for an image.

func (*VulnerabilityHandler) GetScanSummaries

GetScanSummaries retrieves scan summaries for a list of image IDs.

func (*VulnerabilityHandler) GetScanSummary

GetScanSummary retrieves just the vulnerability summary for an image.

func (*VulnerabilityHandler) GetScannerStatus

GetScannerStatus checks if the vulnerability scanner is available.

func (*VulnerabilityHandler) IgnoreVulnerability

IgnoreVulnerability creates an ignore record for a vulnerability.

func (*VulnerabilityHandler) ListAllVulnerabilities

ListAllVulnerabilities returns a paginated list of vulnerabilities across all images.

func (*VulnerabilityHandler) ListIgnoredVulnerabilities

ListIgnoredVulnerabilities returns a list of ignored vulnerabilities.

func (*VulnerabilityHandler) ListImageVulnerabilities

ListImageVulnerabilities returns a paginated list of vulnerabilities for an image.

func (*VulnerabilityHandler) ScanImage

ScanImage initiates a vulnerability scan for an image.

func (*VulnerabilityHandler) UnignoreVulnerability

UnignoreVulnerability removes an ignore record for a vulnerability.

Jump to

Keyboard shortcuts

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