Commit Graph

124 Commits

Author SHA1 Message Date
Dane Everitt
e28c05ae56
Address some race conditions 2020-07-19 17:46:39 -07:00
Dane Everitt
0cbaad5c72
Completely re-work the server configuration to be separated out better 2020-07-19 16:27:55 -07:00
Dane Everitt
a00288aa64
Require a lock on the restart process to avoid double restarts causing unexpected behavior 2020-07-18 16:46:41 -07:00
Dane Everitt
8315ff8ae1
Misc mutex locking things to avoid data races 2020-07-18 16:03:25 -07:00
Matthew Penner
63e7bde39c
Merge branch 'develop' into feature/server-mounts 2020-07-04 15:17:59 -06:00
Dane Everitt
65809b5731
Don't crash when passing in an environment variable that isn't a string value 2020-07-02 20:32:17 -07:00
Dane Everitt
1f6789cba3
Acquire exclusive lock when installing a server
Also allows aborting a server install mid-process when the server is deleted before the process finishes.
2020-06-22 21:38:16 -07:00
Dane Everitt
a3d83d23bd
Don't try to send space available when loading from a configuration
Server is not always installed when this function is called, this will cause errors in those cases.
2020-06-22 20:52:23 -07:00
Dane Everitt
62e5547c6d
Merge pull request #32 from pterodactyl/issue/1796
Send disk usage when server is offline
2020-05-31 10:54:21 -07:00
Dane Everitt
f8bffd8391
Start the process of migrating from zap to a cleaner CLI output for logs 2020-05-28 22:07:53 -07:00
Matthew Penner
74097cc4ad Fix sending status event to all subscribers, send disk usage when server is offline 2020-05-22 11:01:27 -06:00
Matthew Penner
662eb17241 Pass server mounts into docker 2020-05-21 14:53:00 -06:00
Dane Everitt
ffd7357a1c
Calculate memory swap using the same memory overhead values as the hard cap; pterodactyl/panel#2000 2020-05-08 20:57:00 -07:00
Dane Everitt
4279fa510e
Cleanup data storage locations for daemon 2020-04-17 14:27:06 -07:00
Dane Everitt
03045c94be
Better race condition prevention 2020-04-10 18:22:18 -07:00
Dane Everitt
17d204a631
Little bit of code refactoring 2020-04-10 18:07:57 -07:00
Dane Everitt
af241f3de4
Code cleanup 2020-04-10 18:03:35 -07:00
Matthew Penner
1f4aca8210 Fix issue with config file saving, fix issue with state file saving, fix issue when merging a uuid into a server without one 2020-04-10 17:55:36 -06:00
Matthew Penner
1e12b7b37c Remove server configurations files and add shared state file 2020-04-10 16:33:30 -06:00
Matthew Penner
28c8f3f400 Add the ability to fetch all servers, fix cpu usage leak again.. 2020-04-10 15:39:07 -06:00
Matthew Penner
e719c67e0b Removes SyncServersOnBoot configuration option and requires that servers are synced when the daemon boots 2020-04-10 12:16:04 -06:00
Matthew Penner
9e30d63818 Add debug logs when a non-500 error occurs, force sync the configuration during installation of a new server 2020-04-10 12:00:04 -06:00
Dane Everitt
cf2ef1a173
Port most of the HTTP code over to gin 2020-04-05 18:00:33 -07:00
Matthew Penner
6af3cb2c9b Get transfers 'fully' working, need to add fail request though 2020-04-04 16:15:49 -06:00
Matthew Penner
3dba11ac6f Add ability to create archives of servers, add GET and POST /api/servers/:server/archive routes to get and request an archive of a server 2020-04-03 23:17:26 -06:00
Dane Everitt
ddca34f9e8
Add support for defining specific threads for containers 2020-03-29 12:31:17 -07:00
Dane Everitt
99a11f81c3
Improve event emitter/subscription abilities 2020-01-18 14:04:26 -08:00
Dane Everitt
6ef2773c01
Very, very basic server installation process 2019-12-28 14:57:19 -08:00
Dane Everitt
32e389db21
General code cleanup 2019-12-24 16:40:51 -08:00
Dane Everitt
2d0faadeb6
Always rebuild the container when a server is started 2019-12-22 13:52:22 -08:00
Dane Everitt
fabaf21a0d
Sync all server details when booting daemon or server process 2019-12-22 13:21:21 -08:00
Dane Everitt
0866b84d8e
Implement server deletion 2019-12-21 23:23:56 -08:00
Dane Everitt
189289ad5f
Correctly handle updating server data 2019-12-21 21:02:02 -08:00
Dane Everitt
3fd5b1e92b
Fix crash detection defaults 2019-12-16 21:23:57 -08:00
Dane Everitt
92a7c9d231
Don't freak out if the server doesn't exist on the remote 2019-12-16 20:47:35 -08:00
Dane Everitt
514c16ccc8
Less obtuse error handling from API responses 2019-12-16 20:34:58 -08:00
Dane Everitt
c9bff0fa31
Move server tracking in program into global memory state 2019-12-07 16:43:00 -08:00
Dane Everitt
8c57583ce9
[#389686] Add crash detection logic to daemon 2019-11-30 16:43:18 -08:00
Dane Everitt
be14811eb4
Fix issues instantiating the server struct 2019-11-30 16:37:11 -08:00
Dane Everitt
b3de4705ae
Persist configuration when server state is changed 2019-11-24 21:36:33 -08:00
Dane Everitt
85762ba4b9
Server state handling; auto start servers if they were running when the daemon stopped 2019-11-24 21:31:31 -08:00
Dane Everitt
47c7c872fc
Don't track the process state in the yaml 2019-11-24 21:18:51 -08:00
Dane Everitt
65b01e1869
oom is disabled by default 2019-11-24 20:02:53 -08:00
Dane Everitt
c96f22787a
Correct logic handling a server resource update 2019-11-24 19:57:20 -08:00
Dane Everitt
9f4518fc58
Add (unchecked) code to do an in-situ replacement of build settings 2019-11-24 15:08:38 -08:00
Dane Everitt
cae0090763
Correct some error handling, use package that provides useful stack traces 2019-11-16 17:01:38 -08:00
Dane Everitt
c9bfb18b1c
Update to match new yaml format 2019-11-16 13:34:05 -08:00
Dane Everitt
00bc71afd1
Update stop for servers to use configuration 2019-09-22 21:22:16 -07:00
Dane Everitt
d7753d9c7f
Add initial support for fetching egg configuration from panel for servers 2019-09-22 20:47:38 -07:00
Dane Everitt
c8e6e29abc
Add support for streaming usage stats back to the calling process 2019-08-17 13:19:56 -07:00
Dane Everitt
93c71a6ab7
Correct handling of state and console events 2019-05-27 17:12:51 -07:00
Dane Everitt
7b1ebd790d
When connecting to the server socket send the state right away 2019-05-27 16:58:05 -07:00
Dane Everitt
7a52e3a9c2
For now, chown the server directory when the server starts 2019-05-09 21:48:58 -07:00
Dane Everitt
8795e7d739
Emit server status events 2019-04-21 12:02:28 -07:00
Dane Everitt
bed30d9229
Get working console websocket implementation and fix race condition 2019-04-20 17:38:12 -07:00
Dane Everitt
49ca2e2404
Cleanup server stuff since that was getting unweildy 2019-04-20 16:26:55 -07:00
Dane Everitt
870adffc14
Significant improvements to attaching/console handling 2019-04-20 16:20:08 -07:00
Dane Everitt
b20bfac36b
Get server logs sending over the socket. wowee 2019-04-20 14:57:37 -07:00
Dane Everitt
7c0acf3f60
Very basic state management for servers 2019-04-07 15:20:21 -07:00
Dane Everitt
314a5ad546
Add FS logic for determining folder size as well as safe path resolution 2019-04-06 16:53:22 -07:00
Dane Everitt
94223bafec
Fix docker user and write configuration to disk when setting user 2019-04-06 16:03:02 -07:00
Dane Everitt
d534b23606
Move configuration to own directory, modify docker environment setup to be easier to manage 2019-04-06 13:33:54 -07:00
Dane Everitt
7d67be8382
Add support for getting a server's log file via the API 2019-04-06 12:27:44 -07:00
Dane Everitt
7f50ff1f92
Add support for starting/stopping/killing a server via the API 2019-04-05 22:55:48 -07:00
Dane Everitt
cedbee5080
Add initial API support for listing configured servers 2019-04-05 22:20:26 -07:00
Dane Everitt
ec2407481b
Fix pointer error 2019-04-05 22:20:10 -07:00
Dane Everitt
3b4555344c
Build out the docker environment a bit more 2019-04-05 21:59:27 -07:00
Dane Everitt
c683809efc
Get more of the container creation fleshed out 2019-04-03 22:49:15 -07:00
Dane Everitt
3e4fcd527d
Pass through startup as argument 2019-04-03 22:20:39 -07:00
Dane Everitt
08af485c40
Get basic environment creation beginning to work 2019-04-03 22:01:11 -07:00
Dane Everitt
639d9edef5
Better configuration loading process for servers
Loads up to 10 configurations at once in parallel
2019-03-24 18:39:01 -07:00
Dane Everitt
29de97c857
That editorconfig file really butchered the formatting for go 2019-03-24 18:00:21 -07:00
Dane Everitt
4bdf373ab8
Cleanup to better match the revised server data format 2019-03-24 17:39:13 -07:00
Dane Everitt
a3d5bf7982
Migrate very basic environment capabilities 2019-03-24 17:27:14 -07:00