errors.go RawHistoryFolder
1package domain
2
3import "errors"
4
5// Domain errors represent business-level errors that can occur in the system.
6// These errors are used across layers to communicate specific failure conditions.
7var (
8 // Container errors
9 ErrContainerNotFound = errors.New("container not found")
10 ErrContainerExists = errors.New("container already exists")
11 ErrContainerNotRunning = errors.New("container is not running")
12 ErrContainerRunning = errors.New("container is already running")
13 ErrContainerExited = errors.New("container exited")
14
15 // Image errors
16 ErrImageNotFound = errors.New("image not found")
17 ErrImagePullFailed = errors.New("failed to pull image")
18 ErrInvalidImageFormat = errors.New("invalid image format")
19
20 // Route errors
21 ErrRouteNotFound = errors.New("route not found")
22 ErrRouteExists = errors.New("route already exists")
23 ErrInvalidRoute = errors.New("invalid route configuration")
24 ErrRouteDomainEmpty = errors.New("route domain cannot be empty")
25 ErrRouteImageEmpty = errors.New("route image cannot be empty")
26 ErrNoTargetAvailable = errors.New("no target available for route")
27
28 // Registry errors
29 ErrManifestNotFound = errors.New("manifest not found")
30 ErrBlobNotFound = errors.New("blob not found")
31 ErrUploadNotFound = errors.New("upload not found")
32 ErrInvalidDigest = errors.New("invalid digest")
33 ErrDigestMismatch = errors.New("digest mismatch")
34 ErrUnauthorized = errors.New("unauthorized")
35
36 // Network errors
37 ErrNetworkNotFound = errors.New("network not found")
38 ErrNetworkExists = errors.New("network already exists")
39
40 // Volume errors
41 ErrVolumeNotFound = errors.New("volume not found")
42 ErrVolumeExists = errors.New("volume already exists")
43
44 // Preview errors
45 ErrPreviewNotFound = errors.New("preview not found")
46
47 // Config errors
48 ErrConfigNotFound = errors.New("configuration not found")
49 ErrInvalidConfig = errors.New("invalid configuration")
50 ErrConfigLoadFailed = errors.New("failed to load configuration")
51 ErrInvalidDomainPattern = errors.New("invalid domain pattern")
52
53 // Environment errors
54 ErrEnvFileNotFound = errors.New("environment file not found")
55 ErrSecretNotFound = errors.New("secret not found")
56 ErrProviderNotFound = errors.New("secret provider not found")
57 ErrInvalidContainerName = errors.New("invalid container name")
58
59 // Authentication errors
60 ErrInvalidToken = errors.New("invalid token")
61 ErrExpiredToken = errors.New("token has expired")
62 ErrRevokedToken = errors.New("token has been revoked")
63 ErrInvalidCredentials = errors.New("invalid credentials")
64 ErrTokenNotFound = errors.New("token not found")
65
66 // Security errors
67 ErrPathTraversal = errors.New("path traversal not allowed")
68 ErrInvalidPath = errors.New("invalid path format")
69 ErrInsufficientScope = errors.New("insufficient scope for operation")
70 ErrInvalidScope = errors.New("invalid scope format")
71 ErrSSRFBlocked = errors.New("request to internal/blocked network not allowed")
72 ErrInvalidEnvKey = errors.New("invalid environment variable key")
73 ErrLongLivedToken = errors.New("long-lived tokens must be exchanged via /auth/token")
74
75 // Remote errors
76 ErrEmptyRemoteName = errors.New("remote name must not be empty")
77 ErrInvalidRemoteNameChar = errors.New("remote name contains invalid characters")
78 ErrConsecutiveDots = errors.New("remote name must not contain consecutive dots")
79 ErrPassUnavailable = errors.New("pass is not available")
80 ErrRemoteNotFound = errors.New("remote not found")
81
82 // Attachment errors
83 ErrAttachmentNotFound = errors.New("attachment not found")
84 ErrAttachmentExists = errors.New("attachment already exists")
85 ErrAttachmentImageEmpty = errors.New("attachment image cannot be empty")
86 ErrAttachmentTargetEmpty = errors.New("attachment target (domain or group) cannot be empty")
87 ErrAttachmentNotDeployed = errors.New("configured attachment is not deployed; run gordon deploy to create it")
88)