1using System.ComponentModel;
16 [Description(
"An internal server error occurred!")]
22 [Description(
"API version mismatch!")]
28 [Description(
"The request body was malformed!")]
34 [Description(
"An IO error occurred during the operation!")]
40 [Description(
"A header validation error occurred!")]
46 [Description(
"Cannot generate a bearer token using a bearer token!")]
52 [Description(
"The operation could not be performed as it would violate database integrity. Please retry the request, making sure to not duplicate field names with existing entities!")]
58 [Description(
"Functionality is unavailable due to a missing host watchdog component! This should NOT be seen in a production environment!")]
64 [Description($
"Cannot downgrade to {Constants.CanonicalPackageName} major version <4!")]
70 [Description(
"A required remote API request returned an error!")]
76 [Description(
"A server update was requested while another was in progress!")]
82 [Description(
"Can only change the capitalization of a user's name!")]
88 [Description(
"Cannot change a user's systemIdentifier!")]
94 [Description(
"A user cannot have both a name and systemIdentifier!")]
100 [Description(
"A user cannot have both a password and systemIdentifier!")]
106 [Description(
"The given password is less than the server's configured minimum password length!")]
112 [Description(
"User names cannot contain the ':' character!")]
118 [Description(
"User's name is missing or invalid whitespace!")]
124 [Description(
"Cannot relocate an instance while it is online!")]
130 [Description(
"The instance cannot be placed at the given path because it is not empty!")]
136 [Description(
"Cannot detach an instance while it is online!")]
142 [Description(
"The instance cannot be placed at the given path because it is a child of an existing instance or the server installation directory!")]
148 [Description(
"The instance cannot be created because the configured limit has been reached!")]
154 [Description(
"Instance names and paths cannot be whitespace!")]
160 [Description(
"The request path requires the 'Instance' header to be set!")]
166 [Description(
"This operation requires POSIX system identities to be implemented. See https://github.com/tgstation/tgstation-server/issues/709 for details.")]
172 [Description(
"This existing file hash does not match, the file has beeen updated!")]
178 [Description(
"The directory cannot be deleted because it is not empty!")]
184 [Description(
"The server swarm has less than the expected amount of nodes!")]
190 [Description(
"Either both accessUser and accessToken must be set or neither!")]
196 [Description(
"The repository is busy being cloned!")]
202 [Description(
"The repository is busy with another operation!")]
208 [Description(
"The repository already exists!")]
214 [Description(
"The repository does not exist and must be cloned!")]
220 [Description(
"Cannot checkoutSha and set reference at the same time!")]
226 [Description(
"Cannot checkoutSha and updateFromOrigin at the same time!")]
232 [Description(
"Could not delete engine version due to it being selected as the instance's active version.")]
238 [Description(
"The same test merge was present more than once or is already merged!")]
244 [Description(
"committerName cannot be whitespace!")]
250 [Description(
"committerEmail cannot be whitespace!")]
256 [Description(
"Requested pageSize is too large!")]
262 [Description(
"Cannot request page or pageSize <= 0.")]
268 [Description(
"One or more of the channels for one or more of the provided chat bots do not have the correct channel data for their provider!")]
274 [Description(
"A chat bot's connection string cannot be whitespace!")]
280 [Description(
"A chat bot's name cannot be whitespace!")]
286 [Description(
"Missing chat bot provider!")]
292 [Description(
"IO operation could not start contended access to the instance's configuration directory!")]
298 [Description(
"Performing this operation would violate the instance's configured chatBotLimit!")]
304 [Description(
"Set amount of chatChannels exceeds the configured channelLimit!")]
310 [Description(
"Unable to start DirectX installer process! Is the server running with admin privileges?")]
316 [Description(
"Error downloading specified engine version!")]
322 [Description(
"Could not acquire lock on engine installation as none exist!")]
328 [Description(
"DMAPI validation failed! See FAQ at https://github.com/tgstation/tgstation-server/discussions/1695")]
334 [Description(
"The DMAPI sent an invalid validation request!")]
340 [Description(
"This user is passwordless and removing their oAuthConnections would leave them with no authentication method!")]
346 [Description(
"No .dme configured and could not automatically detect one!")]
352 [Description(
"Could not load configured .dme!")]
358 [Description(
"Compiler exited with a non-zero exit code!")]
364 [Description(
"There is already a deployment operation in progress!")]
370 [Description(
"Could not retrieve DreamDaemon settings from the database!")]
376 [Description(
"Could not retrieve DreamMaker settings from the database!")]
382 [Description(
"Could not retrieve Repository settings from the database!")]
388 [Description(
"Performing this automatic update as a merge would result in conficts. Aborting!")]
394 [Description(
"Git credentials are required for this operation!")]
400 [Description(
"The remote is requesting authentication, but is not allowing credentials to be received!")]
406 [Description(
"This git operation requires the repository HEAD to currently be on a tracked reference!")]
412 [Description(
"The watchdog is already running!")]
418 [Description(
"Cannot launch active compile job as it is missing or corrupted!")]
424 [Description(
"Game server failed to start!")]
430 [Description(
"Game server failed to start within the configured timeout!")]
436 [Description(
"Test merging with the current remote is not supported!")]
442 [Description(
"The value set for checkoutSha or reference should be in the other field!")]
448 [Description(
"A merge conflict occurred while performing the operation!")]
454 [Description(
"The repository's current reference is unsuitable for this operation as it does not track a remote reference!")]
460 [Description(
"Encountered merge conflicts while test merging one or more sources!")]
466 [Description(
"The new instance's path is not under a white-listed path.")]
472 [Description(
"Cannot set both softShutdown and softReboot at once!")]
478 [Description(
"Cannot start DreamDaemon headless with the BYOND pager running!")]
484 [Description(
"Could not bind to requested game server port! Is there another service running on that port?")]
490 [Description(
"The deployment succeeded but one or more notification events failed!")]
496 [Description(
"Cannot restart the watchdog as it is not running!")]
502 [Description(
"The requested resource is not currently present, but may have been in the past.")]
508 [Description(
"The requested resource is not present and never has been.")]
514 [Description(
"A required GitHub API call failed due to rate limiting.")]
520 [Description(
"Cannot cancel the job as it is no longer running.")]
526 [Description(
"Attempted to create a process dump but /usr/bin/gcore could not be located!")]
532 [Description(
"Could not create dump as gcore exited with a non-zero exit code!")]
538 [Description(
"Test merging cannot be performed with this remote!")]
544 [Description(
"Cannot switch to requested custom engine version as it is not currently installed.")]
550 [Description(
"Cannot perform this operation as the game server is not currently running!")]
556 [Description(
"The instance associated with the operation is currently offline!")]
562 [Description(
"Failed to connect chat bot!")]
568 [Description(
"Failed to allow game server through the Windows firewall!")]
574 [Description(
"TGS was unable to find a free port to allocate for the operation!")]
580 [Description(
"The requested port is either already in use by TGS or could not be allocated!")]
586 [Description(
"The admin user cannot use OAuth connections!")]
592 [Description(
"The requested OAuth provider is disabled via configuration!")]
598 [Description(
"The job did not receive a required upload before timing out!")]
604 [Description(
"A user may not have both a permissionSet and group!")]
610 [Description(
"Cannot delete the user group as it is not empty!")]
616 [Description(
"The user cannot be created because the configured limit has been reached!")]
622 [Description(
"The user group cannot be created because the configured limit has been reached!")]
628 [Description(
"The deployment took longer than the configured timeout!")]
634 [Description(
"Could not send broadcast to the DMAPI. This can happen either due to there being an insufficient DMAPI version, a communication failure, or the server being offline.")]
640 [Description(
"OpenDream could not be compiled due to being unable to locate the dotnet executable!")]
646 [Description(
"The specified OpenDream version is too old!")]
652 [Description(
"Could not create dump as dotnet diagnostics threw an exception!")]
658 [Description(
"Could not load configured .dme due to it being outside the deployment directory! This should be a relative path.")]
664 [Description(
"Provided repository username doesn't match the user of the corresponding access token!")]
670 [Description(
"GraphQL swarm remote gateways not implemented!")]
ErrorCode
Types of Response.ErrorMessageResponses that the API may return.
@ OpenDreamTooOld
Could not install OpenDream due to it not meeting the minimum version requirements.
@ ApiMismatch
Indicates an API upgrade was required by the server.
@ ModelValidationFailure
The request body was malformed.
@ GameServerOffline
Attempted to perform an operation that requires server (not the watchdog) to be running but it wasn't...
@ JobStopped
Attempted to cancel a stopped job.
@ ConfigurationContendedAccess
Currently unused.
@ SwarmIntegrityCheckFailed
The server swarm has less than the expected amount of nodes.
@ RepoMissing
Attempted to load a non-existant repo.
@ DeploymentInProgress
Deployment already in progress.
@ RemoteGatewaysNotImplemented
Attempted to make a cross swarm server request using the GraphQL API.
@ DeploymentNoDme
No .dme could be found for deployment.
@ WatchdogNotRunning
Attempted to restart a stopped watchdog.
@ MissingHostWatchdog
Attempted to perform a restart operation without the host watchdog component.
@ CannotRemoveLastAuthenticationOption
Tried to remove the last OAuthConnection for a passwordless user.
@ ChatBotMax
Attempted to add a chat bot when at or above the Instance.ChatBotLimit or it was set to something low...
@ OpenDreamCantFindDotnet
Could not compile OpenDream due to a missing dotnet executable.
@ UserPasswordLength
The given Request.UserUpdateRequest.Password length was less than the server's configured minimum.
@ ApiPageTooLarge
A paginated request asked for too large a page.
@ DeploymentInvalidValidation
The DMAPI sent an invalid validation request.
@ InstanceAtExistingPath
Attempted to change a Instance.Path to a non-empty location.
@ InstanceHeaderRequired
The ApiHeaders.InstanceIdHeader header was required but not set.
@ RepoMismatchShaAndReference
Attempted to Request.RepositoryUpdateRequest.CheckoutSha and set Internal.RepositoryApiBase....
@ RepoTokenUsernameMismatch
Entered wrong RepositorySettings.AccessUser for a RepositorySettings.AccessToken.
@ IOError
An IO error occurred while working with the configuration system.
@ AdminUserCannotOAuth
Attempted to set Internal.UserApiBase.OAuthConnections for the admin user.
@ RemoteApiError
A required remote API request failed.
@ GCoreFailure
Non-zero gcore exit code.
@ RepoDuplicateTestMerge
Request.RepositoryUpdateRequest.NewTestMerges contained duplicate TestMergeParameters....
@ RepoBusy
The repository is busy with another operation.
@ RepoWhitespaceCommitterName
Attempted to set a whitespace RepositorySettings.CommitterName.
@ DreamDaemonPagerRunning
Attempted to launch DreamDaemon on a user account that had the BYOND pager running.
@ WatchdogCompileJobCorrupted
Attempted to start the watchdog with a corrupted Internal.CompileJob.
@ ConfigurationFileUpdated
A IConfigurationFile was updated.
@ RepoTestMergeConflict
Encounted merge conflicts while test merging.
@ ApiInvalidPageOrPageSize
A paginated request asked for page 0.
@ UserNameChange
Attempted to change something other than the capitalization of a UserName.Name for a user.
@ BadHeaders
The ApiHeaders failed to validate.
@ InstanceOffline
Attempted to perform an instance operation with an offline instance.
@ InstanceMissingDreamDaemonSettings
Missing Internal.DreamDaemonSettings in database.
@ BroadcastFailure
Sending a broadcast message failed.
@ EngineNoVersionsInstalled
Failed to lock engine executables.
@ RepoReferenceNotTracking
The current Internal.RepositoryApiBase.Reference does not track a remote reference.
@ WatchdogRunning
Attempted to start the watchdog when it was already running.
@ UserGroupAndPermissionSet
Tried to update a user to have both a Internal.UserApiBase.Group and Internal.UserApiBase....
@ ServerUpdateInProgress
A server update was requested while another was in progress.
@ ChatBotWhitespaceConnectionString
Internal.ChatBotSettings.ConnectionString was whitespace.
@ RepoMergeConflict
A merge conflict occurred during a git operation.
@ ChatBotProviderMissing
Internal.ChatBotSettings.Provider was null during creation.
@ RepoExists
Attempted to clone the repository when it already exists.
@ RepoWhitespaceCommitterEmail
Attempted to set a whitespace RepositorySettings.CommitterEmail.
@ InstanceAtConflictingPath
Attempted to change a Instance.Path to a location that conflicts with the server install or another i...
@ RepoUnsupportedTestMergeRemote
Attempted to test merge with an unsupported remote.
@ RepoCredentialsRequired
RepositorySettings.AccessUser and RepositorySettings.AccessToken are required for this operation.
@ InstanceRelocateOnline
Attempted to change a Instance.Path while it was Instance.Online.
@ RepoCloning
The repository is busy being cloned.
@ UserSidChange
Attempted to change a Internal.UserModelBase.SystemIdentifier.
@ ChatBotWhitespaceName
Chat bot NamedEntity.Name was whitespace.
@ TokenWithToken
Attempted to request a Response.TokenResponse with an existing Response.TokenResponse.
@ ByondDirectXInstallFail
Failed to install DirectX with BYOND.
@ EngineFirewallFail
Attempt to add DreamDaemon to the list of firewall exempt processes failed.
@ MissingGCore
Missing GCore executable.
@ FileUploadExpired
A job requiring a file upload did not receive it before timing out.
@ DeploymentExitCode
Compiler failed to compile.
@ UserMissingName
Attempted to create a user with a null or whitespace UserName.Name.
@ InstanceDetachOnline
Attempted to detach an Instance while it was Instance.Online.
@ InstanceMissingDreamMakerSettings
Missing Internal.DreamMakerSettings in database.
@ InstanceMissingRepositorySettings
Missing RepositorySettings in database.
@ DeploymentNeverValidated
The DMAPI never validated itself.
@ RequiresPosixSystemIdentity
The operation requires the unimplemented POSIX system identities feature.
@ GitHubApiRateLimit
A required GitHub API call failed due to rate limiting.
@ ChatCannotConnectProvider
An attempt to connect a chat bot failed.
@ RepoReferenceRequired
Cannot perform operation while not on a Internal.RepositoryApiBase.Reference.
@ RepoMismatchUserAndAccessToken
One of RepositorySettings.AccessUser and RepositorySettings.AccessToken is set while the other isn't.
@ UserMismatchNameSid
Attempted to create a user with a UserName.Name and Internal.UserModelBase.SystemIdentifier.
@ NoPortsAvailable
Attempted to create an instance but no free ports could be found.
@ ConfigurationDirectoryNotEmpty
Attempted to delete an non-empty directory.
@ RepoMismatchShaAndUpdate
Attempted to Request.RepositoryUpdateRequest.CheckoutSha and Request.RepositoryUpdateRequest....
@ ChatBotWrongChannelType
A requested ChatChannel's data does not match with its Internal.ChatBotSettings.Provider.
@ RepoSwappedShaOrReference
Either Request.RepositoryUpdateRequest.CheckoutSha or Internal.RepositoryApiBase.Reference was in one...
@ ResourceNeverPresent
Attempted to access a resource that was never present.
@ DeploymentTimeout
A deployment took longer than the configured timeout.
@ ResourceNotPresent
Attempted to access a resourse that is not (currently) present.
@ InstanceLimitReached
Attempted to create an Instance but the configured instance limit has been reached.
@ DeploymentWrongDme
The configured .dme could not be found.
@ RepoTestMergeInvalidRemote
Attempted to test merge with an invalid remote repository.
@ DatabaseIntegrityConflict
Generic database integrity failure.
@ UserColonInName
Attempted to create a user with a ':' character in the UserName.Name.
@ CannotChangeServerSuite
Attempted to change to a major version less than 4.
@ EngineDownloadFail
Failed to download a given engine version.
@ UserLimitReached
Attempted to create a user but the configured limit has been reached.
@ PortNotAvailable
Attempted to set a port which is either in use by another part of TGS or otherwise not available for ...
@ WatchdogStartupFailed
Game server exited before it finished starting.
@ UserMismatchPasswordSid
Attempted to create a user with a Request.UserUpdateRequest.Password and Internal....
@ EngineCannotDeleteActiveVersion
Could not delete a engine version due to it being set as the active version for the instance.
@ EngineNonExistentCustomVersion
Attempted to switch to a custom engine version that does not exist.
@ OAuthProviderDisabled
Attempted to login with a disabled OAuth provider.
@ WatchdogStartupTimeout
Game server timed-out before it finished starting.
@ InstanceNotAtWhitelistedPath
Attempted to create an instance outside of the Internal.ServerInformationBase.ValidInstancePaths.
@ RepoCannotAuthenticate
The remote returned an invalid authentication request.
@ InternalServerError
An implementation error occurred while processing the request.
@ PostDeployFailure
Failed to post GitHub comments, or send TGS event.
@ ChatBotMaxChannels
Attempted to configure a chat bot with more ChatChannels than the configured Internal....
@ InstanceUpdateTestMergeConflict
Performing an automatic update with the RepositorySettings.AutoUpdatesKeepTestMerges flag resulted in...
@ GameServerDoubleSoft
Attempted to make a game server update with both Internal.DreamDaemonApiBase.SoftRestart and Internal...
@ DotnetDiagnosticsFailure
Failed dotnet diagnostics dump.
@ UserGroupLimitReached
Attempted to create a user group but the configured limit has been reached.
@ UserGroupNotEmpty
Tried to delete a non-empty user group.
@ GameServerPortInUse
Could not bind to port we wanted to launch the game server on.
@ InstanceWhitespaceNameOrPath
Attempted to create an Instance with a whitespace NamedEntity.Name or Instance.Path.
@ DeploymentMissingDme
The configured .dme could not be found.