Documentation
¶
Index ¶
- Constants
- Variables
- func GetAllJobMetadata() map[string]JobMetadata
- func IsContainerResourceSort(sort string) bool
- func QuadletUnit(labels map[string]string) string
- type AccessSurface
- type Activity
- type ActivityClearHistoryResult
- type ActivityDetail
- type ActivityMessage
- type ActivityMessageLevel
- type ActivityStartedBy
- type ActivityStatus
- type ActivityStreamEvent
- type ActivityType
- type Actor
- type ActorDiagnostics
- type ActorHostInfo
- type ActorInstance
- type ActorJobFailure
- type ActorProvider
- type ActorTypeInfo
- type AgentEnrollRequest
- type AgentEnrollResponse
- type AgentHostInfo
- type AgentMTLSCertificate
- type AgentTunnelStats
- type ApiKey
- type ApiKeyCreatedDto
- type ApiKeyPermissionGrant
- type ApiResponse
- type ApnsDevice
- type ApnsEnvelope
- type ApnsPairingToken
- type ApnsRegisterDeviceRequest
- type ApnsResource
- type ApnsRoute
- type ApnsStatus
- type AuthLogin
- type AuthLogout
- type AuthRefresh
- type AuthenticationResponse
- type AuthenticationStatus
- type AutoLoginConfig
- type AutoUpdateRecord
- type BackupFileEntry
- type BackupManagementType
- type BackupRepositoryObservation
- type BackupRequester
- type BackupRestoreSelection
- type BackupRunAccepted
- type BackupSeriesRetention
- type BaseTemplate
- type BatchImageUpdateRequest
- type BulkVulnerabilityFilters
- type BusWatcher
- type CVSSInfo
- type Category
- type ComposeCache
- type ComposeCommands
- type ComposeContentOptions
- type ComposeCoordinator
- type ComposeCreateOptions
- type ComposeDependencies
- type ComposeDeployment
- type ComposeDownOptions
- type ComposeIdentity
- type ComposeImageOperations
- type ComposePsOptions
- type ComposeServiceUpdate
- type ComposeTarget
- type ComposeUpOptions
- type ConditionalJob
- type Container
- type ContainerActionResult
- type ContainerCommitRequest
- type ContainerCommitResult
- type ContainerComposeInfo
- type ContainerConfig
- type ContainerCreated
- type ContainerDetails
- type ContainerEdit
- type ContainerEditConfig
- type ContainerEditConfigHostConfig
- type ContainerEditConfigNetwork
- type ContainerEndpointSettingsCreate
- type ContainerGenerateComposeRequest
- type ContainerGenerateComposeResponse
- type ContainerHealth
- type ContainerHealthLogEntry
- type ContainerHealthcheck
- type ContainerHealthcheckCreate
- type ContainerHostConfig
- type ContainerHostConfigCreate
- type ContainerHostConfigEdit
- type ContainerMount
- type ContainerMountCreate
- type ContainerNetworkEndpoint
- type ContainerNetworkSettings
- type ContainerNetworkingConfigCreate
- type ContainerPort
- type ContainerPortBindingCreate
- type ContainerProcesses
- type ContainerRegistry
- type ContainerRegistryCredential
- type ContainerRegistryDeleteTagResponse
- type ContainerRegistryDigestResult
- type ContainerRegistryPullUsage
- type ContainerRegistryPullUsageResponse
- type ContainerRegistryRepository
- type ContainerRegistryRepositoryTag
- type ContainerRegistrySync
- type ContainerRegistrySyncRequest
- type ContainerRegistryTagPlatform
- type ContainerResourceSample
- type ContainerResourceSampleBatch
- type ContainerResourceSampleSubscription
- type ContainerRestartPolicyCreate
- type ContainerSetAutoUpdateRequest
- type ContainerState
- type ContainerStatusCounts
- type ContainerSummary
- type ContainerSummaryGroup
- type ConvertDockerRunRequest
- type ConvertDockerRunResponse
- type Create
- type CreateEnrollmentTokenRequest
- type CreateProject
- type CreateProjectResponse
- type CreateProjectWorkspaceManifest
- type CreateSystemBackupRequest
- type CreateUploadSessionRequest
- type CreateVolumeBackupRequest
- type CurrentUserContextKey
- type CustomTheme
- type DashboardDockerSnapshot
- type DashboardWidgetConfig
- type DashboardWidgetLayout
- type DefaultTemplatesResponse
- type DeleteSystemBackupRequest
- type DeploymentSnippet
- type DeploymentSnippetFile
- type DeploymentSnippetMTLS
- type Diagnostics
- type DiagnosticsCommand
- type DiagnosticsMessage
- type DiscoverSystemBackupsRequest
- type DiscoverVolumeBackupsRequest
- type DiscoverVolumeBackupsResponse
- type DockerInfo
- type DockerRunCommand
- type DynamicScheduler
- type EnrollmentToken
- type EnrollmentTokenCreated
- type EnrollmentTokenSecret
- type EnvSummary
- type EnvVariable
- type Environment
- type EnvironmentChanges
- type EnvironmentData
- type EnvironmentFailure
- type EnvironmentInput
- type EnvironmentRef
- type EnvironmentStreamEvent
- type EnvironmentSyncStatus
- type EnvironmentTag
- type EnvironmentTest
- type EnvironmentTunnelRestart
- type EnvironmentVulnerabilitySummary
- type ErrorResponse
- type Event
- type EventSeverityCounts
- type EventStreamEvent
- type FeatureDefinition
- type FeatureDisabledError
- type FeatureID
- type FederatedCredential
- type FederatedTokenResponse
- type FieldError
- type FileTreeNode
- type FileTreeNodeType
- type FrozenUpdateTarget
- type GCInfo
- type GPUStats
- type GenericJob
- func (g *GenericJob) Name() string
- func (g *GenericJob) Reconcile(ctx context.Context, previous SchedulerRun) (SchedulerOutcome, error)
- func (g *GenericJob) Run(ctx context.Context) (SchedulerOutcome, error)
- func (g *GenericJob) Schedule(ctx context.Context) string
- func (g *GenericJob) ShouldSchedule(ctx context.Context) bool
- type GitBranchInfo
- type GitBranchesResponse
- type GitOpsBackupFileChange
- type GitOpsBackupFileDiff
- type GitOpsBackupHistoryEntry
- type GitOpsBackupHistoryResponse
- type GitOpsBackupPreview
- type GitOpsBackupRevision
- type GitOpsBrowseResponse
- type GitOpsPreDeployConfigRequest
- type GitOpsResolveBackupConflictRequest
- type GitOpsSync
- type GitOpsSyncCounts
- type GitOpsSyncResult
- type GitOpsSyncStatus
- type GitRepository
- type GitRepositorySync
- type GitRepositorySyncRequest
- type GlobalVariable
- type GlobalVariableMutationResponse
- type GoroutineFrame
- type GoroutineGroup
- type GoroutineLeakReport
- type GoroutineProfile
- type HardenedImageInfo
- type HardenedImageSupportStatus
- type HealthResponse
- type IgnoredVulnerability
- type ImageAttestation
- type ImageAttestationList
- type ImageAttestationSubject
- type ImageBuildRecord
- type ImageDetailSummary
- type ImageExposure
- type ImageHistoryItem
- type ImageListResponse
- type ImageLoadResult
- type ImagePruneReport
- type ImagePullOptions
- type ImageReleaseNotes
- type ImageSearchResult
- type ImageSummary
- type ImageTagRequest
- type ImageUpdateBatchResponse
- type ImageUpdateCheckRequest
- type ImageUpdateInfo
- type ImageUpdateResponse
- type ImageUpdateSummary
- type ImageUsageCounts
- type ImageUsedBy
- type ImportGitOpsSyncRequest
- type ImportGitOpsSyncResponse
- type JobController
- type JobListResponse
- type JobListRunsInput
- type JobListRunsOutput
- type JobMetadata
- type JobPrerequisite
- type JobPrerequisiteMetadata
- type JobRunInput
- type JobRunOutput
- type JobRunResponse
- type JobRuntimeState
- type JobScheduleConfig
- type JobScheduler
- type JobStatus
- type JobSubmitRunInput
- type JsonObject
- type KubeDownPod
- type KubeDownReport
- type KubeDownRequest
- type KubeGenerateRequest
- type KubeGenerateResponse
- type KubeGenerateType
- type KubePlayPod
- type KubePlayReport
- type KubePlayRequest
- type KubePlayVolume
- type LifecycleExtraMount
- type LogStreamOptions
- type MFAChallenge
- type MemoryInfo
- type MessageResponse
- type MobilePasskeyCompletion
- type Network
- type NetworkContainerEndpoint
- type NetworkContainerRequest
- type NetworkCreateOptions
- type NetworkCreateResponse
- type NetworkIPAM
- type NetworkIPAMConfig
- type NetworkInspect
- type NetworkPruneReport
- type NetworkSummary
- type NetworkTopology
- type NetworkTopologyEdge
- type NetworkTopologyNode
- type NetworkTopologyNodeMetadata
- type NetworkTopologyNodeType
- type NetworkUsageCounts
- type NodeAgentBindingKind
- type NodeAgentBindingRequest
- type NodeAgentCandidate
- type NodeAgentReconcileRequest
- type NodeAgentReconcileResponse
- type NodeAgentReconcileResult
- type NodeAgentState
- type NodeAgentStatus
- type NotificationDispatchAutoHeal
- type NotificationDispatchBatchContainerUpdate
- type NotificationDispatchBatchImageUpdate
- type NotificationDispatchContainerUpdate
- type NotificationDispatchImageUpdate
- type NotificationDispatchKind
- type NotificationDispatchPruneReport
- type NotificationDispatchRequest
- type NotificationDispatchResponse
- type NotificationDispatchVulnerabilityFound
- type NotificationProvider
- type NotificationSettings
- type NotificationTestResponse
- type OidcAuthUrlRequest
- type OidcAuthUrlResponse
- type OidcCallbackRequest
- type OidcConfigResponse
- type OidcDeviceAuthRequest
- type OidcDeviceAuthResponse
- type OidcDeviceTokenRequest
- type OidcRoleMapping
- type OidcRoleMappingSpec
- type OidcStatusInfo
- type OidcTokenResponse
- type OidcUserInfo
- type Paginated
- type PaginatedWithCounts
- type PaginatedWithWarnings
- type PaginationResponse
- type PasskeyLoginAvailability
- type PasswordChange
- type PatchMode
- type PatchOptions
- type PatchRecord
- type PatchScanSummary
- type PatchStatus
- type PatchTarget
- type PermissionAction
- type PermissionPreset
- type PermissionResource
- type PermissionsManifest
- type Pod
- type PodActionRequest
- type PodContainer
- type PodCreateRequest
- type PodCreateResponse
- type PodDevice
- type PodDeviceLimit
- type PodInfraConfig
- type PodInspect
- type PodInspectContainer
- type PodMount
- type PodNetwork
- type PodPortBinding
- type PodPortMapping
- type PodPruneReport
- type PodStats
- type PodThrottleDevice
- type PodTop
- type PodVolume
- type PodWeightDevice
- type PodmanAutoUpdateMode
- type PodmanAutoUpdateOptions
- type PodmanAutoUpdateReport
- type PodmanAutoUpdateResult
- type PodmanContainer
- type PodmanInfo
- type PodmanInfoConmon
- type PodmanInfoContainerStore
- type PodmanInfoDistribution
- type PodmanInfoHelperBinary
- type PodmanInfoHost
- type PodmanInfoIDMap
- type PodmanInfoIDMappings
- type PodmanInfoImageStore
- type PodmanInfoNetworkBackend
- type PodmanInfoNetworkDNS
- type PodmanInfoOCIRuntime
- type PodmanInfoPlugins
- type PodmanInfoRegistries
- type PodmanInfoRemoteSocket
- type PodmanInfoSecurity
- type PodmanInfoStore
- type PodmanInfoVersion
- type PodmanSecret
- type PodmanSecretCreateRequest
- type PodmanSecretCreateResponse
- type PodmanSecretDriver
- type PodmanSecretSpec
- type PodmanSecretUpdateRequest
- type PodmanStatus
- type PodmanSystemdAvailability
- type PodmanSystemdScope
- type PodmanUnitStatus
- type PodmanVersion
- type PodmanVersionComponent
- type PortMapping
- type Project
- type ProjectBuildOptions
- type ProjectBuildRequest
- type ProjectConfigurationError
- type ProjectDeployOptions
- type ProjectDestroy
- type ProjectDetailsOptions
- type ProjectIncludeFile
- type ProjectRecord
- type ProjectReference
- type ProjectRenameJournal
- type ProjectRenameRecoveryOperations
- type ProjectRenameRollbackCleanup
- type ProjectRuntimeService
- type ProjectServiceUpdateInfo
- type ProjectStatusCounts
- type ProjectTag
- type ProjectTagAssignment
- type ProjectTagColor
- type ProjectTagOption
- type ProjectTagSource
- type ProjectUpdateInfo
- type ProjectVolumeRenameConflictError
- type ProjectVolumeRenameInUseError
- type ProjectVolumeRenameInsufficientSpaceError
- type ProjectWorkspaceUpdateManifest
- type ProjectsDirectoryEntry
- type ProjectsDirectoryStatus
- type PruneAllRequest
- type PruneAllResult
- type PruneBuildCacheMode
- type PruneBuildCacheOptions
- type PruneContainerMode
- type PruneContainersOptions
- type PruneImageMode
- type PruneImagesOptions
- type PruneNetworkMode
- type PruneNetworksOptions
- type PruneVolumeMode
- type PruneVolumesOptions
- type Quadlet
- type QuadletDetail
- type QuadletFile
- type QuadletInstallReport
- type QuadletInstallRequest
- type QuadletRemoveReport
- type QuadletType
- type QuadletUpdateRequest
- type ReadinessResponse
- type RecoveryManifest
- type RecoveryRestoreRepository
- type RecoveryRestoreRequest
- type RecoveryRestoreStage
- type RecoveryRestoreTarget
- type RecoverySafetyBackup
- type RemoteTemplate
- type RestoreSystemBackupFilesRequest
- type RiskBand
- type RiskDrivers
- type RiskExposureBreakdown
- type RiskFinding
- type RiskImage
- type RiskOverview
- type RiskScoreBasis
- type RiskScoreDriver
- type RiskTrendPoint
- type Role
- type RoleAssignment
- type RoleAssignmentSummary
- type RunObserver
- type RunStatus
- type RunSystemVolumeBackupsRequest
- type RuntimeInfo
- type S3Destination
- type S3DestinationSyncRequest
- type S3DestinationUsage
- type SaveDefaultTemplatesRequest
- type SchedulerActivitySyncCommand
- type SchedulerAdmissionCommand
- type SchedulerAdmissionKey
- type SchedulerAdmissionState
- type SchedulerAttempt
- type SchedulerCoordinatorImport
- type SchedulerCoordinatorState
- type SchedulerDispatchIntent
- type SchedulerExecutionClaim
- type SchedulerExecutionCommand
- type SchedulerJob
- type SchedulerOutcome
- type SchedulerOutcomeError
- type SchedulerQueueRecord
- type SchedulerReconciler
- type SchedulerRequest
- type SchedulerRetryValidator
- type SchedulerRun
- type SchedulerRunList
- type SchedulerScheduleCommand
- type SchedulerWorkerHealth
- type SearchRequest
- type SearchResponse
- type SessionBootstrap
- type SessionMeta
- type SetUserRoleAssignments
- type SettingMetadata
- type SettingState
- type SettingUpdate
- type SettingsRuntime
- type SettingsSnapshot
- type SettingsUpdate
- type SourceCleanupError
- type StartUpgradeJobRequest
- type StepOutcome
- type StoppableBusWatcher
- type StreamEvent
- type SubmittedBody
- type SwarmBindingCandidate
- type SwarmConfig
- type SwarmConfigUpdateRequest
- type SwarmInfo
- type SwarmInitRequest
- type SwarmInitResponse
- type SwarmJoinCandidate
- type SwarmJoinEnvironmentResult
- type SwarmJoinEnvironmentResultState
- type SwarmJoinEnvironmentRole
- type SwarmJoinEnvironmentTarget
- type SwarmJoinEnvironmentsRequest
- type SwarmJoinEnvironmentsResponse
- type SwarmJoinRequest
- type SwarmJoinTokensResponse
- type SwarmLeaveRequest
- type SwarmNode
- type SwarmRotateJoinTokensRequest
- type SwarmRuntimeStatus
- type SwarmSecret
- type SwarmSecretUpdateRequest
- type SwarmServiceCreateOptions
- type SwarmServiceCreateRequest
- type SwarmServiceCreateResponse
- type SwarmServiceInspect
- type SwarmServiceMount
- type SwarmServiceNetworkConfigDetail
- type SwarmServiceNetworkDetail
- type SwarmServiceNetworkIPAMConfig
- type SwarmServicePort
- type SwarmServiceScaleRequest
- type SwarmServiceSummary
- type SwarmServiceUpdateOptions
- type SwarmServiceUpdateRequest
- type SwarmServiceUpdateResponse
- type SwarmStackDeployRequest
- type SwarmStackDeployResponse
- type SwarmStackInspect
- type SwarmStackRenderConfigRequest
- type SwarmStackRenderConfigResponse
- type SwarmStackSource
- type SwarmStackSummary
- type SwarmSyncFile
- type SwarmTaskSummary
- type SwarmUnlockKeyResponse
- type SwarmUnlockRequest
- type SwarmUpdateRequest
- type SystemBackupDestination
- type SystemBackupPolicy
- type SystemBackupPolicyCollection
- type SystemBackupRecoveryKey
- type SystemBackupRecoveryKeyStatus
- type SystemBackupRun
- type SystemDiskUsage
- type SystemStats
- type SystemVolumeBackupCustomRun
- type SystemVolumeBackupFailure
- type SystemVolumeBackupHistoryEntry
- type SystemVolumeBackupOption
- type SystemVolumeBackupPolicy
- type SystemVolumeBackupPolicyCollection
- type SystemVolumeBackupRunResult
- type SystemVolumeSelectionMode
- type TargetMissingWithSourceError
- type TargetOutcome
- type TargetPreservedDuringRollbackError
- type Template
- type TemplateBaseRegistry
- type TemplateContent
- type TemplateMeta
- type TemplateRegistry
- type TemplateRemoteRegistry
- type ThemePalette
- type ThreatIntelEntry
- type ThreatIntelStatus
- type TimeFormat
- type TokenExchangeRequest
- type TokenRefreshResponse
- type TrivyCVSS
- type TrivyDataSource
- type TrivyLayer
- type TrivyMetadata
- type TrivyOS
- type TrivyReport
- type TrivyResults
- type TrivyVulnerability
- type UnmanagedBackupSweep
- type Update
- type UpdateBackupPolicy
- type UpdateProjectTag
- type UpdateProjectTagResponse
- type UpdateSystemBackupPolicies
- type UpdateSystemVolumeBackupPolicies
- type UpdateSystemVolumeBackupPolicy
- type UpdateVolumeBackupPolicies
- type UpdaterCheckProjectInput
- type UpdaterOptions
- type UpdaterResourceResult
- type UpdaterResult
- type UpdaterStatus
- type UpgradeCheckResult
- type UpgradeJob
- type UpgradeJobResult
- type UpgradeProgressEvent
- type UploadConsumeRequest
- type UploadSession
- type UploadSystemBackupRequest
- type UploadVolumeBackupRequest
- type User
- type UserPreferences
- type UserRoleAssignmentInput
- type VersionCheck
- type VersionInfo
- type VersionStreamEvent
- type Volume
- type VolumeBackup
- type VolumeBackupDestination
- type VolumeBackupEntry
- type VolumeBackupFileRestoreOptions
- type VolumeBackupFormat
- type VolumeBackupPolicy
- type VolumeBackupPolicyCollection
- type VolumeJournalSource
- type VolumeJournalVolume
- type VolumeMigration
- type VolumePruneReport
- type VolumeRename
- type VolumeRenameCommitter
- type VolumeRenameEntry
- type VolumeSourcePathMapper
- type VolumeUsageCounts
- type VolumeWorkspaceFileChange
- type VolumeWorkspaceUpdateManifest
- type VolumesExternallyRemovedError
- type Vulnerability
- type VulnerabilityBulkIgnoreResponse
- type VulnerabilityPackageInsight
- type VulnerabilityPatchPriority
- type VulnerabilityScanInsights
- type VulnerabilityScanPhase
- type VulnerabilityScanResult
- type VulnerabilityScanStatus
- type VulnerabilityScanSummariesRequest
- type VulnerabilityScanSummariesResponse
- type VulnerabilityScanSummary
- type VulnerabilityScannerStatus
- type VulnerabilityScoreStatus
- type VulnerabilitySeverity
- type VulnerabilitySeveritySummary
- type VulnerabilityWithImage
- type WebSocketConnectionInfo
- type WebSocketDiagnostics
- type WebSocketMetricsSnapshot
- type Webhook
- type WebhookCreated
- type WorkerController
- type Workspace
- type WorkspaceFileChange
- type WorkspaceFileContent
- type WorkspaceFileEntry
- type WorkspaceUpdateManifest
- type WorkspaceUploadRequest
Constants ¶
const ( ActivityTypeJobRun ActivityType = "job_run" ActivityStatusQueued ActivityStatus = "queued" ActivityStatusRunning ActivityStatus = "running" ActivityStatusSuccess ActivityStatus = "success" ActivityStatusFailed ActivityStatus = "failed" ActivityStatusCancelled ActivityStatus = "cancelled" ActivityTypeImagePull ActivityType = "image_pull" ActivityTypeImageBuild ActivityType = "image_build" ActivityTypeImageUpdateCheck ActivityType = "image_update_check" ActivityTypeProjectPull ActivityType = "project_pull" ActivityTypeProjectBuild ActivityType = "project_build" ActivityTypeProjectDeploy ActivityType = "project_deploy" ActivityTypeProjectRedeploy ActivityType = "project_redeploy" ActivityTypeProjectDown ActivityType = "project_down" ActivityTypeProjectRestart ActivityType = "project_restart" ActivityTypeProjectDestroy ActivityType = "project_destroy" ActivityTypeContainerStart ActivityType = "container_start" ActivityTypeContainerStop ActivityType = "container_stop" ActivityTypeContainerRestart ActivityType = "container_restart" ActivityTypeContainerRedeploy ActivityType = "container_redeploy" ActivityTypeContainerEdit ActivityType = "container_edit" ActivityTypeContainerDelete ActivityType = "container_delete" ActivityTypeContainerKill ActivityType = "container_kill" ActivityTypeContainerPause ActivityType = "container_pause" ActivityTypeContainerUnpause ActivityType = "container_unpause" ActivityTypeVulnerabilityScan ActivityType = "vulnerability_scan" ActivityTypeImagePatch ActivityType = "image_patch" ActivityTypeAutoUpdate ActivityType = "auto_update" ActivityTypeSystemPrune ActivityType = "system_prune" ActivityTypeResourceAction ActivityType = "resource_action" ActivityMessageLevelInfo ActivityMessageLevel = "info" ActivityMessageLevelWarning ActivityMessageLevel = "warning" ActivityMessageLevelError ActivityMessageLevel = "error" ActivityMessageLevelSuccess ActivityMessageLevel = "success" )
const ( SystemBackupDestinationLocal SystemBackupDestination = "local" SystemBackupDestinationS3 SystemBackupDestination = "s3" SystemBackupDestinationLocalS3 SystemBackupDestination = "local_s3" SystemBackupStatusRunning = "running" SystemBackupStatusSucceeded = "succeeded" SystemBackupStatusFailed = "failed" SystemBackupTriggerManual = "manual" SystemBackupTriggerScheduled = "scheduled" SystemBackupTriggerSafety = "safety" SystemBackupTriggerManager = "manager" BackupManagementTypeSystem BackupManagementType = "system" BackupManagementTypeVolume BackupManagementType = "volume" SystemVolumePolicyPrefix = "system-volume:" SystemVolumeManualSeriesOwner = "manual" SystemVolumeSelectionAll SystemVolumeSelectionMode = "all" SystemVolumeSelectionAllowlist SystemVolumeSelectionMode = "allowlist" SystemVolumeSelectionBlocklist SystemVolumeSelectionMode = "blocklist" VolumeBackupStatusRunning = "running" VolumeBackupStatusSucceeded = "succeeded" VolumeBackupStatusFailed = "failed" VolumeBackupTriggerManual = "manual" VolumeBackupTriggerScheduled = "scheduled" VolumeBackupTriggerSafety = "safety" )
const ( ContainerSortCPUUsage = "cpuUsage" ContainerSortMemoryUsage = "memoryUsage" )
Resource sort keys accepted by the container list endpoint. They are part of the shared API contract: the manager's environment proxy inspects the sort query parameter to enforce the additional containers:read permission before forwarding resource-sorted requests to an agent.
const ( FeatureVulnerabilityManagement FeatureID = "vulnerabilityManagement" FeatureVulnerabilityManagementSettingKey = "featureVulnerabilityManagementEnabled" FeatureSwarm FeatureID = "swarm" FeatureSwarmSettingKey = "featureSwarmEnabled" )
const ( TokenExchangeGrantType = "urn:ietf:params:oauth:grant-type:token-exchange" // #nosec G101: RFC 8693 grant type identifier, not a credential. SubjectTokenTypeJWT = "urn:ietf:params:oauth:token-type:jwt" // #nosec G101: RFC 8693 token type identifier, not a credential. SubjectTokenTypeIDToken = "urn:ietf:params:oauth:token-type:id_token" // #nosec G101: RFC 8693 token type identifier, not a credential. IssuedTokenTypeAccessToken = "urn:ietf:params:oauth:token-type:access_token" // #nosec G101: RFC 8693 token type identifier, not a credential. RequestedTokenTypeAccessJWT = "urn:ietf:params:oauth:token-type:access_token" // #nosec G101: RFC 8693 token type identifier, not a credential. FederatedMatchTypeExact = "exact" FederatedMatchTypeGlob = "glob" )
const ( GitOpsSyncModeDeploy = "deploy" GitOpsSyncModeBackup = "backup" GitOpsBackupStateNever = "never" GitOpsBackupStatePending = "pending" GitOpsBackupStateBackingUp = "backing_up" GitOpsBackupStateBackedUp = "backed_up" GitOpsBackupStatePaused = "paused" GitOpsBackupStateFailed = "failed" GitOpsBackupStateNeedsAttention = "needs_attention" GitOpsBackupFailureRepository = "repository" GitOpsBackupFailureAuth = "auth" GitOpsBackupFailureProjectMissing = "project_missing" GitOpsBackupFailureSnapshot = "snapshot" GitOpsBackupFailureUnreadableFiles = "unreadable_files" GitOpsBackupFailureLimits = "limits" GitOpsBackupFailureConflict = "conflict" GitOpsBackupFailureDestinationOccupied = "destination_occupied" GitOpsBackupFailurePushRejected = "push_rejected" GitOpsBackupConflictUseArcane = "use_arcane" FileTreeNodeTypeFile FileTreeNodeType = "file" FileTreeNodeTypeDirectory FileTreeNodeType = "directory" )
const ( PatchModeUpdateAll PatchMode = "update-all" PatchModeReport PatchMode = "report" PatchStatusPatching PatchStatus = "patching" PatchStatusCompleted PatchStatus = "completed" PatchStatusFailed PatchStatus = "failed" )
const ( LifecycleDefaultTimeoutSec = 60 LifecycleDefaultMaxTimeoutSec = 300 )
const ( NotificationProviderDiscord NotificationProvider = "discord" NotificationProviderEmail NotificationProvider = "email" NotificationProviderTelegram NotificationProvider = "telegram" NotificationProviderSignal NotificationProvider = "signal" NotificationProviderSlack NotificationProvider = "slack" NotificationProviderNtfy NotificationProvider = "ntfy" NotificationProviderPushover NotificationProvider = "pushover" NotificationProviderGotify NotificationProvider = "gotify" NotificationProviderMatrix NotificationProvider = "matrix" NotificationProviderGoogleChat NotificationProvider = "googlechat" NotificationProviderGeneric NotificationProvider = "generic" NotificationDispatchKindImageUpdate NotificationDispatchKind = "image_update" NotificationDispatchKindBatchImageUpdate NotificationDispatchKind = "batch_image_update" NotificationDispatchKindContainerUpdate NotificationDispatchKind = "container_update" NotificationDispatchKindBatchContainerUpdate NotificationDispatchKind = "batch_container_update" NotificationDispatchKindVulnerabilityFound NotificationDispatchKind = "vulnerability_found" NotificationDispatchKindPruneReport NotificationDispatchKind = "prune_report" NotificationDispatchKindAutoHeal NotificationDispatchKind = "auto_heal" )
const ( PodmanAutoUpdateModeREST PodmanAutoUpdateMode = "rest" PodmanAutoUpdateModeSystemd PodmanAutoUpdateMode = "systemd" KubeGenerateTypePod KubeGenerateType = "pod" KubeGenerateTypeService KubeGenerateType = "service" KubeGenerateTypeDeployment KubeGenerateType = "deployment" KubeGenerateTypeDaemonSet KubeGenerateType = "daemonset" KubeGenerateTypeJob KubeGenerateType = "job" PodmanSystemdUnitLabel = "PODMAN_SYSTEMD_UNIT" QuadletTypeContainer QuadletType = "container" QuadletTypePod QuadletType = "pod" QuadletTypeKube QuadletType = "kube" QuadletTypeNetwork QuadletType = "network" QuadletTypeVolume QuadletType = "volume" QuadletTypeImage QuadletType = "image" QuadletTypeBuild QuadletType = "build" QuadletTypeArtifact QuadletType = "artifact" PodmanSystemdScopeSystem PodmanSystemdScope = "system" PodmanSystemdScopeUser PodmanSystemdScope = "user" )
const ( ProjectTagSourceUI ProjectTagSource = "ui" ProjectTagSourceCompose ProjectTagSource = "compose" ProjectTagColorGray ProjectTagColor = "gray" ProjectTagColorPurple ProjectTagColor = "purple" ProjectTagColorBlue ProjectTagColor = "blue" ProjectTagColorGreen ProjectTagColor = "green" ProjectTagColorYellow ProjectTagColor = "yellow" ProjectTagColorOrange ProjectTagColor = "orange" ProjectTagColorRed ProjectTagColor = "red" ProjectTagColorPink ProjectTagColor = "pink" ProjectStatusRunning = "running" ProjectStatusStopped = "stopped" ProjectStatusPartiallyRunning = "partially running" ProjectStatusUnknown = "unknown" ProjectStatusDeploying = "deploying" ProjectStatusStopping = "stopping" ProjectStatusRestarting = "restarting" ProjectRenameJournalKeyPrefix = "project_rename_journal:" ProjectRenameRollbackCleanupKeyPrefix = "project_rename_rollback_cleanup:" ProjectRenameJournalPhaseStarted = "started" ProjectRenameJournalPhaseTargetsCopied = "targets_copied" ProjectRenameJournalPhaseOldVolumesRemoved = "old_volumes_removed" ProjectRenameJournalPhaseProjectStateCommitted = "project_state_committed" ProjectRenameJournalPhaseSourceCleanupPending = "source_cleanup_pending" ProjectRenameJournalPhaseProjectStateRolledBack = "project_state_rolled_back" )
const ( StreamChannelEnvironments = "environments" StreamChannelActivities = "activities" StreamChannelEvents = "events" StreamChannelVersion = "version" StreamChannelUpgrade = "arcane-upgrade" )
const ( SwarmJoinEnvironmentRoleWorker SwarmJoinEnvironmentRole = "worker" SwarmJoinEnvironmentRoleManager SwarmJoinEnvironmentRole = "manager" SwarmJoinEnvironmentResultJoined SwarmJoinEnvironmentResultState = "joined" SwarmJoinEnvironmentResultAlreadyMember SwarmJoinEnvironmentResultState = "already_member" SwarmJoinEnvironmentResultJoinedUnverified SwarmJoinEnvironmentResultState = "joined_unverified" SwarmJoinEnvironmentResultFailed SwarmJoinEnvironmentResultState = "failed" NodeAgentStateNone NodeAgentState = "none" NodeAgentStatePending NodeAgentState = "pending" NodeAgentStateOffline NodeAgentState = "offline" NodeAgentStateConnected NodeAgentState = "connected" NodeAgentStateMismatched NodeAgentState = "mismatched" NodeAgentStateAmbiguous NodeAgentState = "ambiguous" NodeAgentBindingKindLocal NodeAgentBindingKind = "local" NodeAgentBindingKindEnvironment NodeAgentBindingKind = "environment" NodeAgentBindingKindDedicated NodeAgentBindingKind = "dedicated" SwarmStackNamespaceLabel = "com.docker.stack.namespace" )
const ( PruneContainerModeNone PruneContainerMode = "none" PruneContainerModeStopped PruneContainerMode = "stopped" PruneContainerModeOlderThan PruneContainerMode = "olderThan" PruneImageModeNone PruneImageMode = "none" PruneImageModeDangling PruneImageMode = "dangling" PruneImageModeAll PruneImageMode = "all" PruneImageModeOlderThan PruneImageMode = "olderThan" PruneVolumeModeNone PruneVolumeMode = "none" PruneVolumeModeAnonymous PruneVolumeMode = "anonymous" PruneVolumeModeAll PruneVolumeMode = "all" PruneNetworkModeNone PruneNetworkMode = "none" PruneNetworkModeUnused PruneNetworkMode = "unused" PruneNetworkModeOlderThan PruneNetworkMode = "olderThan" PruneBuildCacheModeNone PruneBuildCacheMode = "none" PruneBuildCacheModeUnused PruneBuildCacheMode = "unused" PruneBuildCacheModeAll PruneBuildCacheMode = "all" PruneBuildCacheModeOlderThan PruneBuildCacheMode = "olderThan" UpgradeProgressEventStage = "stage" UpgradeProgressEventProgress = "progress" UpgradeProgressEventLog = "log" UpgradeProgressEventDone = "done" WSKindProjectLogs = "project_logs" WSKindContainerLogs = "container_logs" WSKindContainerStats = "container_stats" WSKindContainerExec = "container_exec" WSKindSystemStats = "system_stats" WSKindServiceLogs = "service_logs" WSKindDiagnostics = "diagnostics" )
const ( UpdaterStatusChecked = "checked" UpdaterStatusUpdated = "updated" UpdaterStatusRestarted = "restarted" UpdaterStatusSkipped = "skipped" UpdaterStatusFailed = "failed" UpdaterStatusUpToDate = "up_to_date" UpdaterStatusUpdateAvailable = "update_available" )
const ( UploadKindImage = "image" UploadKindVolumeBackup = "volume-backup" UploadKindBuildWorkspace = "build-workspace" UploadDefaultChunkSize int64 = 10 * 1024 * 1024 UploadMinChunkSize int64 = 1 * 1024 * 1024 UploadMaxChunkSize int64 = 50 * 1024 * 1024 )
const ( VolumeBackupDestinationLocal VolumeBackupDestination = "local" VolumeBackupDestinationS3 VolumeBackupDestination = "s3" VolumeBackupDestinationLocalS3 VolumeBackupDestination = "local_s3" VolumeBackupFormatArchive VolumeBackupFormat = "archive" VolumeBackupFormatRustic VolumeBackupFormat = "rustic" FileOpRestoreFile = "restore_file" )
const ( VulnerabilitySeverityUnknown VulnerabilitySeverity = "UNKNOWN" VulnerabilitySeverityLow VulnerabilitySeverity = "LOW" VulnerabilitySeverityMedium VulnerabilitySeverity = "MEDIUM" VulnerabilitySeverityHigh VulnerabilitySeverity = "HIGH" VulnerabilitySeverityCritical VulnerabilitySeverity = "CRITICAL" TrivyClassOSPackages = "os-pkgs" TrivyClassLangPackages = "lang-pkgs" RiskBandNone RiskBand = "none" RiskBandLow RiskBand = "low" RiskBandMedium RiskBand = "medium" RiskBandHigh RiskBand = "high" RiskBandCritical RiskBand = "critical" VulnerabilityScoreStatusComplete VulnerabilityScoreStatus = "complete" ImageExposureRunning ImageExposure = "running" ImageExposureStopped ImageExposure = "stopped" ImageExposureUnused ImageExposure = "unused" ImageExposureUnknown ImageExposure = "unknown" VulnerabilityScanStatusPending VulnerabilityScanStatus = "pending" VulnerabilityScanStatusScanning VulnerabilityScanStatus = "scanning" VulnerabilityScanStatusCompleted VulnerabilityScanStatus = "completed" VulnerabilityScanStatusFailed VulnerabilityScanStatus = "failed" VulnerabilityScanPhaseCreatingContainer VulnerabilityScanPhase = "creating_container" VulnerabilityScanPhaseScanningImage VulnerabilityScanPhase = "scanning_image" VulnerabilityScanPhaseStoringResults VulnerabilityScanPhase = "storing_results" )
const ( FileOpCreateFile = "create_file" FileOpCreateFolder = "create_folder" FileOpUpdateFile = "update_file" FileOpRename = "rename" FileOpMove = "move" FileOpDelete = "delete" FileReadOnlyBinary = "binary" FileReadOnlyTooLarge = "too_large" FileReadOnlySymlink = "symlink" FileReadOnlySpecial = "special" FileReadOnlyGitOpsManaged = "gitops_managed" )
const (
DefaultAccentColor = "oklch(0.606 0.25 292.717)"
)
const (
EnrollmentTokenPrefix = "arc_etkn_"
)
const (
LocalDockerEnvironmentID = "0"
)
const (
RecoveryManifestFormatVersion = 3
)
Variables ¶
var ( SafeThemeColor = regexp.MustCompile(`^(?:#[0-9a-fA-F]{3,8}|(?:rgb|rgba|hsl|hsla|oklch|oklab)\([0-9a-zA-Z%. ,/-]{1,64}\))$`) SafeAccentColor = regexp.MustCompile( `^(?:#[0-9a-fA-F]{3,8}|(?i:aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|` + `chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|` + `darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|` + `deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|` + `honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|` + `lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|` + `limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|` + `mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|` + `paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|` + `seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|transparent|turquoise|violet|` + `wheat|white|whitesmoke|yellow|yellowgreen)|(?:rgb|rgba|hsl|hsla|oklch|oklab)\([0-9a-zA-Z%. ,/-]{1,64}\))$`, ) )
var SystemUser = Actor{Username: "System"}
Functions ¶
func GetAllJobMetadata ¶
func GetAllJobMetadata() map[string]JobMetadata
func IsContainerResourceSort ¶
func QuadletUnit ¶
Types ¶
type AccessSurface ¶
type AccessSurface struct {
ID string `json:"id" doc:"Stable surface identifier" example:"settings.category.webhooks"`
Kind string `json:"kind" enum:"route,settings-category,landing" doc:"Surface type"`
URL string `json:"url,omitempty" doc:"Route URL or prefix represented by this surface" example:"/system/webhooks"`
Label string `json:"label" doc:"Human-readable surface label" example:"Webhooks"`
AccessMode string `json:"accessMode" enum:"permissions,any-child" doc:"How reachability is evaluated"`
MatchMode string `json:"matchMode" enum:"any-of,all-of" doc:"How permissions are combined when accessMode is permissions"`
ScopeMode string `json:"scopeMode" enum:"global-only,env-plus-global,any-effective-scope" doc:"Which effective permission scope is considered"`
Permissions []string `json:"permissions,omitempty" doc:"Permissions used by permission-based surfaces"`
Children []string `json:"children,omitempty" doc:"Child surface IDs used by aggregate landing surfaces"`
FallbackOrder int `json:"fallbackOrder,omitempty" doc:"Positive ordering hint for route fallback selection"`
}
type Activity ¶
type Activity struct {
StartedAt time.Time `json:"startedAt"`
CreatedAt time.Time `json:"createdAt"`
BatchID *string `json:"batchId,omitempty"`
ResourceType *string `json:"resourceType,omitempty"`
ResourceID *string `json:"resourceId,omitempty"`
ResourceName *string `json:"resourceName,omitempty"`
Progress *int `json:"progress,omitempty"`
StartedBy *ActivityStartedBy `json:"startedBy,omitempty"`
EndedAt *time.Time `json:"endedAt,omitempty"`
DurationMs *int64 `json:"durationMs,omitempty"`
Error *string `json:"error,omitempty"`
Metadata map[string]any `json:"metadata,omitempty"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
EnvironmentTag
ID string `json:"id"`
SourceEnvironmentID string `json:"sourceEnvironmentId,omitempty"`
SourceEnvironmentName string `json:"sourceEnvironmentName,omitempty"`
Type ActivityType `json:"type"`
Status ActivityStatus `json:"status"`
Step string `json:"step,omitempty"`
LatestMessage string `json:"latestMessage,omitempty"`
}
type ActivityClearHistoryResult ¶
type ActivityClearHistoryResult struct {
Deleted int64 `json:"deleted"`
}
type ActivityDetail ¶
type ActivityDetail struct {
Activity Activity `json:"activity"`
Messages []ActivityMessage `json:"messages"`
}
type ActivityMessage ¶
type ActivityMessageLevel ¶
type ActivityMessageLevel string
type ActivityStartedBy ¶
type ActivityStatus ¶
type ActivityStatus string
type ActivityStreamEvent ¶
type ActivityStreamEvent struct {
Timestamp time.Time `json:"timestamp"`
Activity *Activity `json:"activity,omitempty"`
Message *ActivityMessage `json:"message,omitempty"`
Type string `json:"type"`
EnvironmentID string `json:"environmentId,omitempty"`
ActivityID string `json:"activityId,omitempty"`
Error string `json:"error,omitempty"`
ActivityType ActivityType `json:"-"`
Activities []Activity `json:"activities,omitempty"`
}
type ActivityType ¶
type ActivityType string
type Actor ¶
type Actor struct {
Preferences UserPreferences `json:"preferences"`
DisplayName *string `json:"displayName,omitempty"`
ID string `json:"id"`
Username string `json:"username"`
}
type ActorDiagnostics ¶
type ActorDiagnostics struct {
CheckedAt time.Time `json:"checkedAt"`
Runs map[string]int `json:"runs"`
EnvironmentID string `json:"environmentId"`
EnvironmentName string `json:"environmentName"`
Error string `json:"error,omitempty"`
Hosts []ActorHostInfo `json:"hosts"`
ActorTypes []ActorTypeInfo `json:"actorTypes"`
Ready bool `json:"ready"`
}
type ActorHostInfo ¶
type ActorInstance ¶
type ActorJobFailure ¶
type ActorProvider ¶
type ActorProvider interface{ Actor() *Actor }
type ActorTypeInfo ¶
type ActorTypeInfo struct {
NextAlarmAt time.Time `json:"nextAlarmAt,omitzero"`
ActorType string `json:"actorType"`
Instances []ActorInstance `json:"instances"`
RecentFailures []ActorJobFailure `json:"recentFailures"`
ConcurrencyLimit int `json:"concurrencyLimit"`
ActiveActors int `json:"activeActors"`
StoredStates int `json:"storedStates"`
PendingAlarms int `json:"pendingAlarms"`
PendingJobs int `json:"pendingJobs"`
LeasedAlarms int `json:"leasedAlarms"`
CompletedJobs int `json:"completedJobs"`
DeadJobs int `json:"deadJobs"`
}
type AgentEnrollRequest ¶
type AgentEnrollRequest struct {
Hostname string `json:"hostname" maxLength:"253" doc:"Hostname of the enrolling agent" trim:"true"`
SwarmNodeID string `json:"swarmNodeId,omitempty" required:"false" maxLength:"64" doc:"Swarm node ID when the agent runs on an active swarm node"`
SwarmClusterID string `` /* 130-byte string literal not displayed */
RequestID string `` /* 158-byte string literal not displayed */
}
type AgentEnrollResponse ¶
type AgentHostInfo ¶
type AgentHostInfo struct {
Hostname string `json:"hostname,omitempty"`
OS string `json:"os,omitempty"`
KernelVersion string `json:"kernelVersion,omitempty"`
Architecture string `json:"architecture,omitempty"`
DockerVersion string `json:"dockerVersion,omitempty"`
AgentVersion string `json:"agentVersion,omitempty"`
PublicIP string `json:"publicIp,omitempty"`
MemoryBytes int64 `json:"memoryBytes,omitempty"`
CPUs int32 `json:"cpus,omitempty"`
}
type AgentMTLSCertificate ¶
type AgentTunnelStats ¶
type AgentTunnelStats struct {
RoundTripMinMs *float64 `json:"roundTripMinMs,omitempty"`
RoundTripAvgMs *float64 `json:"roundTripAvgMs,omitempty"`
RoundTripMaxMs *float64 `json:"roundTripMaxMs,omitempty"`
LastDisconnectAt *time.Time `json:"lastDisconnectAt,omitempty"`
LastDisconnectReason string `json:"lastDisconnectReason,omitempty"`
BytesIn int64 `json:"bytesIn"`
BytesOut int64 `json:"bytesOut"`
StreamsOpened int64 `json:"streamsOpened"`
Sessions int `json:"sessions"`
}
type ApiKey ¶
type ApiKey struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true" doc:"Creation timestamp"`
Description *string `json:"description,omitempty" maxLength:"1000" doc:"Description of the API key" unorm:"nfc" trim:"true"`
UserID *string `json:"userId,omitempty" readOnly:"true" doc:"ID of the user who owns the API key"`
ExpiresAt *time.Time `json:"expiresAt,omitempty" doc:"Expiration date of the API key"`
LastUsedAt *time.Time `json:"lastUsedAt,omitempty" readOnly:"true" doc:"Last time the API key was used"`
UpdatedAt *time.Time `json:"updatedAt,omitempty" readOnly:"true" doc:"Last update timestamp"`
ID string `json:"id" readOnly:"true" doc:"Unique identifier of the API key"`
Name string `` /* 129-byte string literal not displayed */
KeyPrefix string `json:"keyPrefix" readOnly:"true" doc:"Prefix of the API key for identification"`
Kind string `` /* 143-byte string literal not displayed */
Permissions []ApiKeyPermissionGrant `` /* 159-byte string literal not displayed */
IsStatic bool `json:"isStatic" readOnly:"true" doc:"Whether the API key is environment-managed and protected from deletion"`
IsBootstrap bool `` /* 156-byte string literal not displayed */
}
type ApiKeyCreatedDto ¶
type ApiKeyPermissionGrant ¶
type ApiResponse ¶
type ApiResponse[T any] struct { Data T `json:"data" doc:"Response data"` Environments []EnvironmentData[T] `json:"environments,omitempty" doc:"Per-environment data behind a multi-environment response"` FailedEnvironments []EnvironmentFailure `json:"failedEnvironments,omitempty" doc:"Environments whose results are missing from a multi-environment response"` Success bool `json:"success" doc:"Whether the request was successful"` }
type ApnsDevice ¶
type ApnsDevice struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
Events map[string]bool `json:"events" required:"false"`
LastSeenAt *time.Time `json:"lastSeenAt,omitempty" readOnly:"true"`
ID string `json:"id" readOnly:"true"`
Label string `json:"label" required:"false" maxLength:"100" unorm:"nfc" trim:"true"`
EnvironmentIDs []string `json:"environmentIds" required:"false"`
}
type ApnsEnvelope ¶
type ApnsEnvelope struct {
OccurredAt time.Time `json:"occurredAt"`
Resource *ApnsResource `json:"resource,omitempty"`
Route ApnsRoute `json:"route"`
EventID string `json:"eventId"`
Type string `json:"type"`
Severity string `json:"severity"`
EnvironmentID string `json:"environmentId"`
EnvironmentName string `json:"environmentName"`
Title string `json:"title"`
Body string `json:"body"`
ChannelID string `json:"channelId"`
RecipientIDs []string `json:"recipientIds"`
Version int `json:"v"`
}
type ApnsPairingToken ¶
type ApnsResource ¶
type ApnsStatus ¶
type ApnsStatus struct {
ChannelID string `json:"channelId,omitempty"`
RelayURL string `json:"relayUrl"`
Devices []ApnsDevice `json:"devices"`
Enabled bool `json:"enabled"`
}
type AuthLogout ¶
type AuthLogout struct {
RefreshToken string `` /* 130-byte string literal not displayed */
}
type AuthRefresh ¶
type AuthRefresh struct {
RefreshToken string `` /* 138-byte string literal not displayed */
}
type AuthenticationResponse ¶
type AuthenticationResponse struct {
ExpiresAt *time.Time `json:"expiresAt,omitempty" doc:"Expiration time of the access token"`
User *User `json:"user,omitempty" doc:"Authenticated user information"`
MFA *MFAChallenge `json:"mfa,omitempty" doc:"Pending MFA challenge"`
Status AuthenticationStatus `json:"status" doc:"Authentication state"`
Token string `json:"token,omitempty" doc:"JWT access token"`
RefreshToken string `json:"refreshToken,omitempty" doc:"Refresh token for obtaining new access tokens"`
Success bool `json:"success" doc:"Whether the authentication request was accepted"`
}
type AuthenticationStatus ¶
type AuthenticationStatus string
const ( AuthenticationStatusAuthenticated AuthenticationStatus = "authenticated" AuthenticationStatusMFARequired AuthenticationStatus = "mfa_required" )
type AutoLoginConfig ¶
type AutoLoginConfig struct {
Username string `json:"username" doc:"Username for auto-login (only returned if enabled)"`
Enabled bool `json:"enabled" doc:"Whether auto-login is enabled"`
}
Password is intentionally excluded from this response.
type AutoUpdateRecord ¶
type AutoUpdateRecord struct {
CreatedAt time.Time `json:"createdAt" sortable:"true"`
StartTime time.Time `json:"startTime"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
EndTime *time.Time `json:"endTime,omitempty"`
OldImageVersions map[string]any `json:"oldImageVersions,omitempty"`
NewImageVersions map[string]any `json:"newImageVersions,omitempty"`
Error *string `json:"error,omitempty"`
Details map[string]any `json:"details,omitempty"`
EnvironmentTag
ID string `json:"id"`
ResourceID string `json:"resourceId"`
ResourceType string `json:"resourceType"`
ResourceName string `json:"resourceName"`
Status string `json:"status"`
UpdateAvailable bool `json:"updateAvailable"`
UpdateApplied bool `json:"updateApplied"`
}
type BackupFileEntry ¶
type BackupManagementType ¶
type BackupManagementType string
func BackupManagementTypeForPolicy ¶
func BackupManagementTypeForPolicy(policyID string) BackupManagementType
type BackupRequester ¶
type BackupRestoreSelection ¶
type BackupRunAccepted ¶
type BackupSeriesRetention ¶
type BaseTemplate ¶
type BatchImageUpdateRequest ¶
type BatchImageUpdateRequest struct {
ImageRefs []string `json:"imageRefs,omitempty"`
Credentials []ContainerRegistryCredential `json:"credentials,omitempty"`
}
type BusWatcher ¶
type Category ¶
type Category struct {
ID string `json:"id"`
Title string `json:"title"`
Description string `json:"description"`
Icon string `json:"icon"`
URL string `json:"url"`
Keywords []string `json:"keywords"`
Settings []SettingMetadata `json:"settings"`
MatchingSettings []SettingMetadata `json:"matchingSettings,omitempty"`
RelevanceScore int `json:"relevanceScore,omitempty"`
}
type ComposeCache ¶
type ComposeCache[T any] interface { Get(ctx context.Context, projectID, fingerprint string) (T, bool) Set(ctx context.Context, projectID, fingerprint, projectPath, projectsDirectory, composePath string, composeFiles, envFiles []string, loadedAt time.Time, value T) error Invalidate(projectID string) }
type ComposeCommands ¶
type ComposeCommands struct {
Stop func(context.Context, ComposeTarget) error
Up func(context.Context, ComposeUpOptions) error
Create func(context.Context, ComposeCreateOptions) error
}
type ComposeContentOptions ¶
type ComposeCoordinator ¶
type ComposeCoordinator interface {
Deploy(ctx context.Context, request ComposeDeployment) (*composetypes.Project, error)
UpdateServices(ctx context.Context, request ComposeServiceUpdate) error
PullServices(ctx context.Context, model *composetypes.Project, services []string, operations ComposeImageOperations, progress io.Writer) error
EnsureImagesPresent(ctx context.Context, model *composetypes.Project, progress io.Writer, operations ComposeImageOperations) error
BuildServices(ctx context.Context, projectID string, model *composetypes.Project, options ProjectBuildOptions, progress io.Writer, operations ComposeImageOperations) error
}
type ComposeCreateOptions ¶
type ComposeCreateOptions struct {
AuthConfigs map[string]registry.AuthConfig
ComposeTarget
}
type ComposeDependencies ¶
type ComposeDependencies struct {
EnvFiles []string
}
type ComposeDeployment ¶
type ComposeDeployment struct {
Progress io.Writer
Options *ProjectDeployOptions
AuthConfigs map[string]registry.AuthConfig
PreDeploy func(context.Context) error
Load func(context.Context) (*composetypes.Project, error)
ResolveImages func(context.Context) (ComposeImageOperations, error)
Recover func(context.Context)
ProjectID string
ProjectPath string
DockerHost string
DefaultPullPolicy string
WaitTimeout time.Duration
GitOpsManaged bool
}
type ComposeDownOptions ¶
type ComposeDownOptions struct {
ComposeTarget
RemoveVolumes bool
}
type ComposeIdentity ¶
type ComposeImageOperations ¶
type ComposeImageOperations struct {
Exists func(context.Context, string) (bool, error)
LastTagged func(context.Context, string) (time.Time, error)
Pull func(context.Context, string, io.Writer) error
Build func(context.Context, buildtypes.BuildRequest, io.Writer, string) error
BuildProvider string
}
type ComposePsOptions ¶
type ComposePsOptions struct {
ComposeTarget
All bool
}
type ComposeServiceUpdate ¶
type ComposeServiceUpdate struct {
Progress io.Writer
Project *composetypes.Project
AuthConfigs map[string]registry.AuthConfig
RestoreBeforeMutation func(context.Context)
Recover func(context.Context)
Images ComposeImageOperations
DockerHost string
Services []string
// Dependents share a member's namespace or volumes and are never pulled; StoppedDependents stay stopped.
Dependents []string
StoppedDependents []string
WaitTimeout time.Duration
}
type ComposeTarget ¶
type ComposeTarget struct {
Project *composetypes.Project
DockerHost string
Services []string
}
type ComposeUpOptions ¶
type ComposeUpOptions struct {
AuthConfigs map[string]registry.AuthConfig
ComposeTarget
WaitTimeout time.Duration
RemoveOrphans bool
ForceRecreate bool
RecreateVolumes bool
}
type ConditionalJob ¶
type Container ¶
type Container struct {
Labels map[string]string `json:"labels,omitempty"`
ExposedPorts map[string]struct{} `json:"exposedPorts,omitempty"`
Healthcheck *ContainerHealthcheckCreate `json:"healthcheck,omitempty"`
HostConfig *ContainerHostConfigCreate `json:"hostConfig,omitempty"`
NetworkingConfig *ContainerNetworkingConfigCreate `json:"networkingConfig,omitempty"`
Ports map[string]string `json:"ports,omitempty"`
Name string `json:"name" required:"false"`
Image string `json:"image" required:"false"`
WorkingDir string `json:"workingDir,omitempty"`
User string `json:"user,omitempty"`
Hostname string `json:"hostname,omitempty"`
Domainname string `json:"domainname,omitempty"`
RestartPolicy string `json:"restartPolicy,omitempty"`
Command []string `json:"command,omitempty"`
Cmd []string `json:"cmd,omitempty"`
Entrypoint []string `json:"entrypoint,omitempty"`
Environment []string `json:"environment,omitempty"`
Env []string `json:"env,omitempty"`
Volumes []string `json:"volumes,omitempty"`
Networks []string `json:"networks,omitempty"`
Credentials []ContainerRegistryCredential `json:"credentials,omitempty" writeOnly:"true"`
Memory int64 `json:"memory,omitempty"`
CPUs float64 `json:"cpus,omitempty"`
AttachStdout bool `json:"attachStdout,omitempty"`
AttachStderr bool `json:"attachStderr,omitempty"`
AttachStdin bool `json:"attachStdin,omitempty"`
Tty bool `json:"tty,omitempty"`
OpenStdin bool `json:"openStdin,omitempty"`
StdinOnce bool `json:"stdinOnce,omitempty"`
NetworkDisabled bool `json:"networkDisabled,omitempty"`
Privileged bool `json:"privileged,omitempty"`
AutoRemove bool `json:"autoRemove,omitempty"`
}
type ContainerActionResult ¶
type ContainerCommitRequest ¶
type ContainerCommitRequest struct {
Repository string `json:"repository,omitempty" doc:"Target image repository"`
Tag string `json:"tag,omitempty" doc:"Target image tag"`
Comment string `json:"comment,omitempty" doc:"Commit comment"`
Author string `json:"author,omitempty" doc:"Commit author"`
Changes []string `json:"changes,omitempty" doc:"Dockerfile changes to apply"`
NoPause bool `json:"noPause,omitempty" doc:"Do not pause the container during commit"`
}
type ContainerCommitResult ¶
type ContainerCommitResult struct {
ID string `json:"id"`
}
type ContainerComposeInfo ¶
type ContainerConfig ¶
type ContainerConfig struct {
Healthcheck *ContainerHealthcheck `json:"healthcheck,omitempty"`
WorkingDir string `json:"workingDir,omitempty"`
User string `json:"user,omitempty"`
Hostname string `json:"hostname,omitempty"`
Env []string `json:"env,omitempty"`
Cmd []string `json:"cmd,omitempty"`
Entrypoint []string `json:"entrypoint,omitempty"`
}
type ContainerCreated ¶
type ContainerDetails ¶
type ContainerDetails struct {
Config ContainerConfig `json:"config"`
State ContainerState `json:"state"`
NetworkSettings ContainerNetworkSettings `json:"networkSettings"`
Labels map[string]string `json:"labels,omitempty"`
ComposeInfo *ContainerComposeInfo `json:"composeInfo,omitempty"`
UpdateInfo *ImageUpdateInfo `json:"updateInfo,omitempty"`
Hardened *HardenedImageInfo `json:"hardened,omitempty"`
ActivityID *string `json:"activityId,omitempty"`
ID string `json:"id"`
Name string `json:"name"`
Image string `json:"image"`
ImageID string `json:"imageId"`
Created string `json:"created"`
IconLightURL string `json:"iconLightUrl,omitempty"`
IconDarkURL string `json:"iconDarkUrl,omitempty"`
Ports []ContainerPort `json:"ports"`
Mounts []ContainerMount `json:"mounts"`
HostConfig ContainerHostConfig `json:"hostConfig"`
RedeployDisabled bool `json:"redeployDisabled,omitempty"`
AutoUpdateEnabled bool `json:"autoUpdateEnabled"`
}
func NewContainerDetails ¶
func NewContainerDetails(c *container.InspectResponse) ContainerDetails
type ContainerEdit ¶
type ContainerEdit struct {
Name *string `json:"name,omitempty"`
Image *string `json:"image,omitempty"`
WorkingDir *string `json:"workingDir,omitempty"`
User *string `json:"user,omitempty"`
Hostname *string `json:"hostname,omitempty"`
Command *[]string `json:"command,omitempty"`
Entrypoint *[]string `json:"entrypoint,omitempty"`
Environment *[]string `json:"environment,omitempty"`
Labels *map[string]string `json:"labels,omitempty"`
Healthcheck *ContainerHealthcheckCreate `json:"healthcheck,omitempty"`
HostConfig *ContainerHostConfigEdit `json:"hostConfig,omitempty"`
NetworkingConfig *ContainerNetworkingConfigCreate `json:"networkingConfig,omitempty"`
Credentials []ContainerRegistryCredential `json:"credentials,omitempty"`
ClearHealthcheck bool `json:"clearHealthcheck,omitempty"`
}
type ContainerEditConfig ¶
type ContainerEditConfig struct {
Labels map[string]string `json:"labels,omitempty"`
Healthcheck *ContainerHealthcheckCreate `json:"healthcheck,omitempty"`
Networks map[string]ContainerEditConfigNetwork `json:"networks,omitempty"`
ID string `json:"id"`
Name string `json:"name"`
Image string `json:"image"`
WorkingDir string `json:"workingDir,omitempty"`
User string `json:"user,omitempty"`
Hostname string `json:"hostname,omitempty"`
ComposeProject string `json:"composeProject,omitempty"`
Command []string `json:"command,omitempty"`
Entrypoint []string `json:"entrypoint,omitempty"`
Environment []string `json:"environment,omitempty"`
HostConfig ContainerEditConfigHostConfig `json:"hostConfig"`
IsCompose bool `json:"isCompose,omitempty"`
EditDisabled bool `json:"editDisabled,omitempty"`
Running bool `json:"running"`
}
func NewContainerEditConfigFromInspect ¶
func NewContainerEditConfigFromInspect(c *container.InspectResponse, isCompose, editDisabled bool) ContainerEditConfig
type ContainerEditConfigHostConfig ¶
type ContainerEditConfigHostConfig struct {
PortBindings map[string][]ContainerPortBindingCreate `json:"portBindings,omitempty"`
NetworkMode string `json:"networkMode,omitempty"`
Binds []string `json:"binds,omitempty"`
Mounts []ContainerMountCreate `json:"mounts,omitempty"`
RestartPolicy ContainerRestartPolicyCreate `json:"restartPolicy"`
CapAdd []string `json:"capAdd,omitempty"`
CapDrop []string `json:"capDrop,omitempty"`
Memory int64 `json:"memory,omitempty"`
MemorySwap int64 `json:"memorySwap,omitempty"`
NanoCPUs int64 `json:"nanoCpus,omitempty"`
Privileged bool `json:"privileged,omitempty"`
AutoRemove bool `json:"autoRemove,omitempty"`
ReadonlyRootfs bool `json:"readonlyRootfs,omitempty"`
}
type ContainerGenerateComposeRequest ¶
type ContainerGenerateComposeRequest struct {
ContainerIDs []string `json:"containerIds" minItems:"1" doc:"IDs of the containers to convert"`
}
type ContainerGenerateComposeResponse ¶
type ContainerGenerateComposeResponse struct {
ComposeContent string `json:"composeContent"`
}
type ContainerHealth ¶
type ContainerHealth struct {
Status string `json:"status"`
Log []ContainerHealthLogEntry `json:"log,omitempty"`
FailingStreak int `json:"failingStreak"`
}
type ContainerHealthLogEntry ¶
type ContainerHealthcheck ¶
type ContainerHealthcheckCreate ¶
type ContainerHealthcheckCreate struct {
Test []string `json:"test,omitempty"`
Interval int64 `json:"interval,omitempty"`
Timeout int64 `json:"timeout,omitempty"`
StartPeriod int64 `json:"startPeriod,omitempty"`
StartInterval int64 `json:"startInterval,omitempty"`
Retries int `json:"retries,omitempty"`
}
type ContainerHostConfig ¶
type ContainerHostConfig struct {
NetworkMode string `json:"networkMode,omitempty"`
RestartPolicy string `json:"restartPolicy,omitempty"`
Privileged bool `json:"privileged,omitempty"`
AutoRemove bool `json:"autoRemove,omitempty"`
NanoCPUs int64 `json:"nanoCpus,omitempty"`
Memory int64 `json:"memory,omitempty"`
}
type ContainerHostConfigCreate ¶
type ContainerHostConfigCreate struct {
PortBindings map[string][]ContainerPortBindingCreate `json:"portBindings,omitempty"`
RestartPolicy *ContainerRestartPolicyCreate `json:"restartPolicy,omitempty"`
Privileged *bool `json:"privileged,omitempty"`
AutoRemove *bool `json:"autoRemove,omitempty"`
ReadonlyRootfs *bool `json:"readonlyRootfs,omitempty"`
PublishAllPorts *bool `json:"publishAllPorts,omitempty"`
NetworkMode string `json:"networkMode,omitempty"`
Binds []string `json:"binds,omitempty"`
CapAdd []string `json:"capAdd,omitempty"`
CapDrop []string `json:"capDrop,omitempty"`
Mounts []ContainerMountCreate `json:"mounts,omitempty"`
Memory int64 `json:"memory,omitempty"`
MemorySwap int64 `json:"memorySwap,omitempty"`
NanoCPUs int64 `json:"nanoCpus,omitempty"`
}
type ContainerHostConfigEdit ¶
type ContainerHostConfigEdit struct {
Binds *[]string `json:"binds,omitempty"`
Mounts *[]ContainerMountCreate `json:"mounts,omitempty"`
PortBindings *map[string][]ContainerPortBindingCreate `json:"portBindings,omitempty"`
RestartPolicy *ContainerRestartPolicyCreate `json:"restartPolicy,omitempty"`
Privileged *bool `json:"privileged,omitempty"`
CapAdd *[]string `json:"capAdd,omitempty"`
CapDrop *[]string `json:"capDrop,omitempty"`
AutoRemove *bool `json:"autoRemove,omitempty"`
ReadonlyRootfs *bool `json:"readonlyRootfs,omitempty"`
Memory *int64 `json:"memory,omitempty"`
MemorySwap *int64 `json:"memorySwap,omitempty"`
NanoCPUs *int64 `json:"nanoCpus,omitempty"`
}
type ContainerMount ¶
type ContainerMount struct {
Type string `json:"type"`
Name string `json:"name,omitempty"`
Source string `json:"source,omitempty"`
Destination string `json:"destination"`
Driver string `json:"driver,omitempty"`
Mode string `json:"mode,omitempty"`
Propagation string `json:"propagation,omitempty"`
RW bool `json:"rw,omitempty"`
}
type ContainerMountCreate ¶
type ContainerNetworkEndpoint ¶
type ContainerNetworkEndpoint struct {
IPAMConfig any `json:"ipamConfig,omitempty"`
DriverOpts map[string]string `json:"driverOpts,omitempty"`
MacAddress string `json:"macAddress,omitempty"`
NetworkID string `json:"networkId,omitempty"`
EndpointID string `json:"endpointId,omitempty"`
Gateway string `json:"gateway,omitempty"`
IPAddress string `json:"ipAddress,omitempty"`
IPv6Gateway string `json:"ipv6Gateway,omitempty"`
GlobalIPv6Address string `json:"globalIPv6Address,omitempty"`
Links []string `json:"links,omitempty"`
Aliases []string `json:"aliases,omitempty"`
DNSNames []string `json:"dnsNames,omitempty"`
GwPriority int `json:"gwPriority,omitempty"`
IPPrefixLen int `json:"ipPrefixLen,omitempty"`
GlobalIPv6PrefixLen int `json:"globalIPv6PrefixLen,omitempty"`
}
type ContainerNetworkSettings ¶
type ContainerNetworkSettings struct {
Networks map[string]ContainerNetworkEndpoint `json:"networks"`
}
type ContainerNetworkingConfigCreate ¶
type ContainerNetworkingConfigCreate struct {
EndpointsConfig map[string]ContainerEndpointSettingsCreate `json:"endpointsConfig,omitempty"`
}
type ContainerPort ¶
type ContainerProcesses ¶
type ContainerRegistry ¶
type ContainerRegistry struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
UpdatedAt time.Time `json:"updatedAt" readOnly:"true"`
Description *string `json:"description,omitempty" unorm:"nfc" trim:"true"`
ID string `json:"id" readOnly:"true"`
URL string `json:"url" required:"false"`
Host string `json:"host" readOnly:"true"`
Namespace string `json:"namespace" readOnly:"true"`
Username string `json:"username" required:"false"`
RegistryType string `json:"registryType" required:"false"`
AWSAccessKeyID string `json:"awsAccessKeyId,omitempty"`
AWSRegion string `json:"awsRegion,omitempty"`
Token string `json:"token,omitempty" writeOnly:"true" copier:"-"`
AWSSecretAccessKey string `json:"awsSecretAccessKey,omitempty" writeOnly:"true" copier:"-"`
RepositoryNames []string `json:"repositoryNames" required:"false"`
Insecure bool `json:"insecure" required:"false"`
Enabled bool `json:"enabled" required:"false"`
}
type ContainerRegistryDeleteTagResponse ¶
type ContainerRegistryDeleteTagResponse struct {
Digest string `json:"digest"`
}
type ContainerRegistryPullUsage ¶
type ContainerRegistryPullUsage struct {
CheckedAt time.Time `json:"checkedAt"`
Limit *int `json:"limit,omitempty"`
Remaining *int `json:"remaining,omitempty"`
Used *int `json:"used,omitempty"`
WindowSeconds *int `json:"windowSeconds,omitempty"`
RegistryID string `json:"registryId"`
Provider string `json:"provider"`
Registry string `json:"registry"`
DisplayName string `json:"displayName"`
Repository string `json:"repository,omitempty"`
AuthMethod string `json:"authMethod"`
AuthUsername string `json:"authUsername,omitempty"`
Source string `json:"source,omitempty"`
Error string `json:"error,omitempty"`
ObservedPulls int64 `json:"observedPulls"`
}
type ContainerRegistryPullUsageResponse ¶
type ContainerRegistryPullUsageResponse struct {
Registries []ContainerRegistryPullUsage `json:"registries"`
}
type ContainerRegistryRepository ¶
type ContainerRegistryRepository struct {
Name string `json:"name"`
}
type ContainerRegistryRepositoryTag ¶
type ContainerRegistryRepositoryTag struct {
Created *time.Time `json:"created,omitempty"`
Name string `json:"name"`
Digest string `json:"digest,omitempty"`
MediaType string `json:"mediaType,omitempty"`
Error string `json:"error,omitempty"`
Platforms []ContainerRegistryTagPlatform `json:"platforms"`
Size int64 `json:"size"`
}
type ContainerRegistrySync ¶
type ContainerRegistrySync struct {
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
Description *string `json:"description,omitzero" unorm:"nfc" trim:"true"`
ID string `json:"id" binding:"required"`
URL string `json:"url" binding:"required"`
Username string `json:"username"`
Token string `json:"token"`
RegistryType string `json:"registryType"`
AWSAccessKeyID string `json:"awsAccessKeyId,omitempty"`
AWSSecretAccessKey string `json:"awsSecretAccessKey,omitempty"`
AWSRegion string `json:"awsRegion,omitempty"`
RepositoryNames []string `json:"repositoryNames"`
Insecure bool `json:"insecure"`
Enabled bool `json:"enabled"`
}
type ContainerRegistrySyncRequest ¶
type ContainerRegistrySyncRequest struct {
Registries []ContainerRegistrySync `json:"registries" binding:"required"`
}
type ContainerResourceSample ¶
type ContainerResourceSample struct {
SampleTime time.Time `json:"sampleTime"`
CPUPercent float64 `json:"cpuPercent"`
MemoryUsageBytes uint64 `json:"memoryUsageBytes"`
MemoryLimitBytes uint64 `json:"memoryLimitBytes"`
BlockReadBytes uint64 `json:"blockReadBytes"`
BlockWriteBytes uint64 `json:"blockWriteBytes"`
NetworkRxBytes uint64 `json:"networkRxBytes"`
NetworkTxBytes uint64 `json:"networkTxBytes"`
PIDs uint64 `json:"pids"`
}
type ContainerResourceSampleBatch ¶
type ContainerResourceSampleBatch struct {
Timestamp time.Time `json:"timestamp"`
Samples map[string]*ContainerResourceSample `json:"samples"`
Error string `json:"error,omitempty"`
}
type ContainerResourceSampleSubscription ¶
type ContainerResourceSampleSubscription struct {
ContainerIDs []string `json:"containerIds"`
}
type ContainerSetAutoUpdateRequest ¶
type ContainerSetAutoUpdateRequest struct {
Enabled bool `json:"enabled" doc:"Whether auto-update is enabled for this container"`
}
type ContainerState ¶
type ContainerStatusCounts ¶
type ContainerStatusCounts struct {
RunningContainers int `json:"runningContainers"`
StoppedContainers int `json:"stoppedContainers"`
TotalContainers int `json:"totalContainers"`
UnhealthyContainers int `json:"unhealthyContainers" doc:"Containers whose healthcheck reports unhealthy"`
UpdatesAvailable int `json:"updatesAvailable" doc:"Standalone containers with a pending image update"`
}
type ContainerSummary ¶
type ContainerSummary struct {
Labels map[string]string `json:"labels"`
NetworkSettings ContainerNetworkSettings `json:"networkSettings"`
UpdateInfo *ImageUpdateInfo `json:"updateInfo,omitempty"`
ResourceSample *ContainerResourceSample `json:"resourceSample,omitempty"`
EnvironmentTag
ID string `json:"id"`
Image string `json:"image"`
ImageID string `json:"imageId"`
Command string `json:"command"`
State string `json:"state"`
Status string `json:"status"`
IconLightURL string `json:"iconLightUrl,omitempty"`
IconDarkURL string `json:"iconDarkUrl,omitempty"`
UpdateStrategy string `json:"updateStrategy,omitempty"`
Names []string `json:"names"`
Ports []ContainerPort `json:"ports"`
Mounts []ContainerMount `json:"mounts"`
HostConfig ContainerHostConfig `json:"hostConfig"`
Created int64 `json:"created"`
RedeployDisabled bool `json:"redeployDisabled,omitempty"`
AutoUpdateEnabled bool `json:"autoUpdateEnabled"`
Hidden bool `json:"hidden,omitempty"`
}
func NewContainerSummary ¶
func NewContainerSummary(c container.Summary) ContainerSummary
type ContainerSummaryGroup ¶
type ContainerSummaryGroup struct {
GroupName string `json:"groupName"`
Items []ContainerSummary `json:"items"`
}
type ConvertDockerRunRequest ¶
type ConvertDockerRunRequest struct {
DockerRunCommand string `json:"dockerRunCommand" binding:"required"`
}
type Create ¶
type Create[T any] struct { Body T SubmittedBody }
type CreateProject ¶
type CreateProject struct {
EnvContent *string `json:"envContent,omitempty"`
TagColors map[string]ProjectTagColor `json:"tagColors,omitempty"`
Name string `json:"name" binding:"required"`
ComposeContent string `json:"composeContent" binding:"required"`
Directory string `json:"directory,omitempty"`
Tags []string `json:"tags,omitempty"`
}
type CreateProjectResponse ¶
type CreateProjectResponse struct {
StatusReason *string `json:"statusReason,omitempty"`
GitOpsManagedBy *string `json:"gitOpsManagedBy,omitempty"`
ArchivedAt *time.Time `json:"archivedAt,omitempty"`
ActivityID *string `json:"activityId,omitempty"`
ID string `json:"id"`
Name string `json:"name"`
DirName string `json:"dirName,omitempty"`
RelativePath string `json:"relativePath,omitempty"`
Path string `json:"path"`
Status string `json:"status"`
CreatedAt string `json:"createdAt"`
UpdatedAt string `json:"updatedAt"`
Tags []ProjectTag `json:"tags"`
ServiceCount int `json:"serviceCount"`
RunningCount int `json:"runningCount"`
IsArchived bool `json:"isArchived"`
}
type CreateProjectWorkspaceManifest ¶
type CreateProjectWorkspaceManifest struct {
FileChanges []WorkspaceFileChange `json:"fileChanges" binding:"required" maxItems:"500"`
}
type CreateSystemBackupRequest ¶
type CreateSystemBackupRequest struct {
ID string `json:"id,omitempty"`
Destination SystemBackupDestination `json:"destination,omitempty"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
RecoveryKey string `json:"recoveryKey,omitempty"`
PolicyID string `json:"policyId,omitempty"`
}
type CreateUploadSessionRequest ¶
type CreateUploadSessionRequest struct {
Filename string `json:"filename" required:"true" doc:"Original filename; validated per kind"`
Size int64 `json:"size" required:"true" minimum:"1" doc:"Total file size in bytes"`
ChunkSize int64 `json:"chunkSize,omitempty" doc:"Chunk size in bytes; server default and bounds apply"`
}
type CreateVolumeBackupRequest ¶
type CreateVolumeBackupRequest struct {
Destination VolumeBackupDestination `json:"destination,omitempty" doc:"Optional destination override for this manual backup"`
PolicyID string `json:"policyId,omitempty" doc:"Optional backup policy whose settings should be used"`
S3DestinationID string `json:"s3DestinationId,omitempty" doc:"Saved S3 destination for a manual remote backup"`
}
type CurrentUserContextKey ¶
type CurrentUserContextKey struct{}
type CustomTheme ¶
type CustomTheme struct {
ID string `json:"id" doc:"Custom theme identifier, prefixed with custom-" example:"custom-solarized"`
Name string `json:"name" doc:"Display name of the custom theme" example:"Solarized"`
Description string `json:"description,omitempty" doc:"Optional description of the custom theme"`
Light ThemePalette `json:"light" doc:"Color tokens used in light mode"`
Dark ThemePalette `json:"dark" doc:"Color tokens used in dark mode"`
}
type DashboardDockerSnapshot ¶
type DashboardDockerSnapshot struct {
Volumes *client.VolumeListResult `json:"volumes"`
Containers []dockercontainer.Summary `json:"containers"`
Images []dockerimage.Summary `json:"images"`
Networks []dockernetwork.Summary `json:"networks"`
}
type DashboardWidgetConfig ¶
type DashboardWidgetConfig struct {
Filters map[string]string `json:"filters,omitempty" doc:"Filters applied to the resource query, keyed by filter name"`
ResourceKind string `json:"resourceKind,omitempty" enum:"containers,projects,images,volumes,networks" doc:"Kind of resource the widget shows"`
ResourceID string `json:"resourceId,omitempty" doc:"Identifier of a single resource shown by the widget"`
Search string `json:"search,omitempty" doc:"Search text applied to the resource query"`
Display string `json:"display,omitempty" enum:"count,list" doc:"How the widget presents query results"`
EnvironmentIDs []string `json:"environmentIds,omitempty" doc:"Environments the widget reads from; empty means all environments the user can access"`
Limit int `json:"limit,omitempty" doc:"Maximum number of resources listed by the widget"`
}
type DashboardWidgetLayout ¶
type DashboardWidgetLayout struct {
Config *DashboardWidgetConfig `json:"config,omitempty" doc:"Configuration for custom widget types"`
ID string `json:"id" required:"false" doc:"Unique dashboard widget instance identifier; assigned by the server for new custom widgets"`
Type string `json:"type,omitempty" doc:"Dashboard widget type; defaults to the identifier for built-in widgets"`
Title string `json:"title,omitempty" doc:"Optional custom widget title"`
X int `json:"x" doc:"Column where the widget starts in the 12-column dashboard grid"`
Y int `json:"y" doc:"Row where the widget starts in the dashboard grid"`
W int `json:"w" doc:"Widget width in columns"`
H int `json:"h" doc:"Widget height in rows"`
Hidden bool `json:"hidden,omitempty" doc:"Whether the widget is hidden"`
}
type DeleteSystemBackupRequest ¶
type DeleteSystemBackupRequest struct {
RecoveryKey string `json:"recoveryKey,omitempty"`
}
type DeploymentSnippet ¶
type DeploymentSnippet struct {
MTLS *DeploymentSnippetMTLS `json:"mtls,omitempty" doc:"Optional Arcane-generated mTLS deployment assets for agents"`
DockerRun string `json:"dockerRun" doc:"Docker run command snippet"`
DockerCompose string `json:"dockerCompose" doc:"Docker compose YAML snippet"`
EnrollmentToken string `json:"enrollmentToken" doc:"Single-use enrollment token the agent uses to join this environment, shown only once"`
}
type DeploymentSnippetFile ¶
type DeploymentSnippetFile struct {
Name string `json:"name" doc:"Suggested filename"`
Content string `json:"content,omitempty" doc:"PEM file contents"`
DownloadURL string `json:"downloadUrl,omitempty" doc:"Pairing-permission endpoint to download this file"`
ContainerPath string `json:"containerPath" doc:"Container mount path expected by the mTLS snippet"`
Permissions string `json:"permissions" doc:"Suggested file mode"`
}
type DeploymentSnippetMTLS ¶
type DeploymentSnippetMTLS struct {
DockerRun string `json:"dockerRun" doc:"Docker run snippet using Arcane-generated mTLS assets"`
DockerCompose string `json:"dockerCompose" doc:"Docker compose snippet using Arcane-generated mTLS assets"`
HostDirHint string `json:"hostDirHint" doc:"Suggested host directory containing the generated PEM files"`
Files []DeploymentSnippetFile `json:"files" doc:"Generated PEM files to place on the agent host"`
}
type Diagnostics ¶
type Diagnostics struct {
Timestamp time.Time `json:"timestamp"`
GC GCInfo `json:"gc"`
Runtime RuntimeInfo `json:"runtime"`
WebSocket WebSocketDiagnostics `json:"websocket"`
Memory MemoryInfo `json:"memory"`
}
type DiagnosticsCommand ¶
type DiagnosticsMessage ¶
type DiagnosticsMessage struct {
Snapshot *Diagnostics `json:"snapshot,omitempty"`
LeakReport *GoroutineLeakReport `json:"leakReport,omitempty"`
Type string `json:"type"`
ID string `json:"id,omitempty"`
Text string `json:"text,omitempty"`
Error string `json:"error,omitempty"`
Data []byte `json:"data,omitempty"`
}
type DiscoverVolumeBackupsRequest ¶
type DiscoverVolumeBackupsRequest struct {
S3DestinationID string `json:"s3DestinationId" doc:"S3 destination to scan for existing volume backups"`
}
type DockerInfo ¶
type DockerRunCommand ¶
type DockerRunCommand struct {
Image string `json:"image"`
Name string `json:"name,omitempty"`
Restart string `json:"restart,omitempty"`
Workdir string `json:"workdir,omitempty"`
User string `json:"user,omitempty"`
Entrypoint string `json:"entrypoint,omitempty"`
Command string `json:"command,omitempty"`
HealthCheck string `json:"healthCheck,omitempty"`
MemoryLimit string `json:"memoryLimit,omitempty"`
CPULimit string `json:"cpuLimit,omitempty"`
Ports []string `json:"ports,omitempty"`
Volumes []string `json:"volumes,omitempty"`
Environment []string `json:"environment,omitempty"`
Networks []string `json:"networks,omitempty"`
Labels []string `json:"labels,omitempty"`
Detached bool `json:"detached,omitempty"`
Interactive bool `json:"interactive,omitempty"`
TTY bool `json:"tty,omitempty"`
Remove bool `json:"remove,omitempty"`
Privileged bool `json:"privileged,omitempty"`
}
type DynamicScheduler ¶
type DynamicScheduler interface {
Submit(ctx context.Context, request SchedulerRequest) (SchedulerRun, error)
AddJob(ctx context.Context, job SchedulerJob) error
RemoveJob(ctx context.Context, name string)
HasJob(name string) bool
}
type EnrollmentToken ¶
type EnrollmentToken struct {
CreatedAt time.Time `json:"createdAt" doc:"Creation timestamp"`
LastUsedAt *time.Time `json:"lastUsedAt,omitempty" doc:"When an agent last enrolled with this token"`
EnvironmentID *string `json:"environmentId,omitempty" doc:"Environment the token enrolls into, when bound"`
EnvironmentName *string `json:"environmentName,omitempty" doc:"Name of the bound environment"`
MaxUses *int `json:"maxUses,omitempty" doc:"Maximum number of enrollments; absent means unlimited"`
ID string `json:"id" doc:"Enrollment token ID"`
Name string `json:"name" doc:"Enrollment token name"`
UseCount int `json:"useCount" doc:"Number of enrollments made with this token"`
}
type EnrollmentTokenCreated ¶
type EnrollmentTokenCreated struct {
CreatedAt time.Time `json:"createdAt" doc:"Creation timestamp"`
MaxUses *int `json:"maxUses,omitempty" doc:"Maximum number of enrollments; absent means unlimited"`
ID string `json:"id" doc:"Enrollment token ID"`
Name string `json:"name" doc:"Enrollment token name"`
Token string `json:"token" doc:"Enrollment token"`
}
type EnrollmentTokenSecret ¶
type EnrollmentTokenSecret struct {
Token string `json:"token" doc:"Enrollment token"`
}
type EnvSummary ¶
type EnvSummary struct {
Variables []EnvVariable `json:"variables"`
}
type EnvVariable ¶
type Environment ¶
type Environment struct {
LastSeen *time.Time `json:"lastSeen,omitempty" readOnly:"true"`
AgentTransport *string `json:"agentTransport,omitempty" readOnly:"true"`
LastAgentTransport *string `json:"lastAgentTransport,omitempty" readOnly:"true"`
// Values include "token" and "mtls".
AgentSecurityMode *string `json:"agentSecurityMode,omitempty" readOnly:"true"`
AgentSessionID *string `json:"agentSessionId,omitempty" readOnly:"true"`
AgentInstance *string `json:"agentInstance,omitempty" readOnly:"true"`
AgentRoundTripMs *float64 `json:"agentRoundTripMs,omitempty" readOnly:"true"`
AgentOpenStreams *int `json:"agentOpenStreams,omitempty" readOnly:"true"`
Connected *bool `json:"connected,omitempty" readOnly:"true"`
ConnectedAt *time.Time `json:"connectedAt,omitempty" readOnly:"true"`
LastHeartbeat *time.Time `json:"lastHeartbeat,omitempty" readOnly:"true"`
AgentMTLSCertificate *AgentMTLSCertificate `json:"agentMTLSCertificate,omitempty" readOnly:"true"`
AgentHost *AgentHostInfo `json:"agentHost,omitempty" readOnly:"true"`
AgentTunnelStats *AgentTunnelStats `json:"agentTunnelStats,omitempty" readOnly:"true"`
ID string `json:"id" readOnly:"true"`
Name string `json:"name,omitempty" unorm:"nfc" trim:"true"`
ApiUrl string `json:"apiUrl" readOnly:"true"`
Status string `json:"status" readOnly:"true"`
AgentCapabilities []string `json:"agentCapabilities,omitempty" readOnly:"true"`
Enabled bool `json:"enabled" required:"false"`
}
type EnvironmentChanges ¶
type EnvironmentData ¶
type EnvironmentData[T any] struct { Data T `json:"data" doc:"Data reported by the environment"` Environment EnvironmentRef `json:"environment" doc:"Environment the data came from"` }
type EnvironmentFailure ¶
type EnvironmentFailure struct {
Environment EnvironmentRef `json:"environment" doc:"Environment that failed"`
Message string `json:"message" doc:"Why the environment's results are missing"`
}
type EnvironmentInput ¶
type EnvironmentInput struct {
EnvironmentID string `path:"id" doc:"Environment ID"`
}
type EnvironmentRef ¶
type EnvironmentStreamEvent ¶
type EnvironmentStreamEvent struct {
Timestamp time.Time `json:"timestamp"`
Type string `json:"type"`
Environments []Environment `json:"environments,omitempty"`
}
type EnvironmentSyncStatus ¶
type EnvironmentTag ¶
type EnvironmentTag struct {
EnvironmentID string `json:"environmentId,omitempty" doc:"Environment the row came from in a multi-environment list"`
EnvironmentName string `json:"environmentName,omitempty" doc:"Display name of the environment the row came from"`
}
func (EnvironmentTag) Environment ¶
func (t EnvironmentTag) Environment() EnvironmentRef
func (*EnvironmentTag) SetEnvironment ¶
func (t *EnvironmentTag) SetEnvironment(ref EnvironmentRef)
type EnvironmentTest ¶
type EnvironmentVulnerabilitySummary ¶
type EnvironmentVulnerabilitySummary struct {
Summary *VulnerabilitySeveritySummary `json:"summary,omitempty"`
TotalImages int `json:"totalImages"`
ScannedImages int `json:"scannedImages"`
ActionableCount int `json:"actionableCount" doc:"Critical and high findings that are not ignored"`
}
type ErrorResponse ¶
type ErrorResponse struct {
Error string `json:"error" doc:"Error message describing what went wrong"`
}
type Event ¶
type Event struct {
Timestamp time.Time `json:"timestamp"`
CreatedAt time.Time `json:"createdAt"`
ResourceType *string `json:"resourceType,omitempty"`
ResourceID *string `json:"resourceId,omitempty"`
ResourceName *string `json:"resourceName,omitempty"`
UserID *string `json:"userId,omitempty"`
Username *string `json:"username,omitempty"`
EnvironmentID *string `json:"environmentId,omitempty"`
Metadata map[string]any `json:"metadata,omitempty"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
ID string `json:"id"`
Type string `json:"type"`
Severity string `json:"severity"`
Title string `json:"title"`
Description string `json:"description,omitempty"`
}
type EventSeverityCounts ¶
type EventStreamEvent ¶
type EventStreamEvent struct {
Type string `json:"type"`
Timestamp time.Time `json:"timestamp"`
Changes []EnvironmentChanges `json:"changes"`
}
type FeatureDefinition ¶
func AllFeatures ¶
func AllFeatures() []FeatureDefinition
func LookupFeature ¶
func LookupFeature(id FeatureID) (FeatureDefinition, bool)
type FeatureDisabledError ¶
type FeatureDisabledError struct {
Title string `json:"title"`
Detail string `json:"detail"`
Code string `json:"code"`
Feature FeatureID `json:"feature"`
Status int `json:"status"`
}
func (*FeatureDisabledError) ContentType ¶
func (e *FeatureDisabledError) ContentType(contentType string) string
func (*FeatureDisabledError) Error ¶
func (e *FeatureDisabledError) Error() string
func (*FeatureDisabledError) GetStatus ¶
func (e *FeatureDisabledError) GetStatus() int
type FederatedCredential ¶
type FederatedCredential struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true" doc:"Creation timestamp"`
Description *string `json:"description,omitempty" maxLength:"1000" doc:"Optional description" unorm:"nfc" trim:"true"`
EnvironmentID *string `json:"environmentId,omitempty" doc:"Optional environment scope for the role assignment"`
LastUsedAt *time.Time `json:"lastUsedAt,omitempty" readOnly:"true" doc:"Last successful token exchange"`
ExpiresAt *time.Time `json:"expiresAt,omitempty" doc:"Optional credential expiration"`
UpdatedAt *time.Time `json:"updatedAt,omitempty" readOnly:"true" doc:"Last update timestamp"`
ID string `json:"id" readOnly:"true" doc:"Unique identifier of the federated credential"`
Name string `json:"name" required:"false" minLength:"1" maxLength:"255" doc:"Display name" unorm:"nfc" trim:"true"`
IssuerURL string `json:"issuerUrl" required:"false" doc:"Trusted external OIDC issuer URL"`
SubjectClaim string `json:"subjectClaim" required:"false" doc:"Claim path to match against; defaults to sub"`
SubjectMatch string `json:"subjectMatch" required:"false" doc:"Exact subject or anchored glob pattern"`
MatchType string `json:"matchType" required:"false" doc:"Subject match strategy" enum:"exact,glob"`
RoleID string `json:"roleId" required:"false" doc:"Mapped role ID"`
IdentityUserID string `json:"identityUserId" readOnly:"true" doc:"Dedicated service user ID backing issued tokens"`
ServiceUsername string `json:"serviceUsername,omitempty" readOnly:"true" doc:"Dedicated service account username"`
RoleName string `json:"roleName,omitempty" readOnly:"true" doc:"Mapped role name"`
EnvironmentName string `json:"environmentName,omitempty" readOnly:"true" doc:"Mapped environment name when scoped"`
Audiences []string `json:"audiences" required:"false" doc:"Allowed external token audiences"`
TokenTTLSeconds int `json:"tokenTtlSeconds" required:"false" minimum:"60" maximum:"3600" doc:"Issued token lifetime in seconds"`
Enabled bool `json:"enabled" required:"false" doc:"Whether exchanges are allowed"`
}
type FederatedTokenResponse ¶
type FederatedTokenResponse struct {
AccessToken string `json:"access_token"` //nolint:tagliatelle // RFC 8693 wire shape is snake_case.
TokenType string `json:"token_type"` //nolint:tagliatelle // RFC 8693 wire shape is snake_case.
IssuedTokenType string `json:"issued_token_type"` //nolint:tagliatelle // RFC 8693 wire shape is snake_case.
ExpiresIn int `json:"expires_in"` //nolint:tagliatelle // RFC 8693 wire shape is snake_case.
}
type FieldError ¶
type FileTreeNode ¶
type FileTreeNode struct {
Name string `json:"name"`
Path string `json:"path"`
Type FileTreeNodeType `json:"type"`
Children []FileTreeNode `json:"children,omitempty"`
Size int64 `json:"size,omitempty"`
}
type FileTreeNodeType ¶
type FileTreeNodeType string
type FrozenUpdateTarget ¶
type GenericJob ¶
type GenericJob struct {
ScheduleFn func(ctx context.Context) string
RunFn func(ctx context.Context) (SchedulerOutcome, error)
ReconcileFn func(ctx context.Context, previous SchedulerRun) (SchedulerOutcome, error)
ShouldRunFn func(ctx context.Context) bool
JobName string
}
func (*GenericJob) Name ¶
func (g *GenericJob) Name() string
func (*GenericJob) Reconcile ¶
func (g *GenericJob) Reconcile(ctx context.Context, previous SchedulerRun) (SchedulerOutcome, error)
func (*GenericJob) Run ¶
func (g *GenericJob) Run(ctx context.Context) (SchedulerOutcome, error)
func (*GenericJob) ShouldSchedule ¶
func (g *GenericJob) ShouldSchedule(ctx context.Context) bool
type GitBranchInfo ¶
type GitBranchesResponse ¶
type GitBranchesResponse struct {
Branches []GitBranchInfo `json:"branches"`
}
type GitOpsBackupFileChange ¶
type GitOpsBackupFileDiff ¶
type GitOpsBackupHistoryResponse ¶
type GitOpsBackupHistoryResponse struct {
Entries []GitOpsBackupHistoryEntry `json:"entries"`
}
type GitOpsBackupPreview ¶
type GitOpsBackupPreview struct {
State string `json:"state"`
RemoteCommit string `json:"remoteCommit,omitempty"`
Changes []GitOpsBackupFileChange `json:"changes"`
Conflicts []GitOpsBackupFileChange `json:"conflicts"`
Files []string `json:"files"`
}
type GitOpsBackupRevision ¶
type GitOpsBackupRevision struct {
Entry GitOpsBackupHistoryEntry `json:"entry"`
Diffs []GitOpsBackupFileDiff `json:"diffs"`
}
type GitOpsBrowseResponse ¶
type GitOpsBrowseResponse struct {
Path string `json:"path"`
Files []FileTreeNode `json:"files"`
}
type GitOpsPreDeployConfigRequest ¶
type GitOpsPreDeployConfigRequest struct {
PreDeployScriptPath *string `json:"preDeployScriptPath,omitempty"`
// When omitted, the lifecycleDefaultRunnerImage setting is used.
PreDeployRunnerImage *string `json:"preDeployRunnerImage,omitempty"`
PreDeployEnv *string `json:"preDeployEnv,omitempty"`
PreDeployExtraMounts *string `json:"preDeployExtraMounts,omitempty"`
PreDeployTimeoutSec *int `json:"preDeployTimeoutSec,omitempty"`
PreDeployNetworkMode *string `json:"preDeployNetworkMode,omitempty"`
}
func (GitOpsPreDeployConfigRequest) HasPreDeployConfig ¶
func (r GitOpsPreDeployConfigRequest) HasPreDeployConfig() bool
Configuring the hook is gated behind the gitops:lifecycle permission.
type GitOpsResolveBackupConflictRequest ¶
type GitOpsResolveBackupConflictRequest struct {
Strategy string `json:"strategy" binding:"required,oneof=use_arcane"`
}
type GitOpsSync ¶
type GitOpsSync struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
UpdatedAt time.Time `json:"updatedAt" readOnly:"true"`
PreDeployEnv *string `json:"preDeployEnv,omitempty"`
EnvContent *string `json:"envContent,omitempty" doc:"KEY=VALUE lines merged over the repository .env on every deploy sync"`
PreDeployLastRunOutput *string `json:"preDeployLastRunOutput,omitempty" readOnly:"true"`
Repository *GitRepository `json:"repository,omitempty" readOnly:"true"`
PreDeployLastRunStatus *string `json:"preDeployLastRunStatus,omitempty" readOnly:"true"`
PreDeployLastRunAt *time.Time `json:"preDeployLastRunAt,omitempty" readOnly:"true"`
PreDeployExtraMounts *string `json:"preDeployExtraMounts,omitempty"`
LastSyncAt *time.Time `json:"lastSyncAt,omitempty" readOnly:"true"`
ProjectID *string `json:"projectId,omitempty"`
// Required whenever PreDeployScriptPath is set.
PreDeployRunnerImage *string `json:"preDeployRunnerImage,omitempty"`
PreDeployScriptPath *string `json:"preDeployScriptPath,omitempty"`
LastSyncCommit *string `json:"lastSyncCommit,omitempty" readOnly:"true"`
SyncedFiles *string `json:"syncedFiles,omitempty" readOnly:"true"`
LastSyncError *string `json:"lastSyncError,omitempty" readOnly:"true"`
LastSyncStatus *string `json:"lastSyncStatus,omitempty" readOnly:"true"`
BackupFailureReason *string `json:"backupFailureReason,omitempty" readOnly:"true"`
LastBackupAt *time.Time `json:"lastBackupAt,omitempty" readOnly:"true"`
ProjectName string `json:"projectName" required:"false"`
PreDeployNetworkMode string `json:"preDeployNetworkMode" required:"false"`
Name string `json:"name" required:"false"`
EnvironmentID string `json:"environmentId" readOnly:"true"`
ComposeOverridePath string `` /* 150-byte string literal not displayed */
EnvironmentName string `json:"environmentName,omitempty" readOnly:"true" doc:"Display name of the environment the sync belongs to"`
RepositoryID string `json:"repositoryId" required:"false"`
Branch string `json:"branch" required:"false"`
ComposePath string `json:"composePath" required:"false"`
ID string `json:"id" readOnly:"true"`
TargetType string `json:"targetType" required:"false"`
Mode string `json:"mode" required:"false"`
BackupDirectory string `json:"backupDirectory,omitempty"`
BackupState string `json:"backupState,omitempty" readOnly:"true"`
BackupPaths []string `json:"backupPaths,omitempty"`
PreDeployTimeoutSec int `json:"preDeployTimeoutSec" required:"false"`
MaxSyncBinarySize int64 `json:"maxSyncBinarySize" required:"false"`
SyncInterval int `json:"syncInterval" required:"false"`
// 0 means unlimited; env var overrides take precedence.
MaxSyncFiles int `json:"maxSyncFiles" required:"false"`
MaxSyncTotalSize int64 `json:"maxSyncTotalSize" required:"false"`
AutoSync bool `json:"autoSync" required:"false"`
SyncDirectory bool `json:"syncDirectory" required:"false"`
PullImageAfterSync bool `json:"pullImageAfterSync" required:"false"`
RedeployAfterSync bool `json:"redeployAfterSync" required:"false"`
BackupOnSave bool `json:"backupOnSave" required:"false"`
BackupPending bool `json:"backupPending" readOnly:"true"`
}
func (GitOpsSync) Environment ¶
func (s GitOpsSync) Environment() EnvironmentRef
func (*GitOpsSync) SetEnvironment ¶
func (s *GitOpsSync) SetEnvironment(ref EnvironmentRef)
type GitOpsSyncCounts ¶
type GitOpsSyncResult ¶
type GitOpsSyncStatus ¶
type GitOpsSyncStatus struct {
NextSyncAt *time.Time `json:"nextSyncAt,omitempty"`
LastSyncAt *time.Time `json:"lastSyncAt,omitempty"`
LastSyncStatus *string `json:"lastSyncStatus,omitempty"`
LastSyncError *string `json:"lastSyncError,omitempty"`
LastSyncCommit *string `json:"lastSyncCommit,omitempty"`
BackupFailureReason *string `json:"backupFailureReason,omitempty"`
LastBackupAt *time.Time `json:"lastBackupAt,omitempty"`
ID string `json:"id"`
Mode string `json:"mode"`
BackupState string `json:"backupState,omitempty"`
AutoSync bool `json:"autoSync"`
BackupPending bool `json:"backupPending"`
}
type GitRepository ¶
type GitRepository struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
UpdatedAt time.Time `json:"updatedAt" readOnly:"true"`
Description *string `json:"description,omitempty" unorm:"nfc" trim:"true"`
ID string `json:"id" readOnly:"true"`
Name string `json:"name" required:"false" unorm:"nfc" trim:"true"`
URL string `json:"url" required:"false"`
Provider string `` /* 135-byte string literal not displayed */
AuthType string `json:"authType" required:"false"`
Username string `json:"username,omitempty"`
SSHHostKeyVerification string `json:"sshHostKeyVerification,omitempty"`
CommitAuthorName string `json:"commitAuthorName,omitempty" unorm:"nfc" trim:"true"`
CommitAuthorEmail string `json:"commitAuthorEmail,omitempty" trim:"true"`
Token string `json:"token,omitempty" writeOnly:"true" copier:"-"`
SSHKey string `json:"sshKey,omitempty" writeOnly:"true" copier:"-"`
SigningKey string `json:"signingKey,omitempty" writeOnly:"true" copier:"-"`
SigningKeyPassphrase string `json:"signingKeyPassphrase,omitempty" writeOnly:"true" copier:"-"`
HasToken bool `json:"hasToken" readOnly:"true"`
HasSshKey bool `json:"hasSshKey" readOnly:"true"`
HasSigningKey bool `json:"hasSigningKey" readOnly:"true"`
Enabled bool `json:"enabled" required:"false"`
}
type GitRepositorySync ¶
type GitRepositorySync struct {
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
Description *string `json:"description,omitempty" unorm:"nfc" trim:"true"`
ID string `json:"id" binding:"required"`
Name string `json:"name" binding:"required" unorm:"nfc" trim:"true"`
URL string `json:"url" binding:"required"`
Provider string `json:"provider,omitempty"`
AuthType string `json:"authType" binding:"required"`
Username string `json:"username,omitempty"`
Token string `json:"token,omitempty"`
SSHKey string `json:"sshKey,omitempty"`
SSHHostKeyVerification string `json:"sshHostKeyVerification,omitempty"`
CommitAuthorName string `json:"commitAuthorName,omitempty"`
CommitAuthorEmail string `json:"commitAuthorEmail,omitempty"`
SigningKey string `json:"signingKey,omitempty"`
SigningKeyPassphrase string `json:"signingKeyPassphrase,omitempty"`
Enabled bool `json:"enabled"`
}
type GitRepositorySyncRequest ¶
type GitRepositorySyncRequest struct {
Repositories []GitRepositorySync `json:"repositories" binding:"required"`
}
type GlobalVariable ¶
type GlobalVariable struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
UpdatedAt *time.Time `json:"updatedAt,omitempty" readOnly:"true"`
ID string `json:"id" readOnly:"true"`
Key string `json:"key" required:"false"`
Value string `json:"value" required:"false"`
EnvironmentIDs []string `json:"environmentIds" required:"false"`
IsSecret bool `json:"isSecret" required:"false"`
AllEnvironments bool `json:"allEnvironments" required:"false"`
InjectIntoContainers bool `json:"injectIntoContainers" required:"false"`
}
type GlobalVariableMutationResponse ¶
type GlobalVariableMutationResponse struct {
Variable *GlobalVariable `json:"variable,omitempty"`
SyncResults []EnvironmentSyncStatus `json:"syncResults,omitempty"`
}
type GoroutineFrame ¶
type GoroutineGroup ¶
type GoroutineGroup struct {
Label string `json:"label"`
Frames []GoroutineFrame `json:"frames"`
Count int `json:"count"`
}
type GoroutineLeakReport ¶
type GoroutineProfile ¶
type GoroutineProfile struct {
CapturedAt time.Time `json:"capturedAt"`
Groups []GoroutineGroup `json:"groups"`
Total int `json:"total"`
}
type HardenedImageInfo ¶
type HardenedImageInfo struct {
// Shell and PackageManager are empty when the label says the image has none, and nil when the label is missing.
Shell *string `json:"shell,omitzero" doc:"Shell in the image; empty when it has none"`
PackageManager *string `json:"packageManager,omitzero" doc:"Package manager in the image; empty when it has none"`
Name string `json:"name" doc:"Hardened image name, such as dhi/aspnetcore"`
Title string `json:"title,omitempty" doc:"Display title"`
Version string `json:"version,omitempty" doc:"Image version"`
Definition string `json:"definition,omitempty" doc:"Catalog definition path"`
Distro string `json:"distro,omitempty" doc:"Base distribution"`
Variant string `json:"variant,omitempty" doc:"Image variant, such as runtime or dev"`
Flavor string `json:"flavor,omitempty" doc:"Image flavor"`
Entitlement string `json:"entitlement,omitempty" doc:"Catalog entitlement"`
URL string `json:"url,omitempty" doc:"Catalog page URL"`
ChainID string `json:"chainId,omitempty" doc:"Build chain ID"`
Created string `json:"created,omitempty" doc:"Build time (RFC 3339)"`
ReleaseDate string `json:"releaseDate,omitempty" doc:"Release date (YYYY-MM-DD)"`
EndOfLifeDate string `json:"endOfLifeDate,omitempty" doc:"End-of-life date (YYYY-MM-DD)"`
SupportStatus HardenedImageSupportStatus `json:"supportStatus" enum:"supported,ending_soon,end_of_life,unknown" doc:"Support status from the end-of-life date"`
Compliance []string `json:"compliance,omitempty" doc:"Compliance frameworks, such as cis"`
}
HardenedImageInfo describes a Docker Hardened Image from its com.docker.dhi.* labels.
type HardenedImageSupportStatus ¶
type HardenedImageSupportStatus string
const ( HardenedImageSupported HardenedImageSupportStatus = "supported" HardenedImageEndingSoon HardenedImageSupportStatus = "ending_soon" HardenedImageEndOfLife HardenedImageSupportStatus = "end_of_life" HardenedImageSupportUnknown HardenedImageSupportStatus = "unknown" )
type HealthResponse ¶
type HealthResponse struct {
Status string `json:"status"`
}
type IgnoredVulnerability ¶
type IgnoredVulnerability struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
Reason *string `json:"reason,omitempty" example:"False positive - not exploitable"`
EnvironmentTag
ID string `json:"id" readOnly:"true"`
ImageID string `json:"imageId" example:"sha256:abc123"`
VulnerabilityID string `json:"vulnerabilityId" example:"CVE-2023-1234"`
PkgName string `json:"pkgName" example:"openssl"`
InstalledVersion string `json:"installedVersion" required:"false" example:"1.1.1l"`
CreatedBy string `json:"createdBy" readOnly:"true"`
}
type ImageAttestation ¶
type ImageAttestation struct {
Digest string `json:"digest"`
MediaType string `json:"mediaType"`
ArtifactType string `json:"artifactType,omitempty"`
PredicateType string `json:"predicateType"`
StatementType string `json:"statementType,omitempty"`
Platform string `json:"platform,omitempty"`
Subject []ImageAttestationSubject `json:"subject"`
Statement jsontext.Value `json:"statement,omitempty"`
Size int64 `json:"size"`
}
type ImageAttestationList ¶
type ImageAttestationList struct {
ImageRef string `json:"imageRef"`
SubjectDigest string `json:"subjectDigest"`
Platform string `json:"platform,omitempty"`
Attestations []ImageAttestation `json:"attestations"`
}
type ImageAttestationSubject ¶
type ImageBuildRecord ¶
type ImageBuildRecord struct {
CreatedAt time.Time `json:"createdAt" sortable:"true"`
BuildArgs map[string]string `json:"buildArgs,omitempty"`
UserID *string `json:"userId,omitempty"`
Username *string `json:"username,omitempty"`
Digest *string `json:"digest,omitempty"`
ErrorMessage *string `json:"errorMessage,omitempty"`
Output *string `json:"output,omitempty"`
CompletedAt *time.Time `json:"completedAt,omitempty" sortable:"true"`
DurationMs *int64 `json:"durationMs,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Ulimits map[string]string `json:"ulimits,omitempty"`
ID string `json:"id" sortable:"true"`
EnvironmentID string `json:"environmentId"`
EnvironmentName string `json:"environmentName,omitempty"`
Status string `json:"status" sortable:"true"`
Provider string `json:"provider,omitempty"`
ContextDir string `json:"contextDir"`
Dockerfile string `json:"dockerfile,omitempty"`
Target string `json:"target,omitempty"`
Network string `json:"network,omitempty"`
Isolation string `json:"isolation,omitempty"`
Tags []string `json:"tags,omitempty"`
Platforms []string `json:"platforms,omitempty"`
CacheFrom []string `json:"cacheFrom,omitempty"`
CacheTo []string `json:"cacheTo,omitempty"`
Entitlements []string `json:"entitlements,omitempty"`
ExtraHosts []string `json:"extraHosts,omitempty"`
ShmSize int64 `json:"shmSize,omitempty"`
NoCache bool `json:"noCache"`
Pull bool `json:"pull"`
Privileged bool `json:"privileged"`
Push bool `json:"push"`
Load bool `json:"load"`
OutputTruncated bool `json:"outputTruncated"`
}
func (ImageBuildRecord) Environment ¶
func (r ImageBuildRecord) Environment() EnvironmentRef
func (*ImageBuildRecord) SetEnvironment ¶
func (r *ImageBuildRecord) SetEnvironment(ref EnvironmentRef)
type ImageDetailSummary ¶
type ImageDetailSummary struct {
GraphDriver struct {
Data any `json:"data"`
Name string `json:"name"`
} `json:"graphDriver"`
Os string `json:"os"`
Created string `json:"created"`
Author string `json:"author"`
Architecture string `json:"architecture"`
ID string `json:"id"`
Metadata struct {
LastTagTime string `json:"lastTagTime"`
} `json:"metadata"`
Comment string `json:"comment"`
Descriptor struct {
MediaType string `json:"mediaType"`
Digest string `json:"digest"`
Size int64 `json:"size"`
} `json:"descriptor"`
RootFs struct {
Type string `json:"type"`
Layers []string `json:"layers"`
} `json:"rootFs"`
RepoTags []string `json:"repoTags"`
RepoDigests []string `json:"repoDigests"`
PinnedReferences []string `json:"pinnedReferences,omitempty"`
Hardened *HardenedImageInfo `json:"hardened,omitempty"`
UpdateInfo *ImageUpdateInfo `json:"updateInfo,omitempty"`
Config struct {
ExposedPorts map[string]struct{} `json:"exposedPorts,omitempty"`
Volumes map[string]struct{} `json:"volumes,omitempty"`
WorkingDir string `json:"workingDir,omitempty"`
Env []string `json:"env,omitempty"`
Cmd []string `json:"cmd,omitempty"`
ArgsEscaped bool `json:"argsEscaped,omitempty"`
} `json:"config"`
Size int64 `json:"size"`
}
func NewImageDetailSummary ¶
func NewImageDetailSummary(src *image.InspectResponse) ImageDetailSummary
type ImageExposure ¶
type ImageExposure string
type ImageHistoryItem ¶
type ImageListResponse ¶
type ImageListResponse struct {
Data []ImageSummary `json:"data" doc:"Array of items for the current page"`
FailedEnvironments []EnvironmentFailure `json:"failedEnvironments,omitempty" doc:"Environments whose results are missing from a multi-environment response"`
Pagination PaginationResponse `json:"pagination" doc:"Pagination metadata"`
MaxImageUploadSize int `json:"maxImageUploadSize" doc:"Maximum image archive upload size in MB"`
Success bool `json:"success" doc:"Whether the request was successful"`
}
type ImageLoadResult ¶
type ImageLoadResult struct {
Stream string `json:"stream"`
}
type ImagePruneReport ¶
type ImagePruneReport struct {
ImagesDeleted []string `json:"imagesDeleted"`
SpaceReclaimed int64 `json:"spaceReclaimed"`
}
func NewImagePruneReport ¶
func NewImagePruneReport(src image.PruneReport) ImagePruneReport
type ImagePullOptions ¶
type ImagePullOptions struct {
ImageName string `json:"imageName" minLength:"1" doc:"Name of the image to pull (e.g., nginx)"`
Tag string `json:"tag,omitempty" doc:"Tag of the image to pull (e.g., latest)"`
Auth *ContainerRegistryCredential `json:"auth,omitempty"`
Credentials []ContainerRegistryCredential `json:"credentials,omitempty"`
}
func (ImagePullOptions) GetCredentials ¶
func (p ImagePullOptions) GetCredentials() []ContainerRegistryCredential
func (ImagePullOptions) GetFullImageName ¶
func (p ImagePullOptions) GetFullImageName() string
type ImageReleaseNotes ¶
type ImageReleaseNotes struct {
ImageRef string `json:"imageRef"`
Version string `json:"version,omitempty"`
Status string `json:"status"`
SourceURL string `json:"sourceUrl,omitempty"`
ReleaseURL string `json:"releaseUrl,omitempty"`
ReleaseName string `json:"releaseName,omitempty"`
Notes string `json:"notes,omitempty"`
PublishedAt string `json:"publishedAt,omitempty"`
}
type ImageSearchResult ¶
type ImageSummary ¶
type ImageSummary struct {
Labels map[string]any `json:"labels"`
UpdateInfo *ImageUpdateInfo `json:"updateInfo,omitempty"`
VulnerabilityScan *VulnerabilityScanSummary `json:"vulnerabilityScan,omitempty"`
Hardened *HardenedImageInfo `json:"hardened,omitempty"`
EnvironmentTag
ID string `json:"id" sortable:"true"`
Repo string `json:"repo" sortable:"true"`
Tag string `json:"tag" sortable:"true"`
RepoTags []string `json:"repoTags"`
RepoDigests []string `json:"repoDigests"`
UsedBy []ImageUsedBy `json:"usedBy,omitempty"`
PinnedReferences []string `json:"pinnedReferences,omitempty"`
Created int64 `json:"created" sortable:"true"`
Size int64 `json:"size" sortable:"true"`
VirtualSize int64 `json:"virtualSize"`
InUse bool `json:"inUse" sortable:"true"`
}
type ImageTagRequest ¶
type ImageUpdateBatchResponse ¶
type ImageUpdateBatchResponse map[string]*ImageUpdateResponse
type ImageUpdateCheckRequest ¶
type ImageUpdateInfo ¶
type ImageUpdateInfo struct {
CheckTime time.Time `json:"checkTime"`
UpdateType string `json:"updateType"`
CurrentVersion string `json:"currentVersion"`
LatestVersion string `json:"latestVersion"`
CurrentDigest string `json:"currentDigest"`
LatestDigest string `json:"latestDigest"`
CurrentCreated *time.Time `json:"currentCreated,omitempty"`
LatestCreated *time.Time `json:"latestCreated,omitempty"`
Error string `json:"error"`
AuthMethod string `json:"authMethod,omitempty"`
AuthUsername string `json:"authUsername,omitempty"`
AuthRegistry string `json:"authRegistry,omitempty"`
ResponseTimeMs int `json:"responseTimeMs"`
HasUpdate bool `json:"hasUpdate"`
UsedCredential bool `json:"usedCredential,omitempty"`
}
type ImageUpdateResponse ¶
type ImageUpdateResponse struct {
CheckTime time.Time `json:"checkTime"`
ImageUpdate *ImageUpdateResponse `json:"imageUpdate,omitempty"`
ContainerUpdates map[string]*ImageUpdateResponse `json:"containerUpdates,omitempty"`
ActivityID *string `json:"activityId,omitempty"`
ImageRef string `json:"imageRef,omitempty"`
UpdateType string `json:"updateType"`
CurrentVersion string `json:"currentVersion"`
LatestVersion string `json:"latestVersion,omitempty"`
CurrentDigest string `json:"currentDigest,omitempty"`
LatestDigest string `json:"latestDigest,omitempty"`
CurrentCreated *time.Time `json:"currentCreated,omitempty"`
LatestCreated *time.Time `json:"latestCreated,omitempty"`
Error string `json:"error,omitempty"`
AuthMethod string `json:"authMethod,omitempty"`
AuthUsername string `json:"authUsername,omitempty"`
AuthRegistry string `json:"authRegistry,omitempty"`
ReleaseURL string `json:"releaseUrl,omitempty"`
ResponseTimeMs int `json:"responseTimeMs"`
HasUpdate bool `json:"hasUpdate"`
UsedCredential bool `json:"usedCredential,omitempty"`
}
type ImageUpdateSummary ¶
type ImageUsageCounts ¶
type ImageUsageCounts struct {
Inuse int `json:"imagesInuse"`
Unused int `json:"imagesUnused"`
Total int `json:"totalImages"`
HardenedEndingSoon int `json:"hardenedEndingSoon" doc:"Hardened images whose end of life is near"`
HardenedEndOfLife int `json:"hardenedEndOfLife" doc:"Hardened images past their end of life"`
TotalSize int64 `json:"totalImageSize"`
}
type ImageUsedBy ¶
type ImportGitOpsSyncRequest ¶
type ImportGitOpsSyncRequest struct {
GitOpsPreDeployConfigRequest
SyncDirectory *bool `json:"syncDirectory,omitempty"`
// 0 means unlimited; env var overrides take precedence.
MaxSyncFiles *int `json:"maxSyncFiles,omitempty"`
MaxSyncTotalSize *int64 `json:"maxSyncTotalSize,omitempty"`
MaxSyncBinarySize *int64 `json:"maxSyncBinarySize,omitempty"`
PullImageAfterSync *bool `json:"pullImageAfterSync,omitempty"`
RedeployAfterSync *bool `json:"redeployAfterSync,omitempty"`
SyncName string `json:"syncName"`
GitRepo string `json:"gitRepo"`
Branch string `json:"branch"`
DockerComposePath string `json:"dockerComposePath"`
ProjectName string `json:"projectName,omitempty"`
SyncInterval int `json:"syncInterval"`
AutoSync bool `json:"autoSync"`
}
type JobController ¶
type JobController interface {
GetJob(jobID string) (SchedulerJob, bool)
GetJobRuntimeState(jobID string) (JobRuntimeState, bool)
AddJob(ctx context.Context, job SchedulerJob) error
RunBusWatcherNow(ctx context.Context, watcherID string) error
}
type JobListResponse ¶
type JobListRunsInput ¶
type JobListRunsOutput ¶
type JobListRunsOutput struct{ Body SchedulerRunList }
type JobMetadata ¶
type JobMetadata struct {
ID string
Name string
Description string
Category string
SettingsKey string
EnabledKey string
Prerequisites []JobPrerequisiteMetadata
ManagerOnly bool
IsContinuous bool
CanRunManually bool
}
func GetJobMetadata ¶
func GetJobMetadata(jobID string) (JobMetadata, bool)
func (JobMetadata) ToJobStatus ¶
func (meta JobMetadata) ToJobStatus(schedule string, nextRun *time.Time, enabled bool, prerequisites []JobPrerequisite) JobStatus
type JobPrerequisite ¶
type JobPrerequisiteMetadata ¶
type JobRunInput ¶
type JobRunOutput ¶
type JobRunOutput struct{ Body SchedulerRun }
type JobRunResponse ¶
type JobRuntimeState ¶
type JobScheduleConfig ¶
type JobScheduleConfig struct {
EnvironmentHealthInterval string `json:"environmentHealthInterval" required:"false"`
EventCleanupInterval string `json:"eventCleanupInterval" required:"false"`
ExpiredSessionsCleanupInterval string `json:"expiredSessionsCleanupInterval" required:"false"`
AutoUpdateInterval string `json:"autoUpdateInterval" required:"false"`
DockerClientRefreshInterval string `json:"dockerClientRefreshInterval" required:"false"`
PollingInterval string `json:"pollingInterval" required:"false"`
ScheduledPruneInterval string `json:"scheduledPruneInterval" required:"false"`
VulnerabilityScanInterval string `json:"vulnerabilityScanInterval" required:"false"`
ImageAutoPatchInterval string `json:"imageAutoPatchInterval" required:"false"`
AutoHealInterval string `json:"autoHealInterval" required:"false"`
}
type JobScheduler ¶
type JobScheduler interface {
ListRegisteredJobs() []SchedulerJob
WorkerController
DynamicScheduler
JobController
RegisterJob(job SchedulerJob) error
RegisterBusWatcher(watcher BusWatcher, canRunManually bool) error
StartScheduler(ctx context.Context) error
GetLocation() *time.Location
Stop(ctx context.Context) error
}
type JobStatus ¶
type JobStatus struct {
CurrentRun *SchedulerRun `json:"currentRun,omitempty"`
LastRun *SchedulerRun `json:"lastRun,omitempty"`
LastSuccess *time.Time `json:"lastSuccess,omitempty"`
WorkerHealth *SchedulerWorkerHealth `json:"workerHealth,omitempty"`
NextRun *time.Time `json:"nextRun,omitempty"`
LastError string `json:"lastError,omitempty"`
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description"`
Category string `json:"category"`
Schedule string `json:"schedule"`
SettingsKey string `json:"settingsKey,omitempty"`
Children []JobStatus `json:"children,omitempty"`
Prerequisites []JobPrerequisite `json:"prerequisites"`
Enabled bool `json:"enabled"`
ManagerOnly bool `json:"managerOnly"`
IsContinuous bool `json:"isContinuous"`
CanRunManually bool `json:"canRunManually"`
}
type JobSubmitRunInput ¶
type JobSubmitRunInput struct {
RunID string `json:"runId"`
}
type JsonObject ¶
type KubeDownPod ¶
type KubeDownPod struct {
ID string `json:"id"`
}
type KubeDownReport ¶
type KubeDownReport struct {
StopReport []KubeDownPod `json:"stopReport"`
RmReport []KubeDownPod `json:"rmReport"`
}
type KubeDownRequest ¶
type KubeGenerateRequest ¶
type KubeGenerateRequest struct {
Type KubeGenerateType `json:"type,omitempty" enum:"pod,service,deployment,daemonset,job" doc:"Kubernetes kind to generate"`
Names []string `json:"names" minItems:"1" doc:"Pods, containers, or volumes to include"`
Service bool `json:"service,omitempty" doc:"Also generate a Kubernetes service"`
}
type KubeGenerateResponse ¶
type KubeGenerateResponse struct {
YAML string `json:"yaml"`
}
type KubeGenerateType ¶
type KubeGenerateType string
type KubePlayPod ¶
type KubePlayReport ¶
type KubePlayReport struct {
ExitCode *int32 `json:"exitCode,omitempty"`
ServiceContainerID string `json:"serviceContainerId,omitempty"`
Pods []KubePlayPod `json:"pods"`
Volumes []KubePlayVolume `json:"volumes"`
}
type KubePlayRequest ¶
type KubePlayRequest struct {
Start *bool `json:"start,omitempty" doc:"Start the pods after creating them"`
YAML string `json:"yaml" minLength:"1" doc:"Kubernetes YAML to play"`
Networks []string `json:"networks,omitempty" doc:"Networks to attach the pods to"`
Replace bool `json:"replace,omitempty" doc:"Replace existing pods and containers"`
}
type KubePlayVolume ¶
type KubePlayVolume struct {
Name string `json:"name"`
}
type LifecycleExtraMount ¶
type LogStreamOptions ¶
type MFAChallenge ¶
type MemoryInfo ¶
type MemoryInfo struct {
Alloc uint64 `json:"alloc"`
TotalAlloc uint64 `json:"totalAlloc"`
Sys uint64 `json:"sys"`
HeapAlloc uint64 `json:"heapAlloc"`
HeapSys uint64 `json:"heapSys"`
HeapInuse uint64 `json:"heapInuse"`
HeapIdle uint64 `json:"heapIdle"`
HeapReleased uint64 `json:"heapReleased"`
HeapObjects uint64 `json:"heapObjects"`
StackInuse uint64 `json:"stackInuse"`
StackSys uint64 `json:"stackSys"`
MSpanInuse uint64 `json:"mspanInuse"`
MCacheInuse uint64 `json:"mcacheInuse"`
NextGC uint64 `json:"nextGc"`
NumGC uint32 `json:"numGc"`
NumForcedGC uint32 `json:"numForcedGc"`
GCCPUFraction float64 `json:"gcCpuFraction"`
}
type MessageResponse ¶
type MobilePasskeyCompletion ¶
type Network ¶
type Network struct {
Name string `json:"name" required:"false" doc:"Name of the network"`
Options NetworkCreateOptions `json:"options" required:"false" doc:"Network creation options"`
}
type NetworkContainerRequest ¶
type NetworkContainerRequest struct {
ContainerID string `json:"containerId" minLength:"1" doc:"Container ID or name"`
IPv4Address string `json:"ipv4Address,omitempty" doc:"Static IPv4 address (connect only)"`
IPv6Address string `json:"ipv6Address,omitempty" doc:"Static IPv6 address (connect only)"`
Aliases []string `json:"aliases,omitempty" doc:"Network-scoped aliases (connect only)"`
Force bool `json:"force,omitempty" doc:"Force the disconnect (disconnect only)"`
}
type NetworkCreateOptions ¶
type NetworkCreateOptions struct {
IPAM *NetworkIPAM `json:"ipam,omitempty" doc:"IP Address Management configuration"`
Options map[string]string `json:"options,omitempty" doc:"Driver-specific options"`
Labels map[string]string `json:"labels,omitempty" doc:"User-defined labels"`
Driver string `json:"driver,omitempty" doc:"Network driver (e.g., bridge, overlay)"`
CheckDuplicate bool `json:"checkDuplicate,omitempty" doc:"Check for duplicate network names"`
Internal bool `json:"internal,omitempty" doc:"Restrict external access to the network"`
Attachable bool `json:"attachable,omitempty" doc:"Allow manual container attachment"`
Ingress bool `json:"ingress,omitempty" doc:"Enable routing-mesh for swarm cluster"`
EnableIPv6 bool `json:"enableIPv6,omitempty" doc:"Enable IPv6 networking"`
}
type NetworkCreateResponse ¶
type NetworkIPAM ¶
type NetworkIPAM struct {
Driver string `json:"driver,omitempty"`
Options map[string]string `json:"options,omitempty"`
Config []NetworkIPAMConfig `json:"config,omitempty"`
}
type NetworkIPAMConfig ¶
type NetworkInspect ¶
type NetworkInspect struct {
ID string `json:"id"`
Name string `json:"name"`
Driver string `json:"driver"`
Scope string `json:"scope"`
Created time.Time `json:"created"`
IPAM NetworkIPAM `json:"ipam"`
ConfigFrom network.ConfigReference `json:"configFrom"`
Containers map[string]network.EndpointResource `json:"containers"`
Options map[string]string `json:"options"`
Labels map[string]string `json:"labels"`
Peers []network.PeerInfo `json:"peers,omitempty"`
Services map[string]network.ServiceInfo `json:"services,omitempty"`
ContainersList []NetworkContainerEndpoint `json:"containersList"`
EnableIPv4 bool `json:"enableIPv4"`
EnableIPv6 bool `json:"enableIPv6"`
Internal bool `json:"internal"`
Attachable bool `json:"attachable"`
Ingress bool `json:"ingress"`
ConfigOnly bool `json:"configOnly"`
}
type NetworkPruneReport ¶
type NetworkSummary ¶
type NetworkSummary struct {
EnvironmentTag
ID string `json:"id"`
Name string `json:"name"`
Driver string `json:"driver"`
Scope string `json:"scope"`
Created time.Time `json:"created"`
Options map[string]string `json:"options"`
Labels map[string]string `json:"labels"`
IPAM NetworkIPAM `json:"ipam"`
InUse bool `json:"inUse"`
IsDefault bool `json:"isDefault"`
}
type NetworkTopology ¶
type NetworkTopology struct {
Nodes []NetworkTopologyNode `json:"nodes"`
Edges []NetworkTopologyEdge `json:"edges"`
}
type NetworkTopologyEdge ¶
type NetworkTopologyNode ¶
type NetworkTopologyNode struct {
EnvironmentTag
ID string `json:"id"`
Name string `json:"name"`
Type NetworkTopologyNodeType `json:"type"`
Metadata NetworkTopologyNodeMetadata `json:"metadata"`
}
type NetworkTopologyNodeType ¶
type NetworkTopologyNodeType string
const ( NetworkTopologyNodeTypeNetwork NetworkTopologyNodeType = "network" NetworkTopologyNodeTypeContainer NetworkTopologyNodeType = "container" )
type NetworkUsageCounts ¶
type NodeAgentBindingKind ¶
type NodeAgentBindingKind string
type NodeAgentBindingRequest ¶
type NodeAgentCandidate ¶
type NodeAgentReconcileRequest ¶
type NodeAgentReconcileRequest struct{}
type NodeAgentReconcileResponse ¶
type NodeAgentReconcileResponse struct {
Results []NodeAgentReconcileResult `json:"results"`
}
type NodeAgentReconcileResult ¶
type NodeAgentReconcileResult struct {
NodeID string `json:"nodeId"`
State NodeAgentState `json:"state"`
EnvironmentID *string `json:"environmentId,omitempty"`
Candidates []NodeAgentCandidate `json:"candidates,omitempty"`
}
type NodeAgentState ¶
type NodeAgentState string
type NodeAgentStatus ¶
type NodeAgentStatus struct {
State NodeAgentState `json:"state"`
BindingKind *NodeAgentBindingKind `json:"bindingKind,omitempty"`
EnvironmentID *string `json:"environmentId,omitempty"`
EnvironmentName *string `json:"environmentName,omitempty"`
EnvironmentType *string `json:"environmentType,omitempty"`
Connected *bool `json:"connected,omitempty"`
LastHeartbeat *time.Time `json:"lastHeartbeat,omitempty"`
ReportedNodeID *string `json:"reportedNodeId,omitempty"`
ReportedHostname *string `json:"reportedHostname,omitempty"`
Candidates []NodeAgentCandidate `json:"candidates,omitempty"`
}
type NotificationDispatchBatchContainerUpdate ¶
type NotificationDispatchBatchContainerUpdate struct {
Updates []NotificationDispatchContainerUpdate `json:"updates"`
}
type NotificationDispatchBatchImageUpdate ¶
type NotificationDispatchBatchImageUpdate struct {
Updates map[string]*ImageUpdateResponse `json:"updates"`
}
type NotificationDispatchImageUpdate ¶
type NotificationDispatchImageUpdate struct {
ImageRef string `json:"imageRef"`
UpdateInfo ImageUpdateResponse `json:"updateInfo"`
}
type NotificationDispatchKind ¶
type NotificationDispatchKind string
type NotificationDispatchPruneReport ¶
type NotificationDispatchPruneReport struct {
Result PruneAllResult `json:"result"`
}
type NotificationDispatchRequest ¶
type NotificationDispatchRequest struct {
ImageUpdate *NotificationDispatchImageUpdate `json:"imageUpdate,omitempty"`
BatchImageUpdate *NotificationDispatchBatchImageUpdate `json:"batchImageUpdate,omitempty"`
ContainerUpdate *NotificationDispatchContainerUpdate `json:"containerUpdate,omitempty"`
BatchContainerUpdate *NotificationDispatchBatchContainerUpdate `json:"batchContainerUpdate,omitempty"`
VulnerabilityFound *NotificationDispatchVulnerabilityFound `json:"vulnerabilityFound,omitempty"`
PruneReport *NotificationDispatchPruneReport `json:"pruneReport,omitempty"`
AutoHeal *NotificationDispatchAutoHeal `json:"autoHeal,omitempty"`
Kind NotificationDispatchKind `json:"kind"`
}
type NotificationDispatchVulnerabilityFound ¶
type NotificationDispatchVulnerabilityFound struct {
CVEID string `json:"cveId"`
CVELink string `json:"cveLink"`
Severity string `json:"severity"`
ImageName string `json:"imageName"`
FixedVersion string `json:"fixedVersion,omitempty"`
PkgName string `json:"pkgName,omitempty"`
InstalledVersion string `json:"installedVersion,omitempty"`
}
type NotificationProvider ¶
type NotificationProvider string
type NotificationSettings ¶
type NotificationSettings struct {
Config JsonObject `json:"config"`
Provider NotificationProvider `json:"provider"`
ID uint `json:"id" readOnly:"true"`
Enabled bool `json:"enabled"`
}
type OidcAuthUrlRequest ¶
type OidcAuthUrlResponse ¶
type OidcAuthUrlResponse struct {
AuthUrl string `json:"authUrl"`
}
type OidcCallbackRequest ¶
type OidcConfigResponse ¶
type OidcConfigResponse struct {
ClientID string `json:"clientId"`
RedirectUri string `json:"redirectUri"`
IssuerUrl string `json:"issuerUrl"`
AuthorizationEndpoint string `json:"authorizationEndpoint"`
TokenEndpoint string `json:"tokenEndpoint"`
UserinfoEndpoint string `json:"userinfoEndpoint"`
DeviceAuthorizationEndpoint string `json:"deviceAuthorizationEndpoint,omitempty"`
Scopes string `json:"scopes"`
}
type OidcDeviceAuthRequest ¶
type OidcDeviceAuthRequest struct {
RedirectUri string `json:"redirectUri,omitempty"`
}
type OidcDeviceAuthResponse ¶
type OidcDeviceAuthResponse struct {
DeviceCode string `json:"deviceCode"`
UserCode string `json:"userCode"`
VerificationUri string `json:"verificationUri"`
VerificationUriComplete string `json:"verificationUriComplete,omitempty"`
ExpiresIn int `json:"expiresIn"`
Interval int `json:"interval,omitempty"`
}
type OidcDeviceTokenRequest ¶
type OidcDeviceTokenRequest struct {
DeviceCode string `json:"deviceCode"`
}
type OidcRoleMapping ¶
type OidcRoleMapping struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
EnvironmentID *string `json:"environmentId,omitempty" doc:"Environment ID to scope the assignment to; omit for a global assignment"`
UpdatedAt *time.Time `json:"updatedAt,omitempty" readOnly:"true"`
ID string `json:"id" readOnly:"true" doc:"Unique identifier of the mapping"`
ClaimValue string `json:"claimValue" required:"false" doc:"OIDC claim value that triggers this mapping" example:"docker-admins"`
RoleID string `json:"roleId" required:"false" doc:"Role to assign when the claim matches"`
Source string `` /* 161-byte string literal not displayed */
}
type OidcRoleMappingSpec ¶
type OidcRoleMappingSpec struct {
EnvironmentID *string `json:"environmentId,omitempty" doc:"Environment ID to scope the assignment to; omit for a global assignment"`
ClaimValue string `json:"claimValue" doc:"OIDC claim value to match"`
RoleID string `json:"roleId" doc:"Role ID to assign when the claim matches"`
}
type OidcStatusInfo ¶
type OidcTokenResponse ¶
type OidcUserInfo ¶
type OidcUserInfo struct {
Extra map[string]any `json:"-"`
Subject string `json:"sub"`
Name string `json:"name,omitempty" unorm:"nfc" trim:"true"`
Email string `json:"email,omitempty"`
PreferredUsername string `json:"preferred_username,omitempty"`
GivenName string `json:"given_name,omitempty" unorm:"nfc" trim:"true"`
FamilyName string `json:"family_name,omitempty" unorm:"nfc" trim:"true"`
Roles []string `json:"roles,omitempty"`
Groups []string `json:"groups,omitempty"`
EmailVerified bool `json:"email_verified,omitempty"`
Admin bool `json:"admin,omitempty"`
}
type Paginated ¶
type Paginated[T any] struct { Data []T `json:"data" doc:"Array of items for the current page"` FailedEnvironments []EnvironmentFailure `json:"failedEnvironments,omitempty" doc:"Environments whose results are missing from a multi-environment response"` Pagination PaginationResponse `json:"pagination" doc:"Pagination metadata"` Success bool `json:"success" doc:"Whether the request was successful"` }
type PaginatedWithCounts ¶
type PaginatedWithCounts[T, C any] struct { Counts C `json:"counts" doc:"Aggregate counts for the filtered collection"` Data []T `json:"data" doc:"Array of items for the current page"` FailedEnvironments []EnvironmentFailure `json:"failedEnvironments,omitempty" doc:"Environments whose results are missing from a multi-environment response"` Pagination PaginationResponse `json:"pagination" doc:"Pagination metadata"` Success bool `json:"success" doc:"Whether the request was successful"` }
type PaginatedWithWarnings ¶
type PaginatedWithWarnings[T any] struct { Data []T `json:"data"` Warnings []string `json:"warnings,omitempty"` Pagination PaginationResponse `json:"pagination"` Success bool `json:"success"` }
type PaginationResponse ¶
type PaginationResponse struct {
TotalPages int64 `json:"totalPages" doc:"Total number of pages"`
TotalItems int64 `json:"totalItems" doc:"Total number of items in the current filtered set"`
CurrentPage int `json:"currentPage" doc:"Current page number (1-indexed)"`
ItemsPerPage int `json:"itemsPerPage" doc:"Number of items per page"`
GrandTotalItems int64 `json:"grandTotalItems,omitempty" doc:"Total number of items without filters"`
HasNextPage bool `json:"hasNextPage" doc:"Whether another page exists after this one"`
}
type PasskeyLoginAvailability ¶
type PasskeyLoginAvailability struct {
Available bool `json:"available" doc:"Whether a passkey is registered for the current WebAuthn domain"`
}
type PasswordChange ¶
type PatchOptions ¶
type PatchOptions struct {
Suffix string `json:"suffix,omitempty" doc:"Suffix appended to the source tag for the patched image"`
PatchedTag string `json:"patchedTag,omitempty" doc:"Explicit tag for the patched image"`
// When empty, all outdated OS packages are updated.
ScanID string `json:"scanId,omitempty" doc:"Vulnerability scan ID to patch from; empty patches all outdated packages"`
TimeoutSeconds int `json:"timeoutSeconds,omitempty" doc:"Timeout for the patch operation in seconds"`
IgnoreErrors bool `json:"ignoreErrors,omitempty" doc:"Continue patching when individual package updates fail"`
}
type PatchRecord ¶
type PatchRecord struct {
CreatedAt time.Time `json:"createdAt"`
PackagesUpdated *int `json:"packagesUpdated,omitempty"`
Error *string `json:"error,omitempty"`
ActivityID *string `json:"activityId,omitempty"`
DurationMs *int64 `json:"durationMs,omitempty"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
ID string `json:"id"`
EnvironmentID string `json:"environmentId"`
OriginalImageID string `json:"originalImageId"`
OriginalRef string `json:"originalRef"`
OriginalDigest string `json:"originalDigest,omitempty"`
PatchedRef string `json:"patchedRef"`
Mode PatchMode `json:"mode"`
Status PatchStatus `json:"status"`
}
type PatchScanSummary ¶
type PatchStatus ¶
type PatchStatus string
type PatchTarget ¶
type PatchTarget struct {
ScanTime time.Time `json:"scanTime"`
LastPatch *PatchRecord `json:"lastPatch,omitempty"`
LastPatchScan *PatchScanSummary `json:"lastPatchScan,omitempty"`
EnvironmentTag
ImageID string `json:"imageId"`
ImageRef string `json:"imageRef"`
FixableCount int `json:"fixableCount"`
TotalCount int `json:"totalCount"`
LocalOnly bool `json:"localOnly,omitempty"`
}
type PermissionAction ¶
type PermissionAction struct {
Key string `json:"key" doc:"Action verb" example:"start"`
Permission string `json:"permission" doc:"Fully-qualified permission string used in role definitions" example:"containers:start"`
Label string `json:"label" doc:"Human-readable label" example:"Start"`
Description string `json:"description,omitempty" doc:"Optional longer description"`
Requires []string `` /* 140-byte string literal not displayed */
}
type PermissionPreset ¶
type PermissionPreset struct {
Key string `json:"key" doc:"Stable preset key" example:"editor"`
Label string `json:"label" doc:"Human-readable preset label" example:"All permissions (non-admin)"`
Description string `json:"description,omitempty" doc:"Optional longer description for the preset"`
Permissions []string `json:"permissions" doc:"Permissions included when the preset is selected"`
}
type PermissionResource ¶
type PermissionResource struct {
Key string `json:"key" doc:"Stable resource key" example:"containers"`
Label string `json:"label" doc:"Human-readable label" example:"Containers"`
Description string `json:"description" doc:"What the resource covers" example:"Docker containers"`
Scope string `json:"scope" enum:"global,env" doc:"'global' for org-level perms; 'env' for per-environment perms"`
Actions []PermissionAction `json:"actions" doc:"Actions available on this resource"`
}
type PermissionsManifest ¶
type PermissionsManifest struct {
Resources []PermissionResource `json:"resources" doc:"Resource groups, in display order"`
Presets []PermissionPreset `json:"presets,omitempty" doc:"Optional preset permission bundles for bulk selection in the UI"`
AccessSurfaces []AccessSurface `json:"accessSurfaces,omitempty" doc:"Backend-owned route, landing, and category access metadata for frontend UX gating"`
}
type Pod ¶
type Pod struct {
EnvironmentTag
ID string `json:"id"`
Name string `json:"name"`
Namespace string `json:"namespace,omitempty"`
Status string `json:"status"`
Created time.Time `json:"created"`
InfraID string `json:"infraId,omitempty"`
Cgroup string `json:"cgroup,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Networks []string `json:"networks,omitempty"`
Containers []PodContainer `json:"containers"`
}
type PodActionRequest ¶
type PodContainer ¶
type PodCreateRequest ¶
type PodCreateRequest struct {
Labels map[string]string `json:"labels,omitempty" doc:"Pod labels"`
RestartRetries *uint `json:"restartRetries,omitempty" doc:"Restart attempts for the on-failure policy"`
Sysctl map[string]string `json:"sysctl,omitempty" doc:"Namespaced kernel parameters"`
Name string `json:"name" minLength:"1" doc:"Pod name"`
Hostname string `json:"hostname,omitempty" doc:"Pod hostname"`
ExitPolicy string `json:"exitPolicy,omitempty" enum:"continue,stop" doc:"Behaviour when the last container exits"`
RestartPolicy string `json:"restartPolicy,omitempty" enum:"no,always,on-failure,unless-stopped" doc:"Restart policy for containers in the pod"`
InfraImage string `json:"infraImage,omitempty" doc:"Image for the infra container"`
InfraName string `json:"infraName,omitempty" doc:"Name of the infra container"`
InfraConmonPidFile string `json:"infraConmonPidFile,omitempty" doc:"Path that receives the infra container's conmon PID"`
Pid string `json:"pid,omitempty" doc:"PID namespace: host, private, ns:<path>, or container:<id>"`
Ipc string `json:"ipc,omitempty" doc:"IPC namespace: host, private, shareable, none, ns:<path>, or container:<id>"`
Uts string `json:"uts,omitempty" doc:"UTS namespace: host, private, ns:<path>, or container:<id>"`
Userns string `json:"userns,omitempty" doc:"User namespace, for example auto, keep-id, keep-id:uid=1000, host, or ns:<path>"`
NetworkMode string `json:"networkMode,omitempty" doc:"bridge, host, none, private, slirp4netns, pasta, or ns:<path>"`
HostsFile string `json:"hostsFile,omitempty" doc:"Base file for /etc/hosts, or image or none"`
CgroupParent string `json:"cgroupParent,omitempty" doc:"Parent cgroup of the pod"`
CPUSetCPUs string `json:"cpusetCpus,omitempty" doc:"CPUs allowed to run the pod, for example 0-3"`
CPUSetMems string `json:"cpusetMems,omitempty" doc:"Memory nodes allowed to run the pod, for example 0,1"`
Memory string `json:"memory,omitempty" doc:"Memory limit such as 512m or 2g"`
MemorySwap string `json:"memorySwap,omitempty" doc:"Memory plus swap limit such as 1g, or -1 for unlimited swap"`
ShmSize string `json:"shmSize,omitempty" doc:"Size of /dev/shm such as 64m"`
ShmSizeSystemd string `json:"shmSizeSystemd,omitempty" doc:"Size of systemd tmpfs mounts such as 64m"`
InfraCommand []string `json:"infraCommand,omitempty" doc:"Entrypoint of the infra container"`
UIDMap []string `json:"uidMap,omitempty" doc:"UID mappings as CONTAINER:HOST:SIZE"`
GIDMap []string `json:"gidMap,omitempty" doc:"GID mappings as CONTAINER:HOST:SIZE"`
NetworkOptions []string `json:"networkOptions,omitempty" doc:"Options for the slirp4netns or pasta network mode"`
Networks []PodNetwork `json:"networks,omitempty" doc:"Networks to join"`
PortMappings []PodPortMapping `json:"portMappings,omitempty" doc:"Published ports"`
DNSServers []string `json:"dnsServers,omitempty" doc:"DNS servers"`
DNSSearch []string `json:"dnsSearch,omitempty" doc:"DNS search domains"`
DNSOptions []string `json:"dnsOptions,omitempty" doc:"DNS resolver options"`
AddHosts []string `json:"addHosts,omitempty" doc:"Extra /etc/hosts entries as HOST:IP"`
BlkioWeightDevices []PodDeviceLimit `json:"blkioWeightDevices,omitempty" doc:"Per-device block IO weights"`
DeviceReadBps []PodDeviceLimit `json:"deviceReadBps,omitempty" doc:"Per-device read rate limits"`
DeviceWriteBps []PodDeviceLimit `json:"deviceWriteBps,omitempty" doc:"Per-device write rate limits"`
Devices []string `json:"devices,omitempty" doc:"Host devices as HOST[:CONTAINER[:PERMISSIONS]]"`
GPUs []string `json:"gpus,omitempty" doc:"NVIDIA GPUs to add through CDI, or all"`
Volumes []PodVolume `json:"volumes,omitempty" doc:"Bind mounts and named volumes"`
VolumesFrom []string `json:"volumesFrom,omitempty" doc:"Containers to mount volumes from, as CONTAINER[:OPTIONS]"`
SecurityOpt []string `json:"securityOpt,omitempty" doc:"Security options such as label=disable"`
CPUs float64 `json:"cpus,omitempty" minimum:"0" doc:"Number of CPUs"`
BlkioWeight uint16 `json:"blkioWeight,omitempty" minimum:"10" maximum:"1000" doc:"Relative block IO weight"`
NoInfra bool `json:"noInfra,omitempty" doc:"Create the pod without an infra container"`
NoManageResolvConf bool `json:"noManageResolvConf,omitempty" doc:"Use the image's /etc/resolv.conf"`
NoHosts bool `json:"noHosts,omitempty" doc:"Use the image's /etc/hosts"`
NoHostname bool `json:"noHostname,omitempty" doc:"Use the image's /etc/hostname"`
}
type PodCreateResponse ¶
type PodCreateResponse struct {
ID string `json:"id"`
}
type PodDeviceLimit ¶
type PodInfraConfig ¶
type PodInfraConfig struct {
PortBindings map[string][]PodPortBinding `json:"portBindings,omitempty"`
NetworkOptions map[string][]string `json:"networkOptions,omitempty"`
StaticIP string `json:"staticIp,omitempty"`
StaticMAC string `json:"staticMac,omitempty"`
HostsFile string `json:"hostsFile,omitempty"`
PidNS string `json:"pidNs,omitempty"`
UserNS string `json:"userNs,omitempty"`
UtsNS string `json:"utsNs,omitempty"`
DNSServer []string `json:"dnsServer,omitempty"`
DNSSearch []string `json:"dnsSearch,omitempty"`
DNSOption []string `json:"dnsOption,omitempty"`
HostAdd []string `json:"hostAdd,omitempty"`
Networks []string `json:"networks,omitempty"`
HostNetwork bool `json:"hostNetwork"`
NoManageResolvConf bool `json:"noManageResolvConf"`
NoManageHostname bool `json:"noManageHostname"`
NoManageHosts bool `json:"noManageHosts"`
}
type PodInspect ¶
type PodInspect struct {
Created time.Time `json:"created"`
Labels map[string]string `json:"labels,omitempty"`
InfraConfig *PodInfraConfig `json:"infraConfig,omitempty"`
ID string `json:"id"`
Name string `json:"name"`
Namespace string `json:"namespace,omitempty"`
State string `json:"state"`
ExitPolicy string `json:"exitPolicy,omitempty"`
RestartPolicy string `json:"restartPolicy,omitempty"`
Hostname string `json:"hostname,omitempty"`
CgroupParent string `json:"cgroupParent,omitempty"`
CgroupPath string `json:"cgroupPath,omitempty"`
InfraContainerID string `json:"infraContainerId,omitempty"`
CPUSetCPUs string `json:"cpusetCpus,omitempty"`
CPUSetMems string `json:"cpusetMems,omitempty"`
CreateCommand []string `json:"createCommand,omitempty"`
Containers []PodInspectContainer `json:"containers"`
BlkioWeightDevices []PodWeightDevice `json:"blkioWeightDevices,omitempty"`
DeviceReadBps []PodThrottleDevice `json:"deviceReadBps,omitempty"`
DeviceWriteBps []PodThrottleDevice `json:"deviceWriteBps,omitempty"`
Mounts []PodMount `json:"mounts,omitempty"`
Devices []PodDevice `json:"devices,omitempty"`
VolumesFrom []string `json:"volumesFrom,omitempty"`
SecurityOpts []string `json:"securityOpts,omitempty"`
NumContainers uint `json:"numContainers"`
CPUPeriod uint64 `json:"cpuPeriod,omitempty"`
CPUQuota int64 `json:"cpuQuota,omitempty"`
MemoryLimit uint64 `json:"memoryLimit,omitempty"`
MemorySwap uint64 `json:"memorySwap,omitempty"`
BlkioWeight uint64 `json:"blkioWeight,omitempty"`
CreateCgroup bool `json:"createCgroup"`
CreateInfra bool `json:"createInfra"`
}
type PodInspectContainer ¶
type PodInspectContainer struct {
Created time.Time `json:"created"`
ID string `json:"id"`
Name string `json:"name"`
State string `json:"state"`
Image string `json:"image,omitempty"`
Status string `json:"status,omitempty"`
Ports []PodPortMapping `json:"ports,omitempty"`
ExitCode int32 `json:"exitCode"`
IsInfra bool `json:"isInfra"`
}
type PodMount ¶
type PodMount struct {
Type string `json:"type"`
Name string `json:"name,omitempty"`
Source string `json:"source,omitempty"`
Destination string `json:"destination"`
Driver string `json:"driver,omitempty"`
Mode string `json:"mode,omitempty"`
Propagation string `json:"propagation,omitempty"`
SubPath string `json:"subPath,omitempty"`
Options []string `json:"options,omitempty"`
RW bool `json:"rw"`
}
type PodNetwork ¶
type PodNetwork struct {
Name string `json:"name" minLength:"1" doc:"Network to join"`
StaticMAC string `json:"staticMac,omitempty" doc:"Static MAC address"`
InterfaceName string `json:"interfaceName,omitempty" doc:"Interface name inside the pod"`
Aliases []string `json:"aliases,omitempty" doc:"Network-scoped aliases"`
StaticIPs []string `json:"staticIps,omitempty" doc:"Static IPv4 or IPv6 addresses"`
}
type PodPortBinding ¶
type PodPortMapping ¶
type PodPortMapping struct {
HostIP string `json:"hostIp,omitempty" doc:"Host IP to bind"`
Protocol string `json:"protocol,omitempty" doc:"tcp, udp, or sctp"`
ContainerPort uint16 `json:"containerPort" minimum:"1" doc:"Port inside the pod"`
HostPort uint16 `json:"hostPort,omitempty" doc:"Port on the host"`
Range uint16 `json:"range,omitempty" doc:"Number of consecutive ports to map"`
}
type PodPruneReport ¶
type PodPruneReport struct {
ID string `json:"id"`
}
type PodStats ¶
type PodStats struct {
Pod string `json:"pod"`
CID string `json:"cid"`
Name string `json:"name"`
CPU string `json:"cpu"`
MemUsage string `json:"memUsage"`
MemUsageBytes string `json:"memUsageBytes"`
Mem string `json:"mem"`
NetIO string `json:"netIo"`
BlockIO string `json:"blockIo"`
PIDS string `json:"pids"`
}
type PodThrottleDevice ¶
type PodWeightDevice ¶
type PodmanAutoUpdateMode ¶
type PodmanAutoUpdateMode string
type PodmanAutoUpdateOptions ¶
type PodmanAutoUpdateReport ¶
type PodmanAutoUpdateResult ¶
type PodmanAutoUpdateResult struct {
Unit *PodmanUnitStatus `json:"unit,omitempty"`
Mode PodmanAutoUpdateMode `json:"mode"`
Reports []PodmanAutoUpdateReport `json:"reports"`
Errors []string `json:"errors"`
}
type PodmanContainer ¶
type PodmanContainer struct {
Created time.Time `json:"created"`
Labels map[string]string `json:"labels,omitempty"`
ID string `json:"id"`
Image string `json:"image"`
ImageID string `json:"imageId,omitempty"`
State string `json:"state"`
Status string `json:"status,omitempty"`
Pod string `json:"pod,omitempty"`
PodName string `json:"podName,omitempty"`
Names []string `json:"names"`
Ports []PodPortMapping `json:"ports,omitempty"`
StartedAt int64 `json:"startedAt,omitempty"`
ExitCode int32 `json:"exitCode"`
Exited bool `json:"exited"`
IsInfra bool `json:"isInfra"`
}
type PodmanInfo ¶
type PodmanInfo struct {
Version PodmanInfoVersion `json:"version"`
Plugins PodmanInfoPlugins `json:"plugins"`
Registries PodmanInfoRegistries `json:"registries"`
Store PodmanInfoStore `json:"store"`
Host PodmanInfoHost `json:"host"`
}
type PodmanInfoConmon ¶
type PodmanInfoDistribution ¶
type PodmanInfoHelperBinary ¶
type PodmanInfoHost ¶
type PodmanInfoHost struct {
NetworkBackendInfo PodmanInfoNetworkBackend `json:"networkBackendInfo"`
Distribution PodmanInfoDistribution `json:"distribution"`
OCIRuntime PodmanInfoOCIRuntime `json:"ociRuntime"`
Conmon PodmanInfoConmon `json:"conmon"`
Slirp4netns PodmanInfoHelperBinary `json:"slirp4netns"`
Pasta PodmanInfoHelperBinary `json:"pasta"`
Security PodmanInfoSecurity `json:"security"`
Arch string `json:"arch,omitempty"`
BuildahVersion string `json:"buildahVersion,omitempty"`
CgroupManager string `json:"cgroupManager,omitempty"`
CgroupVersion string `json:"cgroupVersion,omitempty"`
DatabaseBackend string `json:"databaseBackend,omitempty"`
EventLogger string `json:"eventLogger,omitempty"`
Hostname string `json:"hostname,omitempty"`
Kernel string `json:"kernel,omitempty"`
LogDriver string `json:"logDriver,omitempty"`
NetworkBackend string `json:"networkBackend,omitempty"`
Os string `json:"os,omitempty"`
RootlessNetworkCmd string `json:"rootlessNetworkCmd,omitempty"`
Uptime string `json:"uptime,omitempty"`
IDMappings PodmanInfoIDMappings `json:"idMappings"`
CgroupControllers []string `json:"cgroupControllers,omitempty"`
RemoteSocket PodmanInfoRemoteSocket `json:"remoteSocket"`
CPUs int `json:"cpus"`
MemFree int64 `json:"memFree"`
MemTotal int64 `json:"memTotal"`
SwapFree int64 `json:"swapFree"`
SwapTotal int64 `json:"swapTotal"`
ServiceIsRemote bool `json:"serviceIsRemote"`
}
type PodmanInfoIDMap ¶
type PodmanInfoIDMappings ¶
type PodmanInfoIDMappings struct {
UIDMap []PodmanInfoIDMap `json:"uidmap,omitempty"`
GIDMap []PodmanInfoIDMap `json:"gidmap,omitempty"`
}
type PodmanInfoImageStore ¶
type PodmanInfoImageStore struct {
Number int `json:"number"`
}
type PodmanInfoNetworkDNS ¶
type PodmanInfoOCIRuntime ¶
type PodmanInfoPlugins ¶
type PodmanInfoRegistries ¶
type PodmanInfoRegistries struct {
Search []string `json:"search,omitempty"`
}
type PodmanInfoRemoteSocket ¶
type PodmanInfoSecurity ¶
type PodmanInfoSecurity struct {
SeccompProfilePath string `json:"seccompProfilePath,omitempty"`
Capabilities string `json:"capabilities,omitempty"`
Rootless bool `json:"rootless"`
SELinuxEnabled bool `json:"selinuxEnabled"`
AppArmorEnabled bool `json:"apparmorEnabled"`
SeccompEnabled bool `json:"seccompEnabled"`
}
type PodmanInfoStore ¶
type PodmanInfoStore struct {
GraphStatus map[string]string `json:"graphStatus,omitempty"`
ConfigFile string `json:"configFile,omitempty"`
GraphDriverName string `json:"graphDriverName,omitempty"`
GraphRoot string `json:"graphRoot,omitempty"`
RunRoot string `json:"runRoot,omitempty"`
VolumePath string `json:"volumePath,omitempty"`
ContainerStore PodmanInfoContainerStore `json:"containerStore"`
ImageStore PodmanInfoImageStore `json:"imageStore"`
}
type PodmanInfoVersion ¶
type PodmanInfoVersion struct {
APIVersion string `json:"apiVersion,omitempty"`
Version string `json:"version,omitempty"`
GoVersion string `json:"goVersion,omitempty"`
GitCommit string `json:"gitCommit,omitempty"`
BuiltTime string `json:"builtTime,omitempty"`
OsArch string `json:"osArch,omitempty"`
}
type PodmanSecret ¶
type PodmanSecretCreateRequest ¶
type PodmanSecretCreateRequest struct {
DriverOptions map[string]string `json:"driverOptions,omitempty" doc:"Secret driver options"`
Labels map[string]string `json:"labels,omitempty" doc:"Secret labels"`
Name string `json:"name" minLength:"1" doc:"Secret name"`
Data string `json:"data" minLength:"1" doc:"Secret value"`
Driver string `json:"driver,omitempty" doc:"Secret driver"`
}
type PodmanSecretCreateResponse ¶
type PodmanSecretCreateResponse struct {
ID string `json:"id"`
}
type PodmanSecretDriver ¶
type PodmanSecretSpec ¶
type PodmanSecretSpec struct {
Driver PodmanSecretDriver `json:"driver"`
Labels map[string]string `json:"labels,omitempty"`
Name string `json:"name"`
}
type PodmanSecretUpdateRequest ¶
type PodmanSecretUpdateRequest struct {
DriverOptions map[string]string `json:"driverOptions,omitempty" doc:"Secret driver options"`
Labels map[string]string `json:"labels,omitempty" doc:"Secret labels"`
Data string `json:"data" minLength:"1" doc:"New secret value; Podman replaces the whole secret"`
Driver string `json:"driver,omitempty" doc:"Secret driver"`
}
type PodmanStatus ¶
type PodmanStatus struct {
Version string `json:"version,omitempty"`
APIVersion string `json:"apiVersion,omitempty"`
AutoUpdateMode PodmanAutoUpdateMode `json:"autoUpdateMode"`
SystemdScope PodmanSystemdScope `json:"systemdScope,omitempty"`
SystemdReason string `json:"systemdReason,omitempty"`
Reason string `json:"reason,omitempty"`
PodCount int `json:"podCount" doc:"Number of Podman pods"`
Detected bool `json:"detected"`
Rootless bool `json:"rootless"`
QuadletsSupported bool `json:"quadletsSupported"`
QuadletAppsSupported bool `json:"quadletAppsSupported"`
SystemdAvailable bool `json:"systemdAvailable"`
}
type PodmanSystemdAvailability ¶
type PodmanSystemdAvailability struct {
Scope PodmanSystemdScope `json:"scope,omitempty"`
Reason string `json:"reason,omitempty"`
Available bool `json:"available"`
}
type PodmanSystemdScope ¶
type PodmanSystemdScope string
type PodmanUnitStatus ¶
type PodmanVersion ¶
type PodmanVersion struct {
Version string `json:"version"`
APIVersion string `json:"apiVersion"`
MinAPIVersion string `json:"minApiVersion,omitempty"`
GitCommit string `json:"gitCommit,omitempty"`
GoVersion string `json:"goVersion,omitempty"`
Os string `json:"os,omitempty"`
Arch string `json:"arch,omitempty"`
KernelVersion string `json:"kernelVersion,omitempty"`
Components []PodmanVersionComponent `json:"components,omitempty"`
}
type PodmanVersionComponent ¶
type PortMapping ¶
type PortMapping struct {
EnvironmentTag
ID string `json:"id"`
ContainerID string `json:"containerId"`
ContainerName string `json:"containerName"`
HostIP string `json:"hostIp,omitempty"`
Protocol string `json:"protocol"`
HostPort int `json:"hostPort,omitempty"`
ContainerPort int `json:"containerPort"`
IsPublished bool `json:"isPublished"`
}
type Project ¶
type Project struct {
StatusReason *string `json:"statusReason,omitempty" readOnly:"true"`
ActivityID *string `json:"activityId,omitempty" readOnly:"true"`
LastSyncCommit *string `json:"lastSyncCommit,omitempty" readOnly:"true"`
GitOpsManagedBy *string `json:"gitOpsManagedBy,omitempty" readOnly:"true"`
UpdateInfo *ProjectUpdateInfo `json:"updateInfo,omitempty" readOnly:"true"`
ArchivedAt *time.Time `json:"archivedAt,omitempty" readOnly:"true"`
ConfigurationError *ProjectConfigurationError `json:"configurationError,omitempty" readOnly:"true"`
EnvironmentTag
Status string `json:"status" readOnly:"true"`
DirName string `json:"dirName,omitempty" readOnly:"true"`
ComposeContent string `json:"composeContent,omitempty"`
ComposeFileName string `json:"composeFileName,omitempty" readOnly:"true"`
EnvContent string `json:"envContent,omitempty"`
OverrideContent string `json:"overrideContent,omitempty"`
OverrideFileName string `json:"overrideFileName,omitempty" readOnly:"true"`
Name string `json:"name" required:"false"`
GitRepositoryURL string `json:"gitRepositoryURL,omitempty" readOnly:"true"`
GitRepositoryProvider string `json:"gitRepositoryProvider,omitempty" readOnly:"true"`
IconLightURL string `json:"iconLightUrl,omitempty" readOnly:"true"`
RelativePath string `json:"relativePath,omitempty" readOnly:"true"`
ProjectsRoot string `json:"projectsRoot,omitempty" readOnly:"true"`
ID string `json:"id" readOnly:"true"`
IconDarkURL string `json:"iconDarkUrl,omitempty" readOnly:"true"`
Path string `json:"path" readOnly:"true"`
UpdatedAt string `json:"updatedAt" readOnly:"true"`
CreatedAt string `json:"createdAt" readOnly:"true"`
Tags []ProjectTag `json:"tags" readOnly:"true"`
ComposeFiles []string `json:"composeFiles,omitempty" readOnly:"true"`
RuntimeServices []ProjectRuntimeService `json:"runtimeServices,omitempty" readOnly:"true"`
Services []composetypes.ServiceConfig `json:"services,omitempty" readOnly:"true"`
URLs []string `json:"urls,omitempty" readOnly:"true"`
IncludeFiles []ProjectIncludeFile `json:"includeFiles,omitempty" readOnly:"true"`
RunningCount int `json:"runningCount" readOnly:"true"`
ServiceCount int `json:"serviceCount" readOnly:"true"`
IsDiscovered bool `json:"isDiscovered,omitzero" readOnly:"true"`
IsArchived bool `json:"isArchived" readOnly:"true"`
HasBuildDirective bool `json:"hasBuildDirective,omitzero" readOnly:"true"`
RedeployDisabled bool `json:"redeployDisabled,omitzero" readOnly:"true"`
EnvFileExists bool `json:"envFileExists,omitzero" readOnly:"true"`
}
func (*Project) UnmarshalJSON ¶
type ProjectBuildOptions ¶
type ProjectBuildRequest ¶
type ProjectBuildRequest struct {
Push *bool `json:"push,omitempty" doc:"Push images"`
Load *bool `json:"load,omitempty" doc:"Load images into Docker"`
Provider string `json:"provider,omitempty" doc:"Build provider override"`
Services []string `json:"services,omitempty" doc:"Service names to build"`
}
type ProjectDeployOptions ¶
type ProjectDeployOptions struct {
PullPolicy string `json:"pullPolicy,omitempty" binding:"omitempty,oneof=missing always never"`
ForceRecreate bool `json:"forceRecreate,omitempty"`
Build bool `json:"build,omitempty"`
RemoveOrphans bool `json:"removeOrphans,omitempty"`
RecreateVolumes bool `json:"recreateVolumes,omitempty"`
}
type ProjectDestroy ¶
type ProjectDetailsOptions ¶
type ProjectDetailsOptions struct {
IncludeComposeContent bool
IncludeEnvState bool
IncludeIncludeFiles bool
IncludeServiceConfigs bool
IncludeRuntimeServices bool
IncludeUpdateInfo bool
}
func AllProjectDetails ¶
func AllProjectDetails() ProjectDetailsOptions
type ProjectIncludeFile ¶
type ProjectRecord ¶
type ProjectRecord struct {
CreatedAt time.Time
DirName *string
StatusReason *string
GitOpsManagedBy *string
ComposeProjectName *string
BuildImageRefsJSON *string
ArchivedAt *time.Time
UpdatedAt *time.Time
ID string
Name string
Path string
Status string
ServiceCount int
RunningCount int
IsArchived bool
}
type ProjectReference ¶
type ProjectRenameJournal ¶
type ProjectRenameJournal struct {
UpdatedAt time.Time `json:"updatedAt"`
OldDirName *string `json:"oldDirName,omitempty"`
ProjectID string `json:"projectId"`
OldName string `json:"oldName"`
NewName string `json:"newName"`
OldPath string `json:"oldPath"`
NewPath string `json:"newPath"`
NewDirName string `json:"newDirName"`
Phase string `json:"phase"`
Volumes []VolumeJournalVolume `json:"volumes,omitempty"`
}
type ProjectRenameRecoveryOperations ¶
type ProjectRenameRecoveryOperations struct {
Docker func(context.Context, bool) (*client.Client, error)
WriteJournal func(context.Context, *ProjectRenameJournal, string) error
ClearJournal func(context.Context, string) error
ClearRollbackCleanup func(context.Context, string) error
RestoreState func(context.Context, *ProjectRenameJournal) error
WriteRollbackCleanup func(context.Context, *ProjectRenameJournal) error
}
type ProjectRenameRollbackCleanup ¶
type ProjectRenameRollbackCleanup struct {
UpdatedAt time.Time `json:"updatedAt"`
ProjectID string `json:"projectId"`
OldName string `json:"oldName"`
OldPath string `json:"oldPath"`
NewName string `json:"newName"`
NewPath string `json:"newPath"`
Volumes []VolumeJournalVolume `json:"volumes,omitempty"`
}
type ProjectRuntimeService ¶
type ProjectRuntimeService struct {
ContainerLabels map[string]string `json:"-"`
Health *string `json:"health,omitempty"`
ServiceConfig *composetypes.ServiceConfig `json:"serviceConfig,omitempty"`
ImageID string `json:"-"`
Name string `json:"name"`
Image string `json:"image"`
Status string `json:"status"`
ContainerID string `json:"containerId,omitempty"`
ContainerName string `json:"containerName,omitempty"`
IconLightURL string `json:"iconLightUrl,omitempty"`
IconDarkURL string `json:"iconDarkUrl,omitempty"`
Ports []string `json:"ports,omitempty"`
RedeployDisabled bool `json:"redeployDisabled,omitempty"`
}
func (*ProjectRuntimeService) UnmarshalJSON ¶
func (r *ProjectRuntimeService) UnmarshalJSON(data []byte) error
type ProjectServiceUpdateInfo ¶
type ProjectServiceUpdateInfo struct {
UpdateInfo *ImageUpdateInfo `json:"updateInfo,omitempty"`
ImageRef string `json:"imageRef"`
}
type ProjectStatusCounts ¶
type ProjectStatusCounts struct {
RunningProjects int `json:"runningProjects"`
StoppedProjects int `json:"stoppedProjects"`
TotalProjects int `json:"totalProjects"`
ArchivedProjects int `json:"archivedProjects"`
UpdatesAvailable int `json:"updatesAvailable" doc:"Active projects with a pending image update"`
}
type ProjectTag ¶
type ProjectTag struct {
Name string `json:"name"`
Color ProjectTagColor `json:"color"`
Sources []ProjectTagSource `json:"sources"`
}
type ProjectTagAssignment ¶
type ProjectTagAssignment struct {
ProjectID string
Name string
Source ProjectTagSource
Color ProjectTagColor
}
type ProjectTagColor ¶
type ProjectTagColor string
type ProjectTagOption ¶
type ProjectTagOption struct {
Name string `json:"name"`
Color ProjectTagColor `json:"color"`
}
type ProjectTagSource ¶
type ProjectTagSource string
type ProjectUpdateInfo ¶
type ProjectUpdateInfo struct {
ServiceUpdates map[string]ProjectServiceUpdateInfo `json:"serviceUpdates,omitempty"`
ErrorMessage *string `json:"errorMessage,omitempty"`
UpdateInfoByRef map[string]ImageUpdateInfo `json:"updateInfoByRef,omitempty"`
LastCheckedAt *time.Time `json:"lastCheckedAt,omitempty"`
Status string `json:"status"`
ImageRefs []string `json:"imageRefs,omitempty"`
UpdatedImageRefs []string `json:"updatedImageRefs,omitempty"`
NotPulledImageRefs []string `json:"notPulledImageRefs,omitempty"`
ImageCount int `json:"imageCount"`
CheckedImageCount int `json:"checkedImageCount"`
ImagesWithUpdates int `json:"imagesWithUpdates"`
ImagesNotPulled int `json:"imagesNotPulled"`
ErrorCount int `json:"errorCount"`
HasUpdate bool `json:"hasUpdate"`
}
type ProjectVolumeRenameConflictError ¶
type ProjectVolumeRenameConflictError struct {
VolumeName string
}
func (*ProjectVolumeRenameConflictError) Error ¶
func (e *ProjectVolumeRenameConflictError) Error() string
type ProjectVolumeRenameInUseError ¶
func (*ProjectVolumeRenameInUseError) Error ¶
func (e *ProjectVolumeRenameInUseError) Error() string
type ProjectVolumeRenameInsufficientSpaceError ¶
type ProjectVolumeRenameInsufficientSpaceError struct {
SourceVolume string
TargetVolume string
Detail string
}
func (*ProjectVolumeRenameInsufficientSpaceError) Error ¶
func (e *ProjectVolumeRenameInsufficientSpaceError) Error() string
type ProjectWorkspaceUpdateManifest ¶
type ProjectWorkspaceUpdateManifest struct {
FileChanges []WorkspaceFileChange `json:"fileChanges" binding:"required" minItems:"1" maxItems:"500"`
}
type ProjectsDirectoryEntry ¶
type ProjectsDirectoryStatus ¶
type PruneAllRequest ¶
type PruneAllRequest struct {
Containers *PruneContainersOptions `json:"containers,omitempty"`
Images *PruneImagesOptions `json:"images,omitempty"`
Volumes *PruneVolumesOptions `json:"volumes,omitempty"`
Networks *PruneNetworksOptions `json:"networks,omitempty"`
BuildCache *PruneBuildCacheOptions `json:"buildCache,omitempty"`
}
func (*PruneAllRequest) UnmarshalJSON ¶
func (r *PruneAllRequest) UnmarshalJSON(data []byte) error
type PruneAllResult ¶
type PruneAllResult struct {
ActivityID *string `json:"activityId,omitempty"`
ContainersPruned []string `json:"containersPruned,omitempty"`
ImagesDeleted []string `json:"imagesDeleted,omitempty"`
VolumesDeleted []string `json:"volumesDeleted,omitempty"`
NetworksDeleted []string `json:"networksDeleted,omitempty"`
Errors []string `json:"errors,omitempty"`
SpaceReclaimed uint64 `json:"spaceReclaimed"`
ContainerSpaceReclaimed uint64 `json:"containerSpaceReclaimed,omitempty"`
ImageSpaceReclaimed uint64 `json:"imageSpaceReclaimed,omitempty"`
VolumeSpaceReclaimed uint64 `json:"volumeSpaceReclaimed,omitempty"`
BuildCacheSpaceReclaimed uint64 `json:"buildCacheSpaceReclaimed,omitempty"`
Success bool `json:"success"`
}
type PruneBuildCacheMode ¶
type PruneBuildCacheMode string
type PruneBuildCacheOptions ¶
type PruneBuildCacheOptions struct {
Mode PruneBuildCacheMode `json:"mode"`
Until string `json:"until,omitempty"`
}
type PruneContainerMode ¶
type PruneContainerMode string
type PruneContainersOptions ¶
type PruneContainersOptions struct {
Mode PruneContainerMode `json:"mode"`
Until string `json:"until,omitempty"`
}
type PruneImageMode ¶
type PruneImageMode string
type PruneImagesOptions ¶
type PruneImagesOptions struct {
Mode PruneImageMode `json:"mode"`
Until string `json:"until,omitempty"`
}
type PruneNetworkMode ¶
type PruneNetworkMode string
type PruneNetworksOptions ¶
type PruneNetworksOptions struct {
Mode PruneNetworkMode `json:"mode"`
Until string `json:"until,omitempty"`
}
type PruneVolumeMode ¶
type PruneVolumeMode string
type PruneVolumesOptions ¶
type PruneVolumesOptions struct {
Mode PruneVolumeMode `json:"mode"`
}
type QuadletDetail ¶
type QuadletDetail struct {
UnitStatus *PodmanUnitStatus `json:"unitStatus,omitempty"`
EnvironmentTag
Name string `json:"name"`
UnitName string `json:"unitName"`
Path string `json:"path"`
Status string `json:"status"`
App string `json:"app,omitempty"`
Type QuadletType `json:"type"`
Containers []PodmanContainer `json:"containers,omitempty"`
Template bool `json:"template"`
}
type QuadletFile ¶
type QuadletInstallReport ¶
type QuadletInstallRequest ¶
type QuadletInstallRequest struct {
Name string `json:"name" minLength:"1" doc:"Quadlet file name including its extension"`
Content string `json:"content" minLength:"1" doc:"Quadlet file contents"`
App string `json:"app,omitempty" doc:"Application the quadlet belongs to"`
ExtraFiles []QuadletFile `json:"extraFiles,omitempty" doc:"Additional files installed beside the quadlet"`
}
type QuadletRemoveReport ¶
type QuadletType ¶
type QuadletType string
type QuadletUpdateRequest ¶
type QuadletUpdateRequest struct {
Content string `json:"content" minLength:"1" doc:"Quadlet file contents"`
ExtraFiles []QuadletFile `json:"extraFiles,omitempty" doc:"Additional files installed beside the quadlet"`
}
type ReadinessResponse ¶
type RecoveryManifest ¶
type RecoveryManifest struct {
CreatedAt time.Time `json:"createdAt"`
Environment map[string]string `json:"environment"`
ArcaneVersion string `json:"arcaneVersion"`
BackupID string `json:"backupId,omitempty"`
ActivityID string `json:"activityId,omitempty"`
DataPath string `json:"dataPath,omitempty"`
ProjectsPath string `json:"projectsPath,omitempty"`
DatabasePath string `json:"databasePath,omitempty"`
FormatVersion int `json:"formatVersion"`
}
type RecoveryRestoreRequest ¶
type RecoveryRestoreRequest struct {
SafetyBackup *RecoverySafetyBackup `json:"safetyBackup,omitempty"`
BackupID string `json:"backupId"`
ContainerID string `json:"containerId"`
ContainerImage string `json:"containerImage"`
SnapshotID string `json:"snapshotId"`
LocalSnapshotID string `json:"localSnapshotId,omitempty"`
RemoteSnapshotID string `json:"remoteSnapshotId,omitempty"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
RecoveryKey string `json:"recoveryKey"`
ProjectsSetting string `json:"projectsSetting,omitempty"`
NetworkMode string `json:"networkMode,omitempty"`
Stages []RecoveryRestoreStage `json:"stages"`
RollbackStages []RecoveryRestoreStage `json:"rollbackStages,omitempty"`
Size int64 `json:"size,omitempty"`
ProjectsIncluded bool `json:"projectsIncluded"`
}
type RecoveryRestoreStage ¶
type RecoveryRestoreStage struct {
Target RecoveryRestoreTarget `json:"target"`
SnapshotID string `json:"snapshotId"`
SourcePath string `json:"sourcePath"`
Repository RecoveryRestoreRepository `json:"repository"`
}
type RecoveryRestoreTarget ¶
type RecoverySafetyBackup ¶
type RemoteTemplate ¶
type RestoreSystemBackupFilesRequest ¶
type RestoreSystemBackupFilesRequest struct {
RecoveryKey string `json:"recoveryKey"`
BackupRestoreSelection
}
type RiskDrivers ¶
type RiskDrivers struct {
KnownExploited int `json:"knownExploited"`
OverdueKnownExploited int `json:"overdueKnownExploited"`
HighEPSS int `json:"highEpss"`
ExposedCriticalHigh int `json:"exposedCriticalHigh"`
Fixable int `json:"fixable"`
Findings int `json:"findings"`
ImagesScanned int `json:"imagesScanned"`
ImagesTotal int `json:"imagesTotal"`
ScoredImages int `json:"scoredImages"`
}
type RiskExposureBreakdown ¶
type RiskFinding ¶
type RiskFinding struct {
EPSS *float64 `json:"epss,omitempty"`
EnvironmentTag
VulnerabilityID string `json:"vulnerabilityId"`
PkgName string `json:"pkgName"`
Title string `json:"title,omitempty"`
Severity VulnerabilitySeverity `json:"severity"`
KEVDueDate string `json:"kevDueDate,omitempty"`
FixedVersion string `json:"fixedVersion,omitempty"`
CVSS float64 `json:"cvss"`
Risk float64 `json:"risk"`
ImagesAffected int `json:"imagesAffected"`
RunningImagesAffected int `json:"runningImagesAffected"`
KnownExploited bool `json:"knownExploited"`
Ransomware bool `json:"ransomware"`
}
type RiskImage ¶
type RiskImage struct {
EnvironmentTag
ImageID string `json:"imageId"`
ImageName string `json:"imageName"`
Exposure ImageExposure `json:"exposure"`
VulnerabilityPatchPriority
RunningContainers int `json:"runningContainers"`
KnownExploited int `json:"knownExploited"`
Critical int `json:"critical"`
High int `json:"high"`
Fixable int `json:"fixable"`
Findings int `json:"findings"`
}
type RiskOverview ¶
type RiskOverview struct {
ComputedAt time.Time `json:"computedAt"`
Delta7d *int `json:"delta7d,omitempty"`
Drivers7dAgo *RiskDrivers `json:"drivers7dAgo,omitempty"`
ScoreDriver *RiskScoreDriver `json:"scoreDriver,omitempty"`
VulnerabilityPatchPriority
ThreatIntel ThreatIntelStatus `json:"threatIntel"`
Trend []RiskTrendPoint `json:"trend"`
RiskiestImages []RiskImage `json:"riskiestImages"`
RiskiestFindings []RiskFinding `json:"riskiestFindings"`
PrevalentFindings []RiskFinding `json:"prevalentFindings"`
Drivers RiskDrivers `json:"drivers"`
Summary VulnerabilitySeveritySummary `json:"summary"`
ScoreBasis RiskScoreBasis `json:"scoreBasis" doc:"Unrounded data behind riskScore, used to merge environments into one exact score"`
Exposure RiskExposureBreakdown `json:"exposure"`
}
type RiskScoreBasis ¶
type RiskScoreBasis struct {
Score float64 `json:"score" doc:"Exposure-weighted average image score"`
Weight float64 `json:"weight" doc:"Summed exposure weight of the scored images"`
Peak float64 `json:"peak" doc:"Highest image score"`
ExploitedRunningImages int `json:"exploitedRunningImages" doc:"Running images with a fixable known-exploited finding"`
OverdueExploitedRunningImages int `json:"overdueExploitedRunningImages" doc:"Running images with a fixable known-exploited finding past its KEV due date"`
}
type RiskScoreDriver ¶
type RiskScoreDriver struct {
VulnerabilityID string `json:"vulnerabilityId"`
ImageName string `json:"imageName"`
PkgName string `json:"pkgName"`
FixedVersion string `json:"fixedVersion"`
Exposure ImageExposure `json:"exposure"`
KnownExploited bool `json:"knownExploited"`
Risk float64 `json:"risk"`
}
type RiskTrendPoint ¶
type RiskTrendPoint struct {
ScoreBasis *RiskScoreBasis `` /* 129-byte string literal not displayed */
Date string `json:"date"`
RiskScore int `json:"riskScore"`
}
type Role ¶
type Role struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true" doc:"Creation timestamp"`
Description *string `json:"description,omitempty" maxLength:"500" doc:"Optional human description" unorm:"nfc" trim:"true"`
UpdatedAt *time.Time `json:"updatedAt,omitempty" readOnly:"true" doc:"Last update timestamp"`
ID string `json:"id" readOnly:"true" doc:"Unique identifier of the role" example:"role_admin"`
Name string `` /* 129-byte string literal not displayed */
Permissions []string `` /* 134-byte string literal not displayed */
AssignedUserCount int `json:"assignedUserCount" readOnly:"true" doc:"How many users currently hold an assignment to this role"`
BuiltIn bool `` /* 130-byte string literal not displayed */
}
type RoleAssignment ¶
type RoleAssignment struct {
CreatedAt time.Time `json:"createdAt" doc:"Creation timestamp"`
EnvironmentID *string `json:"environmentId,omitempty" doc:"Environment ID this assignment is scoped to; omit for a global assignment"`
ID string `json:"id" doc:"Unique identifier of the assignment"`
UserID string `json:"userId" doc:"ID of the user holding this assignment"`
RoleID string `json:"roleId" doc:"ID of the granted role"`
Source string `json:"source" doc:"How the assignment was created" enum:"manual,oidc"`
}
type RoleAssignmentSummary ¶
type RoleAssignmentSummary struct {
RoleID string `json:"roleId" doc:"Role ID granted by this assignment"`
EnvironmentID *string `json:"environmentId,omitempty" doc:"Environment ID this assignment is scoped to; omit for a global assignment"`
Source string `json:"source" doc:"How the assignment was created" enum:"manual,oidc"`
}
type RunObserver ¶
type RunObserver interface {
ActivityID(run SchedulerRun) string
SyncRunActivity(ctx context.Context, run SchedulerRun) error
}
ActivityID is persisted before projection and is empty for runs that should stay quiet.
type RunStatus ¶
type RunStatus string
const ( RunStatusQueued RunStatus = "queued" RunStatusWaiting RunStatus = "waiting" RunStatusRunning RunStatus = "running" RunStatusRetrying RunStatus = "retrying" RunStatusSucceeded RunStatus = "succeeded" RunStatusPartial RunStatus = "partial" RunStatusSkipped RunStatus = "skipped" RunStatusFailed RunStatus = "failed" RunStatusNeedsAttention RunStatus = "needs_attention" RunStatusCanceled RunStatus = "canceled" SchedulerWorkflowTarget = "workflow" )
type RunSystemVolumeBackupsRequest ¶
type RunSystemVolumeBackupsRequest struct {
Custom *SystemVolumeBackupCustomRun `json:"custom,omitempty"`
PolicyID string `json:"policyId,omitempty"`
}
type RuntimeInfo ¶
type RuntimeInfo struct {
LeakScannedAt time.Time `json:"leakScannedAt,omitzero"`
GoVersion string `json:"goVersion"`
OS string `json:"os"`
Arch string `json:"arch"`
Goroutines int `json:"goroutines"`
WSWorkerGoroutines int `json:"wsWorkerGoroutines"`
LeakedGoroutines int `json:"leakedGoroutines"`
GOMAXPROCS int `json:"gomaxprocs"`
NumCPU int `json:"numCpu"`
NumCgoCall int64 `json:"numCgoCall"`
UptimeSeconds int64 `json:"uptimeSeconds"`
}
type S3Destination ¶
type S3Destination struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
UpdatedAt *time.Time `json:"updatedAt,omitempty" readOnly:"true"`
ID string `json:"id" readOnly:"true"`
Name string `json:"name" required:"false" minLength:"1" unorm:"nfc" trim:"true"`
Endpoint string `json:"endpoint,omitempty"`
Bucket string `json:"bucket" required:"false"`
Region string `json:"region" required:"false"`
AccessKeyID string `json:"accessKeyId" required:"false"`
SecretAccessKey string `json:"secretAccessKey,omitempty" writeOnly:"true"`
Prefix string `json:"prefix,omitempty"`
UseSSL bool `json:"useSsl" required:"false"`
ForcePathStyle bool `json:"forcePathStyle" required:"false"`
SecretConfigured bool `json:"secretConfigured" readOnly:"true"`
}
type S3DestinationSyncRequest ¶
type S3DestinationSyncRequest struct {
Destinations []S3Destination `json:"destinations"`
}
type S3DestinationUsage ¶
type S3DestinationUsage struct {
InUse bool `json:"inUse"`
}
type SchedulerAdmissionKey ¶
type SchedulerAdmissionState ¶
type SchedulerAttempt ¶
type SchedulerCoordinatorImport ¶
type SchedulerCoordinatorImport struct {
SourceHash string
Record SchedulerQueueRecord
}
type SchedulerCoordinatorState ¶
type SchedulerCoordinatorState struct {
Dispatches map[string]SchedulerDispatchIntent
PendingActivitySync map[string]time.Time
ImportHash string
Record SchedulerQueueRecord
Revision uint64
Imported bool
}
type SchedulerDispatchIntent ¶
type SchedulerExecutionClaim ¶
type SchedulerExecutionClaim struct {
Run SchedulerRun
Reconcile bool
Claimed bool
Deferred bool
}
type SchedulerJob ¶
type SchedulerOutcome ¶
type SchedulerOutcome struct {
Status RunStatus `json:"status"`
Message string `json:"message,omitempty"`
ActivityID string `json:"activityId,omitempty"`
Targets []TargetOutcome `json:"targets,omitempty"`
Steps []StepOutcome `json:"steps,omitempty"`
}
type SchedulerOutcomeError ¶
type SchedulerOutcomeError struct {
Cause error
Outcome SchedulerOutcome
}
func (*SchedulerOutcomeError) Error ¶
func (e *SchedulerOutcomeError) Error() string
func (*SchedulerOutcomeError) Unwrap ¶
func (e *SchedulerOutcomeError) Unwrap() error
type SchedulerQueueRecord ¶
type SchedulerQueueRecord struct {
Receipts map[string]SchedulerRun `json:"receipts,omitempty"`
JobID string `json:"jobId"`
EnvironmentID string `json:"environmentId"`
Schedule string `json:"schedule"`
ScheduleJobID string `json:"scheduleJobId,omitempty"`
Runs []SchedulerRun `json:"runs"`
}
type SchedulerReconciler ¶
type SchedulerReconciler interface {
Reconcile(ctx context.Context, previous SchedulerRun) (SchedulerOutcome, error)
}
type SchedulerRequest ¶
type SchedulerRetryValidator ¶
type SchedulerRetryValidator interface {
ValidateRetry(ctx context.Context, run SchedulerRun) error
}
type SchedulerRun ¶
type SchedulerRun struct {
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
StartedAt *time.Time `json:"startedAt,omitempty"`
FinishedAt *time.Time `json:"finishedAt,omitempty"`
NextAttempt *time.Time `json:"nextAttempt,omitempty"`
RemoteOutcome *SchedulerOutcome `json:"remoteOutcome,omitempty"`
LastConfirmedAt *time.Time `json:"lastConfirmedAt,omitempty"`
ActivityEnvironmentID string `json:"activityEnvironmentId,omitempty"`
ActivityID string `json:"activityId,omitempty"`
RequestedWithKey string `json:"requestedWithKey,omitempty"`
ID string `json:"id"`
JobID string `json:"jobId"`
EnvironmentID string `json:"environmentId"`
Trigger string `json:"trigger"`
RequestedBy string `json:"requestedBy,omitempty"`
Status RunStatus `json:"status"`
Owner string `json:"owner,omitempty"`
Outcome SchedulerOutcome `json:"outcome"`
Attempts []SchedulerAttempt `json:"attempts,omitempty"`
AttemptCount int `json:"attemptCount"`
RemoteAttemptCount int `json:"remoteAttemptCount,omitempty"`
RemoteDeliveryAttempted bool `json:"remoteDeliveryAttempted"`
RemoteRetryRequested bool `json:"remoteRetryRequested,omitempty"`
RemoteRetryAttempted bool `json:"remoteRetryAttempted,omitempty"`
RemoteAccepted bool `json:"remoteAccepted"`
RemoteSettled bool `json:"remoteSettled"`
}
type SchedulerRunList ¶
type SchedulerRunList struct {
Runs []SchedulerRun `json:"runs"`
Total int `json:"total"`
Page int `json:"page"`
Limit int `json:"limit"`
}
type SchedulerWorkerHealth ¶
type SearchRequest ¶
type SearchRequest struct {
Query string `json:"query" binding:"required,min=1"`
}
type SearchResponse ¶
type SessionBootstrap ¶
type SessionBootstrap struct {
User User `json:"user" doc:"Authenticated user"`
Version VersionInfo `json:"version" doc:"Application version information"`
Environments Paginated[Environment] `json:"environments" doc:"Environments the user can access"`
}
type SessionMeta ¶
type SetUserRoleAssignments ¶
type SetUserRoleAssignments struct {
Assignments []UserRoleAssignmentInput `json:"assignments" doc:"Desired manual role assignments for the user"`
}
type SettingMetadata ¶
type SettingState ¶
type SettingState struct {
Key string `json:"key"`
Value string `json:"value"`
Type string `json:"type"`
Default string `json:"default"`
Source string `json:"source" enum:"default,db,env"`
LockReason string `json:"lockReason,omitempty" enum:"env,readOnly"`
Scope string `json:"scope" enum:"manager,authentication,environment"`
EnvName string `json:"envName"`
Locked bool `json:"locked"`
Sensitive bool `json:"sensitive"`
}
type SettingUpdate ¶
type SettingsRuntime ¶
type SettingsRuntime struct {
BackupVolumeName string `json:"backupVolumeName,omitzero"`
FrontendTracingEnabled bool `json:"frontendTracingEnabled"`
FrontendMetricsEnabled bool `json:"frontendMetricsEnabled"`
FrontendLogsEnabled bool `json:"frontendLogsEnabled"`
AgentMTLSManagerCAAvailable bool `json:"agentMTLSManagerCAAvailable,omitzero"`
DepotConfigured bool `json:"depotConfigured,omitzero"`
}
type SettingsSnapshot ¶
type SettingsSnapshot struct {
Settings []SettingState `json:"settings"`
Runtime SettingsRuntime `json:"runtime"`
ReadOnly bool `json:"readOnly"`
}
type SettingsUpdate ¶
type SourceCleanupError ¶
func (*SourceCleanupError) Error ¶
func (e *SourceCleanupError) Error() string
func (*SourceCleanupError) Unwrap ¶
func (e *SourceCleanupError) Unwrap() error
type StartUpgradeJobRequest ¶
type StartUpgradeJobRequest struct {
EnvironmentIDs []string `json:"environmentIds,omitempty" doc:"Environments to upgrade; empty upgrades every enabled environment"`
}
type StepOutcome ¶
type StepOutcome struct {
StartedAt *time.Time `json:"startedAt,omitempty"`
FinishedAt *time.Time `json:"finishedAt,omitempty"`
Name string `json:"name"`
Status RunStatus `json:"status"`
Message string `json:"message,omitempty"`
Total int `json:"total,omitempty"`
Completed int `json:"completed,omitempty"`
Failed int `json:"failed,omitempty"`
Attempts int `json:"attempts,omitempty"`
}
type StoppableBusWatcher ¶
type StoppableBusWatcher interface {
BusWatcher
Stop(ctx context.Context) error
}
type StreamEvent ¶
type StreamEvent struct {
Timestamp time.Time `json:"timestamp"`
Activity *ActivityStreamEvent `json:"activity,omitempty"`
Environment *EnvironmentStreamEvent `json:"environment,omitempty"`
EventLog *EventStreamEvent `json:"eventLog,omitempty"`
Version *VersionStreamEvent `json:"version,omitempty"`
Upgrade *UpgradeJob `json:"upgrade,omitempty"`
Channel string `json:"channel,omitempty"`
Type string `json:"type,omitempty"`
}
Exactly one payload is set, retaining its channel's event type.
type SubmittedBody ¶
type SubmittedBody struct {
RawBody []byte
}
func (SubmittedBody) SubmittedFields ¶
type SwarmBindingCandidate ¶
type SwarmConfig ¶
type SwarmConfig struct {
Spec swarm.ConfigSpec `json:"spec" required:"false"`
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
UpdatedAt time.Time `json:"updatedAt" readOnly:"true"`
EnvironmentTag
ID string `json:"id" readOnly:"true"`
Version swarm.Version `json:"version" readOnly:"true"`
}
func NewSwarmConfig ¶
func NewSwarmConfig(cfg swarm.Config) SwarmConfig
type SwarmInfo ¶
type SwarmInfo struct {
ID string `json:"id"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
Spec swarm.Spec `json:"spec"`
RootRotationInProgress bool `json:"rootRotationInProgress"`
}
func NewSwarmInfo ¶
type SwarmInitRequest ¶
type SwarmInitRequest struct {
ListenAddr string `json:"listenAddr,omitempty"`
AdvertiseAddr string `json:"advertiseAddr,omitempty"`
DataPathAddr string `json:"dataPathAddr,omitempty"`
Spec jsontext.Value `json:"spec" doc:"Swarm specification"`
Availability swarm.NodeAvailability `json:"availability,omitempty"`
DefaultAddrPool []string `json:"defaultAddrPool,omitempty"`
DataPathPort uint32 `json:"dataPathPort,omitempty"`
SubnetSize uint32 `json:"subnetSize,omitempty"`
ForceNewCluster bool `json:"forceNewCluster,omitempty"`
AutoLockManagers bool `json:"autoLockManagers,omitempty"`
}
type SwarmInitResponse ¶
type SwarmInitResponse struct {
NodeID string `json:"nodeId"`
}
type SwarmJoinCandidate ¶
type SwarmJoinEnvironmentResult ¶
type SwarmJoinEnvironmentResult struct {
NodeID *string `json:"nodeId,omitempty"`
Error *string `json:"error,omitempty"`
EnvironmentID string `json:"environmentId"`
State SwarmJoinEnvironmentResultState `json:"state"`
}
type SwarmJoinEnvironmentResultState ¶
type SwarmJoinEnvironmentResultState string
type SwarmJoinEnvironmentRole ¶
type SwarmJoinEnvironmentRole string
type SwarmJoinEnvironmentTarget ¶
type SwarmJoinEnvironmentTarget struct {
EnvironmentID string `json:"environmentId"`
Role SwarmJoinEnvironmentRole `json:"role"`
Availability swarm.NodeAvailability `json:"availability,omitempty"`
ListenAddr string `json:"listenAddr,omitempty"`
AdvertiseAddr string `json:"advertiseAddr,omitempty"`
DataPathAddr string `json:"dataPathAddr,omitempty"`
}
type SwarmJoinEnvironmentsRequest ¶
type SwarmJoinEnvironmentsRequest struct {
RemoteAddrs []string `json:"remoteAddrs"`
Targets []SwarmJoinEnvironmentTarget `json:"targets"`
}
type SwarmJoinEnvironmentsResponse ¶
type SwarmJoinEnvironmentsResponse struct {
Results []SwarmJoinEnvironmentResult `json:"results"`
}
type SwarmJoinRequest ¶
type SwarmJoinRequest struct {
ListenAddr string `json:"listenAddr,omitempty"`
AdvertiseAddr string `json:"advertiseAddr,omitempty"`
DataPathAddr string `json:"dataPathAddr,omitempty"`
JoinToken string `json:"joinToken"`
Availability swarm.NodeAvailability `json:"availability,omitempty"`
RemoteAddrs []string `json:"remoteAddrs"`
}
type SwarmJoinTokensResponse ¶
type SwarmLeaveRequest ¶
type SwarmLeaveRequest struct {
Force bool `json:"force,omitempty"`
}
type SwarmNode ¶
type SwarmNode struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
UpdatedAt time.Time `json:"updatedAt" readOnly:"true"`
Labels map[string]string `json:"labels,omitempty"`
SystemLabels map[string]string `json:"systemLabels,omitempty" readOnly:"true"`
EnvironmentTag
ID string `json:"id" readOnly:"true"`
Name string `json:"name,omitempty"`
Hostname string `json:"hostname" readOnly:"true"`
Role string `json:"role" required:"false"`
Availability string `json:"availability" required:"false"`
Status string `json:"status" readOnly:"true"`
Address string `json:"address,omitempty" readOnly:"true"`
ManagerStatus string `json:"managerStatus,omitempty" readOnly:"true"`
ManagerAddress string `json:"managerAddress,omitempty" readOnly:"true"`
Reachability string `json:"reachability,omitempty" readOnly:"true"`
EngineVersion string `json:"engineVersion,omitempty" readOnly:"true"`
Platform string `json:"platform,omitempty" readOnly:"true"`
Agent NodeAgentStatus `json:"agent" readOnly:"true"`
Version uint64 `json:"version,omitempty"`
}
func NewSwarmNode ¶
type SwarmRuntimeStatus ¶
type SwarmSecret ¶
type SwarmSecret struct {
Spec swarm.SecretSpec `json:"spec" required:"false"`
CreatedAt time.Time `json:"createdAt" readOnly:"true"`
UpdatedAt time.Time `json:"updatedAt" readOnly:"true"`
EnvironmentTag
ID string `json:"id" readOnly:"true"`
Version swarm.Version `json:"version" readOnly:"true"`
}
func NewSwarmSecret ¶
func NewSwarmSecret(secret swarm.Secret) SwarmSecret
type SwarmServiceCreateRequest ¶
type SwarmServiceCreateRequest struct {
Options *SwarmServiceCreateOptions `json:"options,omitempty" doc:"Additional create options"`
Spec jsontext.Value `json:"spec" doc:"Service specification"`
}
type SwarmServiceInspect ¶
type SwarmServiceInspect struct {
Spec swarm.ServiceSpec `json:"spec"`
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
UpdateStatus *swarm.UpdateStatus `json:"updateStatus,omitempty"`
NetworkDetails map[string]SwarmServiceNetworkDetail `json:"networkDetails,omitempty"`
ID string `json:"id"`
Endpoint swarm.Endpoint `json:"endpoint"`
Nodes []string `json:"nodes,omitempty"`
Mounts []SwarmServiceMount `json:"mounts,omitempty"`
Version swarm.Version `json:"version"`
}
func NewSwarmServiceInspect ¶
func NewSwarmServiceInspect(service swarm.Service) SwarmServiceInspect
type SwarmServiceMount ¶
type SwarmServiceMount struct {
VolumeOptions map[string]string `json:"volumeOptions,omitempty"`
Type string `json:"type"`
Source string `json:"source,omitempty"`
Target string `json:"target"`
VolumeDriver string `json:"volumeDriver,omitempty"`
DevicePath string `json:"devicePath,omitempty"`
ReadOnly bool `json:"readOnly,omitempty"`
}
type SwarmServiceNetworkConfigDetail ¶
type SwarmServiceNetworkConfigDetail struct {
Options map[string]string `json:"options,omitempty"`
Name string `json:"name"`
Driver string `json:"driver"`
Scope string `json:"scope"`
IPv4Configs []SwarmServiceNetworkIPAMConfig `json:"ipv4Configs,omitempty"`
IPv6Configs []SwarmServiceNetworkIPAMConfig `json:"ipv6Configs,omitempty"`
EnableIPv4 bool `json:"enableIPv4"`
EnableIPv6 bool `json:"enableIPv6"`
}
type SwarmServiceNetworkDetail ¶
type SwarmServiceNetworkDetail struct {
Options map[string]string `json:"options,omitempty"`
ConfigNetwork *SwarmServiceNetworkConfigDetail `json:"configNetwork,omitempty"`
ID string `json:"id"`
Name string `json:"name"`
Driver string `json:"driver"`
Scope string `json:"scope"`
ConfigFrom string `json:"configFrom,omitempty"`
IPAMConfigs []SwarmServiceNetworkIPAMConfig `json:"ipamConfigs,omitempty"`
Internal bool `json:"internal"`
Attachable bool `json:"attachable"`
Ingress bool `json:"ingress"`
EnableIPv4 bool `json:"enableIPv4"`
EnableIPv6 bool `json:"enableIPv6"`
ConfigOnly bool `json:"configOnly"`
}
type SwarmServicePort ¶
type SwarmServiceScaleRequest ¶
type SwarmServiceScaleRequest struct {
Replicas uint64 `json:"replicas"`
}
type SwarmServiceSummary ¶
type SwarmServiceSummary struct {
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
Labels map[string]string `json:"labels"`
EnvironmentTag
ID string `json:"id"`
Name string `json:"name"`
Image string `json:"image"`
Mode string `json:"mode"`
StackName string `json:"stackName,omitempty"`
Ports []SwarmServicePort `json:"ports"`
Nodes []string `json:"nodes"`
Networks []string `json:"networks"`
Mounts []SwarmServiceMount `json:"mounts"`
Replicas uint64 `json:"replicas"`
RunningReplicas uint64 `json:"runningReplicas"`
}
func NewSwarmServiceSummary ¶
type SwarmServiceUpdateOptions ¶
type SwarmServiceUpdateOptions struct {
EncodedRegistryAuth string `json:"encodedRegistryAuth,omitempty"`
RegistryAuthFrom swarm.RegistryAuthSource `json:"registryAuthFrom,omitempty"`
Rollback string `json:"rollback,omitempty"`
QueryRegistry bool `json:"queryRegistry,omitempty"`
}
type SwarmServiceUpdateRequest ¶
type SwarmServiceUpdateRequest struct {
Spec swarm.ServiceSpec `json:"spec"`
Options *SwarmServiceUpdateOptions `json:"options,omitzero"`
Version uint64 `json:"version"`
}
type SwarmServiceUpdateResponse ¶
type SwarmServiceUpdateResponse struct {
Warnings []string `json:"warnings,omitempty"`
}
type SwarmStackDeployRequest ¶
type SwarmStackDeployRequest struct {
Name string `json:"name"`
ComposeContent string `json:"composeContent"`
OverrideContent string `json:"overrideContent,omitempty"`
EnvContent string `json:"envContent,omitempty"`
ResolveImage string `json:"resolveImage,omitempty"`
WorkingDir string `json:"-"`
Files []SwarmSyncFile `json:"files,omitempty"`
WithRegistryAuth bool `json:"withRegistryAuth,omitempty"`
Prune bool `json:"prune,omitempty"`
}
type SwarmStackDeployResponse ¶
type SwarmStackDeployResponse struct {
Name string `json:"name"`
}
type SwarmStackInspect ¶
type SwarmStackRenderConfigResponse ¶
type SwarmStackRenderConfigResponse struct {
Name string `json:"name"`
RenderedCompose string `json:"renderedCompose"`
Services []string `json:"services"`
Networks []string `json:"networks"`
Volumes []string `json:"volumes"`
Configs []string `json:"configs"`
Secrets []string `json:"secrets"`
Warnings []string `json:"warnings,omitempty"`
}
type SwarmStackSource ¶
type SwarmStackSource struct {
Name string `json:"name" readOnly:"true"`
ComposeContent string `json:"composeContent" required:"false"`
OverrideContent string `json:"overrideContent,omitempty"`
EnvContent string `json:"envContent,omitempty"`
Files []SwarmSyncFile `json:"files,omitempty"`
}
type SwarmStackSummary ¶
type SwarmStackSummary struct {
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
EnvironmentTag
ID string `json:"id"`
Name string `json:"name"`
Namespace string `json:"namespace"`
ClusterID string `json:"clusterId,omitempty" doc:"Swarm cluster ID of the manager that listed the stack"`
Services int `json:"services"`
HasSource bool `json:"hasSource" doc:"Whether this environment stores the stack's saved source files"`
}
type SwarmSyncFile ¶
type SwarmTaskSummary ¶
type SwarmTaskSummary struct {
CreatedAt time.Time `json:"createdAt"`
UpdatedAt time.Time `json:"updatedAt"`
EnvironmentTag
ID string `json:"id"`
Name string `json:"name"`
ServiceID string `json:"serviceId"`
ServiceName string `json:"serviceName"`
NodeID string `json:"nodeId"`
NodeName string `json:"nodeName"`
DesiredState string `json:"desiredState"`
CurrentState string `json:"currentState"`
Error string `json:"error,omitempty"`
ContainerID string `json:"containerId,omitempty"`
Image string `json:"image,omitempty"`
Slot int `json:"slot,omitempty"`
}
func NewSwarmTaskSummary ¶
func NewSwarmTaskSummary(task swarm.Task, serviceName, nodeName string) SwarmTaskSummary
type SwarmUnlockKeyResponse ¶
type SwarmUnlockKeyResponse struct {
UnlockKey string `json:"unlockKey"`
}
type SwarmUnlockRequest ¶
type SwarmUnlockRequest struct {
Key string `json:"key"`
}
type SwarmUpdateRequest ¶
type SwarmUpdateRequest struct {
Spec jsontext.Value `json:"spec" doc:"Updated swarm specification"`
Version uint64 `json:"version,omitempty"`
RotateWorkerToken bool `json:"rotateWorkerToken,omitempty"`
RotateManagerToken bool `json:"rotateManagerToken,omitempty"`
RotateManagerUnlockKey bool `json:"rotateManagerUnlockKey,omitempty"`
}
type SystemBackupDestination ¶
type SystemBackupDestination string
type SystemBackupPolicy ¶
type SystemBackupPolicy struct {
LastRun *SystemBackupRun `json:"lastRun,omitempty"`
ID string `json:"id"`
Schedule string `json:"schedule"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
S3DestinationName string `json:"s3DestinationName,omitempty"`
RetentionCount int `json:"retentionCount"`
Enabled bool `json:"enabled"`
LocalEnabled bool `json:"localEnabled"`
S3Enabled bool `json:"s3Enabled"`
}
type SystemBackupPolicyCollection ¶
type SystemBackupPolicyCollection struct {
Policies []SystemBackupPolicy `json:"policies"`
RecoveryKeyStored bool `json:"recoveryKeyStored"`
}
type SystemBackupRecoveryKey ¶
type SystemBackupRecoveryKey struct {
RecoveryKey string `json:"recoveryKey"`
}
type SystemBackupRecoveryKeyStatus ¶
type SystemBackupRecoveryKeyStatus struct {
Configured bool `json:"configured"`
}
type SystemBackupRun ¶
type SystemBackupRun struct {
CreatedAt time.Time `json:"createdAt"`
RemoteAvailable *bool `json:"remoteAvailable,omitempty"`
ActivityID string `json:"activityId,omitempty"`
ID string `json:"id"`
Status string `json:"status"`
Trigger string `json:"trigger"`
Destination SystemBackupDestination `json:"destination"`
LocalSnapshotID string `json:"localSnapshotId,omitempty"`
RemoteSnapshotID string `json:"remoteSnapshotId,omitempty"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
S3DestinationName string `json:"s3DestinationName,omitempty"`
PolicyID string `json:"policyId,omitempty"`
Error string `json:"error,omitempty"`
Size int64 `json:"size"`
}
type SystemDiskUsage ¶
type SystemDiskUsage struct {
UnusedImagesBytes int64 `json:"unusedImagesBytes" doc:"Bytes held by images not referenced by any container"`
BuildCacheBytes int64 `json:"buildCacheBytes" doc:"Bytes held by build cache records that are not in use"`
UnusedVolumesBytes int64 `json:"unusedVolumesBytes" doc:"Bytes held by volumes no container references"`
StoppedContainersBytes int64 `json:"stoppedContainersBytes" doc:"Writable-layer bytes held by containers that are not running"`
}
type SystemStats ¶
type SystemStats struct {
Architecture string `json:"architecture"`
Platform string `json:"platform"`
Hostname string `json:"hostname,omitempty"`
GPUs []GPUStats `json:"gpus,omitempty"`
CPUUsage float64 `json:"cpuUsage"`
MemoryUsage uint64 `json:"memoryUsage"`
MemoryTotal uint64 `json:"memoryTotal"`
DiskUsage uint64 `json:"diskUsage,omitempty"`
DiskTotal uint64 `json:"diskTotal,omitempty"`
CPUCount int `json:"cpuCount"`
GPUCount int `json:"gpuCount"`
}
type SystemVolumeBackupCustomRun ¶
type SystemVolumeBackupCustomRun struct {
Destination SystemBackupDestination `json:"destination"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
SelectionMode SystemVolumeSelectionMode `json:"selectionMode"`
VolumeNames []string `json:"volumeNames"`
StopContainers bool `json:"stopContainers"`
IgnoreAnonymous bool `json:"ignoreAnonymous"`
}
type SystemVolumeBackupHistoryEntry ¶
type SystemVolumeBackupHistoryEntry struct {
EnvironmentTag
CreatedAt time.Time `json:"createdAt" sortable:"true"`
RemoteAvailable *bool `json:"remoteAvailable,omitempty" gorm:"-"`
ID string `json:"id" sortable:"true"`
Status string `json:"status" sortable:"true"`
Trigger string `json:"trigger" sortable:"true"`
Destination SystemBackupDestination `json:"destination" sortable:"true"`
Format string `json:"format,omitempty"`
LocalSnapshotID string `json:"localSnapshotId,omitempty"`
RemoteSnapshotID string `json:"remoteSnapshotId,omitempty"`
RemoteInstanceID string `json:"remoteInstanceId,omitempty"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
S3DestinationName string `json:"s3DestinationName,omitempty"`
PolicyID string `json:"policyId,omitempty"`
Error string `json:"error,omitempty"`
Type BackupManagementType `json:"type" sortable:"true"`
ResourceType string `json:"resourceType"`
ResourceName string `json:"resourceName" sortable:"true"`
Size int64 `json:"size" sortable:"true"`
}
type SystemVolumeBackupPolicy ¶
type SystemVolumeBackupPolicy struct {
LastRun *SystemBackupRun `json:"lastRun,omitempty"`
ID string `json:"id"`
Schedule string `json:"schedule"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
S3DestinationName string `json:"s3DestinationName,omitempty"`
SelectionMode SystemVolumeSelectionMode `json:"selectionMode"`
VolumeNames []string `json:"volumeNames"`
RetentionCount int `json:"retentionCount"`
Enabled bool `json:"enabled"`
StopContainers bool `json:"stopContainers"`
LocalEnabled bool `json:"localEnabled"`
S3Enabled bool `json:"s3Enabled"`
IgnoreAnonymous bool `json:"ignoreAnonymous"`
}
type SystemVolumeBackupPolicyCollection ¶
type SystemVolumeBackupPolicyCollection struct {
Policies []SystemVolumeBackupPolicy `json:"policies"`
}
type SystemVolumeBackupRunResult ¶
type SystemVolumeBackupRunResult struct {
Failures []SystemVolumeBackupFailure `json:"failures"`
Matched int `json:"matched"`
Succeeded int `json:"succeeded"`
Failed int `json:"failed"`
Skipped int `json:"skipped"`
}
type SystemVolumeSelectionMode ¶
type SystemVolumeSelectionMode string
type TargetMissingWithSourceError ¶
func (*TargetMissingWithSourceError) Error ¶
func (e *TargetMissingWithSourceError) Error() string
type TargetOutcome ¶
type TargetPreservedDuringRollbackError ¶
type TargetPreservedDuringRollbackError struct {
Err error
SourceVolume string
TargetVolume string
}
func (*TargetPreservedDuringRollbackError) Error ¶
func (e *TargetPreservedDuringRollbackError) Error() string
func (*TargetPreservedDuringRollbackError) Unwrap ¶
func (e *TargetPreservedDuringRollbackError) Unwrap() error
type Template ¶
type Template struct {
EnvContent *string `json:"envContent,omitempty"`
RegistryID *string `json:"registryId,omitempty" readOnly:"true"`
Registry *TemplateRegistry `json:"registry,omitempty" readOnly:"true"`
Metadata *TemplateMeta `json:"metadata,omitempty" readOnly:"true"`
BaseTemplate
Content string `json:"content" required:"false"`
IsCustom bool `json:"isCustom" readOnly:"true"`
IsRemote bool `json:"isRemote" readOnly:"true"`
}
type TemplateBaseRegistry ¶
type TemplateContent ¶
type TemplateMeta ¶
type TemplateMeta struct {
Version *string `json:"version,omitempty"`
Author *string `json:"author,omitempty"`
RemoteURL *string `json:"remoteUrl,omitempty"`
EnvURL *string `json:"envUrl,omitempty"`
DocumentationURL *string `json:"documentationUrl,omitempty"`
IconURL *string `json:"iconUrl,omitempty"`
UpdatedAt *string `json:"updatedAt,omitempty"`
Tags []string `json:"tags,omitempty"`
}
type TemplateRegistry ¶
type TemplateRegistry struct {
LastFetchError *string `json:"lastFetchError,omitempty" readOnly:"true"`
TemplateBaseRegistry
ID string `json:"id" readOnly:"true"`
Enabled bool `json:"enabled" required:"false"`
}
type TemplateRemoteRegistry ¶
type TemplateRemoteRegistry struct {
TemplateBaseRegistry
Schema string `json:"$schema,omitempty"`
Version string `json:"version"`
Author string `json:"author"`
Templates []RemoteTemplate `json:"templates"`
}
type ThemePalette ¶
type ThemePalette struct {
Background string `json:"background" required:"true"`
Foreground string `json:"foreground" required:"true"`
Card string `json:"card" required:"true"`
CardForeground string `json:"card-foreground" required:"true"`
Popover string `json:"popover" required:"true"`
PopoverForeground string `json:"popover-foreground" required:"true"`
Primary string `json:"primary" required:"true"`
PrimaryForeground string `json:"primary-foreground" required:"true"`
Secondary string `json:"secondary" required:"true"`
SecondaryForeground string `json:"secondary-foreground" required:"true"`
Muted string `json:"muted" required:"true"`
MutedForeground string `json:"muted-foreground" required:"true"`
Accent string `json:"accent" required:"true"`
AccentForeground string `json:"accent-foreground" required:"true"`
Border string `json:"border" required:"true"`
Input string `json:"input" required:"true"`
Ring string `json:"ring" required:"true"`
Sidebar string `json:"sidebar" required:"true"`
SidebarForeground string `json:"sidebar-foreground" required:"true"`
SidebarPrimary string `json:"sidebar-primary" required:"true"`
SidebarPrimaryForeground string `json:"sidebar-primary-foreground" required:"true"`
SidebarAccent string `json:"sidebar-accent" required:"true"`
SidebarAccentForeground string `json:"sidebar-accent-foreground" required:"true"`
SidebarBorder string `json:"sidebar-border" required:"true"`
SidebarRing string `json:"sidebar-ring" required:"true"`
Surface string `json:"surface" required:"true"`
GlassShadowColor string `json:"glass-shadow-color" required:"true"`
SyntaxComment string `json:"syntax-comment" required:"true"`
SyntaxKeyword string `json:"syntax-keyword" required:"true"`
SyntaxProperty string `json:"syntax-property" required:"true"`
SyntaxString string `json:"syntax-string" required:"true"`
SyntaxNumber string `json:"syntax-number" required:"true"`
SyntaxOperator string `json:"syntax-operator" required:"true"`
}
type ThreatIntelEntry ¶
type ThreatIntelStatus ¶
type TimeFormat ¶
type TimeFormat string
const ( TimeFormatAuto TimeFormat = "auto" TimeFormat12Hour TimeFormat = "12h" TimeFormat24Hour TimeFormat = "24h" )
type TokenExchangeRequest ¶
type TokenRefreshResponse ¶
type TrivyDataSource ¶
type TrivyLayer ¶
type TrivyMetadata ¶
type TrivyReport ¶
type TrivyReport struct {
ArtifactName string `json:"ArtifactName"`
ArtifactType string `json:"ArtifactType"`
Metadata TrivyMetadata `json:"Metadata"`
Results []TrivyResults `json:"Results"`
SchemaVersion int `json:"SchemaVersion"`
}
type TrivyResults ¶
type TrivyResults struct {
Target string `json:"Target"`
Class string `json:"Class"`
Type string `json:"Type"`
Vulnerabilities []TrivyVulnerability `json:"Vulnerabilities"`
}
type TrivyVulnerability ¶
type TrivyVulnerability struct {
Layer *TrivyLayer `json:"Layer,omitempty"`
DataSource *TrivyDataSource `json:"DataSource,omitempty"`
CVSS map[string]TrivyCVSS `json:"CVSS"`
VulnerabilityID string `json:"VulnerabilityID"`
PkgID string `json:"PkgID"`
PkgName string `json:"PkgName"`
InstalledVersion string `json:"InstalledVersion"`
FixedVersion string `json:"FixedVersion"`
Status string `json:"Status"`
SeveritySource string `json:"SeveritySource"`
PrimaryURL string `json:"PrimaryURL"`
Title string `json:"Title"`
Description string `json:"Description"`
Severity string `json:"Severity"`
PublishedDate string `json:"PublishedDate"`
LastModifiedDate string `json:"LastModifiedDate"`
CweIDs []string `json:"CweIDs"`
References []string `json:"References"`
}
type UnmanagedBackupSweep ¶
type UnmanagedBackupSweep struct {
Now time.Time
SystemVolumePolicyIDs []string
Within []string
Retention time.Duration
}
UnmanagedBackupSweep's Within, when set, limits a recheck to the batch it already locked.
type Update ¶
type Update[T any] struct { Body T SubmittedBody }
type UpdateBackupPolicy ¶
type UpdateBackupPolicy struct {
ID string `json:"id,omitempty"`
Schedule string `json:"schedule"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
RetentionCount int `json:"retentionCount"`
Enabled bool `json:"enabled"`
StopContainers bool `json:"stopContainers,omitempty"`
LocalEnabled bool `json:"localEnabled"`
S3Enabled bool `json:"s3Enabled"`
}
type UpdateProjectTag ¶
type UpdateProjectTag struct {
Name string `json:"name"`
Color ProjectTagColor `json:"color,omitempty"`
Attached bool `json:"attached"`
}
type UpdateProjectTagResponse ¶
type UpdateProjectTagResponse struct {
ActivityID *string `json:"activityId,omitempty"`
Tags []ProjectTag `json:"tags"`
}
type UpdateSystemBackupPolicies ¶
type UpdateSystemBackupPolicies struct {
Policies []UpdateBackupPolicy `json:"policies"`
}
type UpdateSystemVolumeBackupPolicies ¶
type UpdateSystemVolumeBackupPolicies struct {
Policies []UpdateSystemVolumeBackupPolicy `json:"policies"`
}
type UpdateSystemVolumeBackupPolicy ¶
type UpdateSystemVolumeBackupPolicy struct {
SelectionMode SystemVolumeSelectionMode `json:"selectionMode"`
VolumeNames []string `json:"volumeNames"`
UpdateBackupPolicy
IgnoreAnonymous bool `json:"ignoreAnonymous"`
}
type UpdateVolumeBackupPolicies ¶
type UpdateVolumeBackupPolicies struct {
Policies []UpdateBackupPolicy `json:"policies"`
}
type UpdaterOptions ¶
type UpdaterResourceResult ¶
type UpdaterResourceResult struct {
OldImages map[string]string `json:"oldImages,omitempty"`
NewImages map[string]string `json:"newImages,omitempty"`
Details map[string]any `json:"details,omitempty"`
ResourceID string `json:"resourceId"`
ResourceName string `json:"resourceName,omitempty"`
ResourceType string `json:"resourceType"`
Status string `json:"status"`
Error string `json:"error,omitempty"`
UpdateAvailable bool `json:"updateAvailable,omitempty"`
UpdateApplied bool `json:"updateApplied,omitempty"`
}
type UpdaterResult ¶
type UpdaterResult struct {
ActivityID *string `json:"activityId,omitempty"`
StartTime string `json:"startTime,omitempty"`
EndTime string `json:"endTime,omitempty"`
Duration string `json:"duration"`
Items []UpdaterResourceResult `json:"items"`
Checked int `json:"checked"`
Updated int `json:"updated"`
Restarted int `json:"restarted,omitempty"`
Skipped int `json:"skipped"`
Failed int `json:"failed"`
Success bool `json:"success,omitempty"`
}
type UpdaterStatus ¶
type UpgradeCheckResult ¶
type UpgradeJob ¶
type UpgradeJob struct {
CreatedAt time.Time `json:"createdAt" sortable:"true"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
Error *string `json:"error,omitempty"`
CompletedAt *time.Time `json:"completedAt,omitempty"`
ID string `json:"id"`
Status string `json:"status"`
UserID string `json:"userId"`
Username string `json:"username"`
ManagerVersionAtStart string `json:"managerVersionAtStart"`
ManagerDigestAtStart string `json:"managerDigestAtStart"`
ManagerTargetVersion string `json:"managerTargetVersion"`
Results []UpgradeJobResult `json:"results,omitempty"`
}
type UpgradeJobResult ¶
type UpgradeJobResult struct {
StageStartedAt *time.Time `json:"stageStartedAt,omitempty"`
EnvironmentID string `json:"environmentId"`
EnvironmentName string `json:"environmentName"`
Status string `json:"status"`
FromVersion string `json:"fromVersion,omitempty"`
FromDigest string `json:"fromDigest,omitempty"`
ToVersion string `json:"toVersion,omitempty"`
Stage string `json:"stage,omitempty"`
Error string `json:"error,omitempty"`
Logs []string `json:"logs,omitempty"`
Percent int `json:"percent"`
}
type UpgradeProgressEvent ¶
type UpgradeProgressEvent struct {
At time.Time `json:"at"`
Type string `json:"type" enum:"stage,progress,log,done"`
Message string `json:"message,omitempty"`
FromVersion string `json:"fromVersion,omitempty"`
ToVersion string `json:"toVersion,omitempty"`
Percent int `json:"percent"`
Replay bool `json:"replay,omitempty"`
}
type UploadConsumeRequest ¶
type UploadConsumeRequest struct {
UploadID string `json:"uploadId" required:"true" doc:"ID of a complete upload session"`
}
type UploadSession ¶
type UploadSession struct {
CreatedAt time.Time `json:"createdAt"`
ID string `json:"id"`
Kind string `json:"kind"`
Filename string `json:"filename"`
ReceivedChunks []int `json:"receivedChunks"`
Size int64 `json:"size"`
ChunkSize int64 `json:"chunkSize"`
TotalChunks int `json:"totalChunks"`
Complete bool `json:"complete"`
}
type UploadVolumeBackupRequest ¶
type UploadVolumeBackupRequest struct {
S3DestinationID string `json:"s3DestinationId" doc:"S3 destination for the uploaded backup"`
}
type User ¶
type User struct {
FontSize *int `json:"fontSize,omitempty" minimum:"12" maximum:"20" doc:"Preferred root UI font size in px" example:"14"`
DisplayName *string `json:"displayName,omitempty" maxLength:"255" doc:"Display name of the user" example:"John Doe" unorm:"nfc" trim:"true"`
Email *string `json:"email,omitempty" doc:"Email address of the user" example:"john@example.com"`
AvatarURL *string `` /* 134-byte string literal not displayed */
BackdropURL *string `json:"backdropUrl,omitempty" readOnly:"true" doc:"URL to the user's uploaded background image; omitted when none is uploaded"`
OidcSubjectId *string `json:"oidcSubjectId,omitempty" readOnly:"true" doc:"OIDC subject identifier for SSO users"`
Locale *string `json:"locale,omitempty" doc:"Locale preference of the user" example:"en-US"`
LastLogin *string `` /* 139-byte string literal not displayed */
PermissionsByEnv map[string][]string `` /* 140-byte string literal not displayed */
Preferences UserPreferences `json:"preferences" required:"false" doc:"Personal display and UI preferences"`
ID string `json:"id" readOnly:"true" doc:"Unique identifier of the user" example:"550e8400-e29b-41d4-a716-446655440000"`
Username string `` /* 138-byte string literal not displayed */
Password string `json:"password,omitempty" writeOnly:"true" minLength:"8" doc:"Password of the user; never returned"`
TimeFormat TimeFormat `json:"timeFormat" required:"false" enum:"auto,12h,24h" doc:"Preferred time display format" example:"auto"`
CreatedAt string `json:"createdAt,omitempty" readOnly:"true" doc:"Date and time when the user was created"`
UpdatedAt string `json:"updatedAt,omitempty" readOnly:"true" doc:"Date and time when the user was last updated"`
RoleAssignments []RoleAssignmentSummary `json:"roleAssignments" readOnly:"true" doc:"Role assignments held by the user"`
IsGlobalAdmin bool `json:"isGlobalAdmin" readOnly:"true" doc:"Whether the user effectively holds global administrator access"`
CanDelete bool `json:"canDelete" readOnly:"true" doc:"Whether the user can currently be deleted"`
RequiresPasswordChange bool `json:"requiresPasswordChange" readOnly:"true" doc:"Whether the user must change their password"`
}
type UserPreferences ¶
type UserPreferences struct {
ThemeMode *string `json:"themeMode,omitempty" enum:"light,dark,system" doc:"Light/dark mode preference"`
ApplicationTheme *string `json:"applicationTheme,omitempty" pattern:"^[a-z0-9-]{1,48}$" doc:"Theme preset or custom theme ID"`
AccentColor *string `json:"accentColor,omitempty" doc:"Primary accent color, or 'default'"`
IconCatalog *string `json:"iconCatalog,omitempty" enum:"selfhst,dashboard-icons" doc:"Catalog used to resolve project and container icon slugs"`
OledMode *bool `json:"oledMode,omitempty" doc:"Use true-black backgrounds in dark mode"`
GlassEffectsEnabled *bool `json:"glassEffectsEnabled,omitempty" doc:"Apply blur and glass effects to UI surfaces"`
AnimationsEnabled *bool `json:"animationsEnabled,omitempty" doc:"Enable decorative interface animations"`
KeyboardShortcutsEnabled *bool `json:"keyboardShortcutsEnabled,omitempty" doc:"Enable keyboard shortcuts and shortcut hints"`
DefaultLandingPage *string `json:"defaultLandingPage,omitempty" doc:"Route opened after signing in"`
DefaultProjectEditorLayout *string `` /* 143-byte string literal not displayed */
EditorTabWidth *int `json:"editorTabWidth,omitempty" enum:"2,4,8" doc:"Spaces per indentation level in code editors and when formatting documents"`
ToastPosition *string `` /* 145-byte string literal not displayed */
// A pointer so the merge-only preferences update replaces the whole map.
EnvironmentColors *map[string]string `json:"environmentColors,omitempty" doc:"Environment label color by environment ID"`
EnvironmentLabelStyle *string `json:"environmentLabelStyle,omitempty" enum:"name,dot" doc:"How resource lists label environments"`
DashboardLayout *[]DashboardWidgetLayout `json:"dashboardLayout,omitempty" doc:"Dashboard widgets with their grid position, size, and visibility"`
CustomThemes *[]CustomTheme `json:"customThemes,omitempty" maxItems:"20" doc:"Imported custom color themes"`
InterfaceFont *string `` /* 147-byte string literal not displayed */
MonospaceFont *string `` /* 147-byte string literal not displayed */
CodeFont *string `` /* 139-byte string literal not displayed */
Backdrop *string `` /* 127-byte string literal not displayed */
BackdropDim *int `json:"backdropDim,omitempty" minimum:"0" maximum:"80" doc:"Percent the background image is darkened in dark mode"`
}
type UserRoleAssignmentInput ¶
type VersionCheck ¶
type VersionInfo ¶
type VersionInfo struct {
CurrentVersion string `json:"currentVersion"`
CurrentTag string `json:"currentTag,omitempty"`
CurrentDigest string `json:"currentDigest,omitempty"`
Revision string `json:"revision"`
ShortRevision string `json:"shortRevision"`
GoVersion string `json:"goVersion"`
NodeVersion string `json:"nodeVersion"`
SvelteKitVersion string `json:"svelteKitVersion"`
BuildTime string `json:"buildTime,omitempty"`
DisplayVersion string `json:"displayVersion"`
NewestVersion string `json:"newestVersion,omitempty"`
NewestDigest string `json:"newestDigest,omitempty"`
ReleaseURL string `json:"releaseUrl,omitempty"`
ReleaseNotes string `json:"releaseNotes,omitempty"`
ReleasedAt string `json:"releasedAt,omitempty"`
EnabledFeatures []string `json:"enabledFeatures,omitempty"`
IsSemverVersion bool `json:"isSemverVersion"`
IsStableVersion bool `json:"isStableVersion"`
UpdateAvailable bool `json:"updateAvailable"`
}
func (*VersionInfo) AlreadyOnNewest ¶
func (i *VersionInfo) AlreadyOnNewest() bool
type VersionStreamEvent ¶
type VersionStreamEvent struct {
Timestamp time.Time `json:"timestamp"`
Info *VersionInfo `json:"info,omitempty"`
Type string `json:"type"`
}
type Volume ¶
type Volume struct {
Options map[string]string `json:"options" required:"false"`
Labels map[string]string `json:"labels" required:"false"`
UsageData *volume.UsageData `json:"usageData,omitempty" readOnly:"true"`
ActivityID *string `json:"activityId,omitempty" readOnly:"true"`
EnvironmentTag
ID string `json:"id" readOnly:"true"`
Name string `json:"name" required:"false"`
Driver string `json:"driver" required:"false"`
Mountpoint string `json:"mountpoint" readOnly:"true"`
Scope string `json:"scope" readOnly:"true"`
CreatedAt string `json:"createdAt" readOnly:"true"`
Containers []string `json:"containers" readOnly:"true"`
Size int64 `json:"size" readOnly:"true"`
InUse bool `json:"inUse" readOnly:"true"`
}
type VolumeBackup ¶
type VolumeBackup struct {
CreatedAt time.Time `json:"createdAt"`
UpdatedAt *time.Time `json:"updatedAt,omitempty"`
ActivityID *string `json:"activityId,omitempty"`
RemoteAvailable *bool `json:"remoteAvailable,omitempty"`
ID string `json:"id"`
VolumeName string `json:"volumeName"`
Status string `json:"status"`
Trigger string `json:"trigger"`
Destination VolumeBackupDestination `json:"destination"`
Format VolumeBackupFormat `json:"format"`
LocalSnapshotID string `json:"localSnapshotId,omitempty"`
RemoteSnapshotID string `json:"remoteSnapshotId,omitempty"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
RemoteInstanceID string `json:"remoteInstanceId,omitempty"`
S3DestinationName string `json:"s3DestinationName,omitempty"`
PolicyID string `json:"policyId,omitempty"`
Error string `json:"error,omitempty"`
Type BackupManagementType `json:"type"`
Size int64 `json:"size"`
}
func (*VolumeBackup) Entry ¶
func (b *VolumeBackup) Entry() VolumeBackupEntry
type VolumeBackupDestination ¶
type VolumeBackupDestination string
type VolumeBackupEntry ¶
type VolumeBackupEntry struct {
RemoteAvailable *bool `json:"remoteAvailable,omitempty"`
ActivityID *string `json:"activityId,omitempty"`
ID string `json:"id" doc:"Unique identifier of the backup"`
VolumeName string `json:"volumeName" doc:"Name of the volume"`
CreatedAt string `json:"createdAt" doc:"When the backup was created"`
Status string `json:"status" doc:"Backup result status"`
Trigger string `json:"trigger" doc:"How the backup was started"`
Destination VolumeBackupDestination `json:"destination" doc:"Requested backup storage target"`
Format VolumeBackupFormat `json:"format" doc:"Storage format of the backup: legacy tar.gz archive or Rustic snapshot"`
LocalSnapshotID string `json:"localSnapshotId,omitempty" doc:"Snapshot ID in the local Rustic repository"`
RemoteSnapshotID string `json:"remoteSnapshotId,omitempty" doc:"Snapshot ID in the S3 Rustic repository"`
S3DestinationID string `json:"s3DestinationId,omitempty" doc:"S3 destination used by the backup"`
S3DestinationName string `json:"s3DestinationName,omitempty" doc:"Name of the S3 destination used by the backup"`
PolicyID string `json:"policyId,omitempty" doc:"Backup policy that created the backup"`
Error string `json:"error,omitempty" doc:"Backup error when the run failed"`
Type BackupManagementType `json:"type" doc:"Whether the backup was system-managed or volume-managed"`
Size int64 `json:"size" doc:"Total size of the backup contents"`
}
type VolumeBackupFormat ¶
type VolumeBackupFormat string
type VolumeBackupPolicy ¶
type VolumeBackupPolicy struct {
LastRun *VolumeBackupEntry `json:"lastRun,omitempty"`
ID string `json:"id"`
VolumeName string `json:"volumeName"`
Schedule string `json:"schedule"`
S3DestinationID string `json:"s3DestinationId,omitempty"`
S3DestinationName string `json:"s3DestinationName,omitempty"`
S3Bucket string `json:"s3Bucket,omitempty"`
RetentionCount int `json:"retentionCount"`
Enabled bool `json:"enabled"`
StopContainers bool `json:"stopContainers"`
LocalEnabled bool `json:"localEnabled"`
S3Enabled bool `json:"s3Enabled"`
S3Available bool `json:"s3Available"`
}
type VolumeBackupPolicyCollection ¶
type VolumeBackupPolicyCollection struct {
Policies []VolumeBackupPolicy `json:"policies"`
S3Available bool `json:"s3Available"`
}
type VolumeJournalSource ¶
type VolumeJournalSource interface {
JournalVolumes() []VolumeJournalVolume
}
type VolumeJournalVolume ¶
type VolumeMigration ¶
type VolumePruneReport ¶
type VolumeRename ¶
type VolumeRename struct {
Name string `json:"name" minLength:"1" doc:"New volume name"`
}
type VolumeRenameCommitter ¶
type VolumeRenameEntry ¶
type VolumeSourcePathMapper ¶
type VolumeUsageCounts ¶
type VolumeWorkspaceFileChange ¶
type VolumeWorkspaceFileChange struct {
Operation string `json:"operation" binding:"required" enum:"create_file,create_folder,update_file,rename,move,delete,restore_file"`
RelativePath string `json:"relativePath" binding:"required"`
NewName string `json:"newName,omitempty"`
NewParentPath string `json:"newParentPath,omitempty"`
UploadIndex *int `json:"uploadIndex,omitempty" minimum:"0"`
BaselineIndex *int `json:"baselineIndex,omitempty" minimum:"0"`
BackupID string `json:"backupId,omitempty"`
Recursive bool `json:"recursive,omitempty"`
}
type VolumeWorkspaceUpdateManifest ¶
type VolumeWorkspaceUpdateManifest struct {
FileChanges []VolumeWorkspaceFileChange `json:"fileChanges" binding:"required" minItems:"1" maxItems:"500"`
}
type VolumesExternallyRemovedError ¶
type VolumesExternallyRemovedError struct {
Volumes []VolumeJournalVolume
}
func (*VolumesExternallyRemovedError) Error ¶
func (e *VolumesExternallyRemovedError) Error() string
type Vulnerability ¶
type Vulnerability struct {
CVSS *CVSSInfo `json:"cvss,omitempty"`
PublishedDate *time.Time `json:"publishedDate,omitempty"`
LastModifiedDate *time.Time `json:"lastModifiedDate,omitempty"`
VulnerabilityID string `json:"vulnerabilityId"`
PkgName string `json:"pkgName"`
InstalledVersion string `json:"installedVersion"`
FixedVersion string `json:"fixedVersion,omitempty"`
Severity VulnerabilitySeverity `json:"severity"`
Class string `json:"class,omitempty"`
Type string `json:"type,omitempty"`
Title string `json:"title,omitempty"`
Description string `json:"description,omitempty"`
References []string `json:"references,omitempty"`
}
type VulnerabilityBulkIgnoreResponse ¶
type VulnerabilityBulkIgnoreResponse struct {
AffectedCount int `json:"affectedCount"`
}
type VulnerabilityPackageInsight ¶
type VulnerabilityPackageInsight struct {
PkgName string `json:"pkgName"`
Severity VulnerabilitySeverity `json:"severity"`
InstalledVersion string `json:"installedVersion"`
FixedVersion string `json:"fixedVersion,omitempty"`
Count int `json:"count"`
}
type VulnerabilityPatchPriority ¶
type VulnerabilityPatchPriority struct {
RiskBand RiskBand `json:"riskBand"`
ScoreStatus VulnerabilityScoreStatus `json:"scoreStatus"`
RiskScore int `json:"riskScore"`
}
type VulnerabilityScanInsights ¶
type VulnerabilityScanInsights struct {
VulnerabilityPatchPriority
HighestVulnerabilityID string `json:"highestVulnerabilityId,omitempty"`
Exposure ImageExposure `json:"exposure"`
TopPackages []VulnerabilityPackageInsight `json:"topPackages"`
HighestCVSS float64 `json:"highestCvss"`
FixableCount int `json:"fixableCount"`
KnownExploitedCount int `json:"knownExploitedCount"`
}
type VulnerabilityScanPhase ¶
type VulnerabilityScanPhase string
type VulnerabilityScanResult ¶
type VulnerabilityScanResult struct {
ScanTime time.Time `json:"scanTime"`
ActivityID *string `json:"activityId,omitempty"`
Summary *VulnerabilitySeveritySummary `json:"summary,omitempty"`
Insights *VulnerabilityScanInsights `json:"insights,omitempty"`
ImageID string `json:"imageId"`
ImageName string `json:"imageName"`
Status VulnerabilityScanStatus `json:"status"`
ScanPhase VulnerabilityScanPhase `json:"scanPhase,omitempty"`
Error string `json:"error,omitempty"`
ScannerVersion string `json:"scannerVersion,omitempty"`
Vulnerabilities []Vulnerability `json:"vulnerabilities,omitempty"`
Duration int64 `json:"duration,omitempty"`
HasReport bool `json:"hasReport,omitempty"`
}
func ConvertTrivyReportToScanResult ¶
func ConvertTrivyReportToScanResult(report *TrivyReport, imageID string, scanTime time.Time, duration int64) *VulnerabilityScanResult
type VulnerabilityScanStatus ¶
type VulnerabilityScanStatus string
type VulnerabilityScanSummariesRequest ¶
type VulnerabilityScanSummariesRequest struct {
ImageIDs []string `json:"imageIds"`
}
type VulnerabilityScanSummariesResponse ¶
type VulnerabilityScanSummariesResponse struct {
Summaries map[string]*VulnerabilityScanSummary `json:"summaries"`
}
type VulnerabilityScanSummary ¶
type VulnerabilityScanSummary struct {
ImageID string `json:"imageId"`
ScanTime time.Time `json:"scanTime"`
Status VulnerabilityScanStatus `json:"status"`
ScanPhase VulnerabilityScanPhase `json:"scanPhase,omitempty"`
Summary *VulnerabilitySeveritySummary `json:"summary,omitempty"`
Error string `json:"error,omitempty"`
}
type VulnerabilityScoreStatus ¶
type VulnerabilityScoreStatus string
type VulnerabilitySeverity ¶
type VulnerabilitySeverity string
type VulnerabilityWithImage ¶
type VulnerabilityWithImage struct {
EnvironmentTag
IgnoreID string `json:"ignoreId,omitempty"`
ImageID string `json:"imageId"`
ImageName string `json:"imageName"`
Vulnerability
Ignored bool `json:"ignored,omitempty"`
}
type WebSocketConnectionInfo ¶
type WebSocketConnectionInfo struct {
StartedAt time.Time `json:"startedAt"`
ID string `json:"id"`
Kind string `json:"kind"`
EnvID string `json:"envId,omitempty"`
ResourceID string `json:"resourceId,omitempty"`
ClientIP string `json:"clientIp,omitempty"`
UserID string `json:"userId,omitempty"`
UserAgent string `json:"userAgent,omitempty"`
}
type WebSocketDiagnostics ¶
type WebSocketDiagnostics struct {
Connections []WebSocketConnectionInfo `json:"connections"`
Snapshot WebSocketMetricsSnapshot `json:"snapshot"`
}
type WebSocketMetricsSnapshot ¶
type WebSocketMetricsSnapshot struct {
ProjectLogsActive int64 `json:"projectLogsActive"`
ContainerLogsActive int64 `json:"containerLogsActive"`
ContainerStats int64 `json:"containerStats"`
ContainerExec int64 `json:"containerExec"`
SystemStats int64 `json:"systemStats"`
DiagnosticsActive int64 `json:"diagnosticsActive"`
ServiceLogsActive int64 `json:"serviceLogsActive"`
}
type Webhook ¶
type Webhook struct {
CreatedAt time.Time `json:"createdAt" readOnly:"true" doc:"Creation timestamp"`
LastTriggeredAt *time.Time `json:"lastTriggeredAt,omitempty" readOnly:"true" doc:"Timestamp of last successful trigger"`
EnvironmentTag
ID string `json:"id" readOnly:"true" doc:"Webhook ID"`
Name string `json:"name" required:"false" minLength:"1" maxLength:"255" doc:"Human-readable name for this webhook" unorm:"nfc" trim:"true"`
TokenPrefix string `json:"tokenPrefix" readOnly:"true" doc:"Masked token prefix for identification"`
TargetType string `` /* 163-byte string literal not displayed */
ActionType string `` /* 153-byte string literal not displayed */
TargetID string `` /* 129-byte string literal not displayed */
TargetName string `json:"targetName,omitempty" readOnly:"true" doc:"Resolved target resource name when available"`
Enabled bool `json:"enabled" required:"false" doc:"Whether the webhook is active"`
}
type WebhookCreated ¶
type WebhookCreated struct {
CreatedAt time.Time `json:"createdAt" doc:"Creation timestamp"`
ID string `json:"id" doc:"Webhook ID"`
Name string `json:"name" doc:"Webhook name"`
Token string `json:"token" doc:"Full webhook token — store this securely, it will not be shown again"`
TargetType string `json:"targetType" doc:"Target type"`
ActionType string `json:"actionType" doc:"Action type"`
TargetID string `json:"targetId" doc:"Target resource ID"`
}
type WorkerController ¶
type Workspace ¶
type Workspace struct {
ActivityID *string `json:"activityId,omitempty"`
FileTreeRevision string `json:"fileTreeRevision"`
Files []WorkspaceFileEntry `json:"files"`
FileTreeTruncated bool `json:"fileTreeTruncated"`
}
type WorkspaceFileChange ¶
type WorkspaceFileChange struct {
UploadIndex *int `json:"uploadIndex,omitempty" minimum:"0"`
BaselineIndex *int `json:"baselineIndex,omitempty" minimum:"0"`
Operation string `json:"operation" binding:"required" enum:"create_file,create_folder,update_file,rename,move,delete"`
RelativePath string `json:"relativePath" binding:"required"`
NewName string `json:"newName,omitempty"`
NewParentPath string `json:"newParentPath,omitempty"`
Recursive bool `json:"recursive,omitempty"`
}
type WorkspaceFileContent ¶
type WorkspaceFileContent struct {
Path string `json:"path"`
RelativePath string `json:"relativePath"`
Name string `json:"name"`
Content string `json:"content,omitempty"`
MimeType string `json:"mimeType"`
ReadOnlyReason string `json:"readOnlyReason,omitempty" enum:"binary,too_large,symlink,special,gitops_managed"`
Size int64 `json:"size"`
Editable bool `json:"editable"`
}
type WorkspaceFileEntry ¶
type WorkspaceFileEntry struct {
ModTime time.Time `json:"modTime" doc:"Last modification time"`
Name string `json:"name" doc:"Name of the file or directory"`
Path string `json:"path" doc:"Full path to the file"`
RelativePath string `json:"relativePath" doc:"Path relative to the workspace root"`
Mode string `json:"mode,omitempty" doc:"File mode/permissions"`
LinkTarget string `json:"linkTarget,omitempty" doc:"Target of the symbolic link"`
ReadOnlyReason string `json:"readOnlyReason,omitempty" enum:"binary,too_large,symlink,special,gitops_managed"`
Size int64 `json:"size" doc:"Size of the file in bytes"`
IsDirectory bool `json:"isDirectory" doc:"Whether this entry is a directory"`
IsSymlink bool `json:"isSymlink" doc:"Whether this entry is a symbolic link"`
Editable bool `json:"editable" doc:"Whether this entry can be edited"`
}
type WorkspaceUpdateManifest ¶
type WorkspaceUpdateManifest struct {
FileTreeRevision string `json:"fileTreeRevision" binding:"required"`
FileChanges []WorkspaceFileChange `json:"fileChanges" binding:"required" minItems:"1" maxItems:"500"`
}
type WorkspaceUploadRequest ¶
Source Files
¶
- activity.go
- apikey.go
- apns.go
- auth.go
- backup.go
- base.go
- category.go
- container.go
- containerregistry.go
- dashboard.go
- dockerinfo.go
- enrollment.go
- env.go
- environment.go
- event.go
- features.go
- federated.go
- gitops.go
- image.go
- imagepatch.go
- imageupdate.go
- jobschedule.go
- lifecycle.go
- logs.go
- meta.go
- network.go
- notification.go
- podman.go
- port.go
- project.go
- recovery.go
- role.go
- scheduler.go
- search.go
- settings.go
- stream.go
- swarm.go
- system.go
- template.go
- updater.go
- upload.go
- user.go
- version.go
- volume.go
- vulnerability.go
- webhook.go
- workspace.go