Commit Graph

48 Commits

Author SHA1 Message Date
Jordan Dominion 5a37062d76 Support sensitive event script parameters 2026-01-11 15:31:44 -05:00
Jordan Dominion d7a38abc6c Merge branch 'IOptionsSnapshot' into MoreWork 2025-08-15 23:58:05 -04:00
Jordan Dominion 2d7da21ee1 Fix MapThreadsVersion unit test 2025-08-01 10:56:57 -04:00
Jordan Dominion abab725cd5 Merge branch 'pr-2305' into Omega 2025-07-26 19:00:04 -04:00
Jordan Dominion f0cac0e810 Switch to using IFileSystem on the backend for file operations 2025-07-20 22:29:57 -04:00
Jordan Dominion 12632a8bb4 AAAAA 2025-07-20 20:07:42 -04:00
Jordan Dominion 5930b51e0b IOptionsMonitor for WindowsByondInstaller 2024-10-19 10:52:54 -04:00
Jordan Dominion e240d86429 Pull together all the metadata, documentation, tooling, etc to start pre-releasing the GraphQL API 2024-10-06 10:49:32 -04:00
Jordan Dominion d89461d19d GraphQL API Initial Implementation
- Build API via annotations using HotChocolate.
  - Export to `artifacts` on build.
  - Repurpose REST API types where possible, but many have to be reimplemented.
  - Transfer controller and bridge controller will definitely have to stay forever.
- Added `Tgstation.Server.Client.GraphQL` built from schema using StrawberryShake.
  - Added equivalent server information query.
- Setup semver and u32 (de)serialization.
- Begin transitioning to multi-client type live tests.
- Add GraphQL route `/api/graphql`
- Rename ServerClient likes to RestServerClient equivalent.
- Major API/Client library version bumps.
2024-09-08 20:51:04 -04:00
Jordan Dominion bfc2e64e66 Set oom_score_adj appropriately on Linux
Closes #1792
2024-03-03 13:33:56 -05:00
Jordan Dominion 8a3655c6f5 Fix EngineManager not respecting Session:LowPriorityDeploymentProcesses 2024-01-31 23:12:11 -05:00
Jordan Dominion 4993304389 Add support for setting environment variables with IProcessExecutor 2024-01-30 20:53:00 -05:00
Jordan Dominion 476e903bb0 Cleanup messages in tests 2023-12-20 23:04:17 -05:00
Jordan Dominion 34f142868c Fix engine installs not respecting Session:LowPriorityDeploymentProcesses 2023-12-20 20:10:10 -05:00
Jordan Dominion c06af41041 Cleanup some messages 2023-12-16 11:23:44 -05:00
Jordan Dominion 6ce9695533 Redo Process output reading to better workaround https://github.com/dotnet/runtime/issues/28583
Also test harder
2023-12-16 11:23:44 -05:00
Jordan Dominion b5f7a7f069 Fix main page logo not appearing if webpanel was disabled 2023-11-29 16:43:30 -05:00
Jordan Dominion ffb7dcfd5b Merge branch 'V6' into OpenDream 2023-11-17 10:49:45 -05:00
Jordan Dominion 3a158251a1 Merge branch 'dev' into V6 2023-11-17 10:49:35 -05:00
Jordan Dominion 17bda5ef48 Standardize naming to "Webpanel" 2023-11-16 23:14:14 -05:00
Jordan Dominion 4537845e0b Make this workaround generic 2023-11-16 22:10:36 -05:00
Jordan Dominion 75db9af33e Move EngineVersion to core models namespace 2023-11-14 19:51:08 -05:00
Jordan Dominion b2bce2cc28 Merge branch 'V6' into OpenDream 2023-11-12 08:39:33 -05:00
Jordan Dominion 9e1806a2b4 Move all API functionality to /api.
Move `BridgeController` route but BYOND forces us to support the legacy one as well.
Add a basic homepage if it's not obvious where to redirect the user.

Closes #1689
2023-11-10 23:18:20 -05:00
Jordan Dominion 6c4046ca8c Fix temp path issue in version tests 2023-10-16 11:17:32 -04:00
Jordan Dominion c462fabe8e Use deterministic temp paths in integration tests 2023-10-16 09:38:28 -04:00
Jordan Dominion bb5fd19eae Fix other failing test 2023-10-16 01:08:52 -04:00
Jordan Dominion 1eeba3a4b2 Rename ByondVersion to EngineVersion 2023-10-15 01:49:39 -04:00
Jordan Dominion cb7bddb481 Fix test OD repo extraction 2023-10-14 22:47:29 -04:00
Jordan Dominion 84c0fcd903 Redo how ByondVersion is implemented to support custom OD builds
- `SourceCommittish` -> `SourceSHA`, now MUST be full length.
- Fix OpenDreamInstaller.DownloadVersion requiring a JobProgressReporter.
- Fix naming of BYOND firewall rules
2023-10-14 21:54:33 -04:00
Jordan Dominion 90d516cfb9 More OpenDream engine implementation 2023-10-11 23:35:52 -04:00
Jordan Dominion b93b9bf6b9 Rename Byond namespace to Engine 2023-10-10 08:59:28 -04:00
Jordan Dominion 809ba413a7 Implement most of OpenDreamInstaller
Drop support for custom OD repositories, hopefully fix custom installs.

Need to go back to the git strat because of submodules
2023-10-09 18:46:56 -04:00
Jordan Dominion c4c656f982 Rename IByondInstaller to IEngineInstaller. 2023-10-09 16:22:21 -04:00
Jordan Dominion e5c895fb73 Rename ByondManager to EngineManager 2023-10-09 16:18:07 -04:00
Jordan Dominion 6e015f86fa WIP OpenDream Support 2023-10-09 15:42:29 -04:00
Jordan Dominion edb1e3fce7 Fix the -map-threads test 2023-07-19 22:03:13 -04:00
Jordan Dominion 93cfea62ac Inconclusive map threads test until release.
Also fix lack of loggers in calls to InitializeByondVersion
2023-07-08 13:43:41 -04:00
Jordan Dominion f2d70f7aa2 Remove unnecessary SessionConfiguration from WindowByondInstaller` 2023-07-04 18:01:41 -04:00
Jordan Dominion 4eb19e7263 Change Processes to use .WaitForExitAsync()
- Remove custom exit handler.
- Move exit handling into `Tgstation.Server.Host.System.Process`.
- Adjust `IProcessExecutor.LaunchNew` signature.
- `IProcessBase.Lifetime` result now nullable to represent a detach.
- Await `Lifetime` in dispose.
2023-07-04 18:01:41 -04:00
Jordan Dominion 72afd1f4de Merge branch 'dev' into 1458-AddMapThreadsParam 2023-07-04 18:01:35 -04:00
Jordan Dominion 2e6e2841e5 Add support for changing console title
- Move `VersionExtensions` to `Tgstation.Server.Common`.
- Fix Host watchdog API version specifying `Revision`.
2023-07-02 09:13:27 -04:00
Dominion 1a3e0fe1c7 Configuration option to disable dd.exe usage
Fixed issues with testing bridge limits in 515.

Added LiveTests helper to get all DreamDaemon processes.

Assert Live tests port usage is >= 10000 to ensure we get maximum url length for bridge tests.
2023-06-15 03:30:32 -04:00
Dominion 51b7792e15 CachingFileDownloader now builds the cache
- New global CI cache for BYOND zips
- VersionsTest now caches the BYOND versions it tests
- Move some classes around
2023-06-14 14:53:32 -04:00
Dominion 3a631709c0 Merge branch 'dev' into 1458-AddMapThreadsParam 2023-06-14 13:02:49 -04:00
Dominion 395ee7d316 Add DummyGitHubService for live testing
- Also enable repo additional features for testing if possible
- Change a bunch of `TestInitialize`rs to `ClassInitialize`rs
2023-06-04 13:15:09 -04:00
Dominion a7a8c92f75 Add additional testing for BYOND features like dd.exe and -map-threads. 2023-04-28 23:11:43 -04:00
Dominion 86e103b86b More integration test reorganization 2023-04-22 10:33:39 -04:00