Commit Graph

489 Commits

Author SHA1 Message Date
Dane Everitt
d9ceb9601d
Do not set the default values in the struct we're unmarshaling into
closes 

If you set the defaults, you'll override a bunch of values for the server with the original values. For example this code caused servers in a running state to be changed to a non-running state, thus leading to stats not sending.

Just merge in any new values, leave everything else as empty.
2019-12-24 16:35:43 -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
21d8384848
Create the config file if it is missing for the server, then try again 2019-12-07 16:48:26 -08:00
Dane Everitt
c9bff0fa31
Move server tracking in program into global memory state 2019-12-07 16:43:00 -08:00
Dane Everitt
4a68eabd1b
Initial functionality to pull a docker image when booting an environment 2019-12-07 14:19:51 -08:00
Dane Everitt
32c32bb24e
Fix improper goroutine 2019-11-30 21:46:54 -08:00
Dane Everitt
1003abaa63
[#3896bk] Configure base support for properties file parsing 2019-11-30 18:07:05 -08:00
Dane Everitt
11c6738264
[] Show crash output in console 2019-11-30 17:08:11 -08:00
Dane Everitt
8c57583ce9
[] 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
4ce9c83fad
[#3896cn] Fix nil pointer when passing data through patch 2019-11-30 15:46:28 -08:00
Dane Everitt
0ce95aa2e3
[#3896cn] Add support for suspending a server and blocking boot when suspended 2019-11-30 15:19:08 -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
ca17d8ca5d
Use correct permission mask to allow docker to execute against bind 2019-11-24 21:18:41 -08:00
Dane Everitt
151be4a458
Recreate the container if rebuild is required 2019-11-24 21:12:02 -08:00
Dane Everitt
a8c16debfb
More logical environment variable checking 2019-11-24 20:59:40 -08:00
Dane Everitt
c684410722
Obliterate mappings/env variables if passed through, since we want to completely replace those arrays 2019-11-24 20:54:03 -08:00
Dane Everitt
65b01e1869
oom is disabled by default 2019-11-24 20:02:53 -08:00
Dane Everitt
3ca6d5d74b
Whoops, if UUID is empty that is fine 2019-11-24 20:01:38 -08:00
Dane Everitt
c96f22787a
Correct logic handling a server resource update 2019-11-24 19:57:20 -08:00
Dane Everitt
35c1e467cd
Logical file rename 2019-11-24 19:32:02 -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
7f4c29580a
Create the container if the server is booted and it is missing 2019-11-24 13:04:24 -08:00
Dane Everitt
48a303608a
Wrap errors to ensure a stacktrack is returned where possible 2019-11-16 17:05:21 -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
56be65888c
Don't try to truncate a file that doesn't actually exist yet 2019-11-16 16:07:54 -08:00
Dane Everitt
f0da1eeb48
Add basic support for creating a server on wings 2019-11-16 15:48:50 -08:00
Dane Everitt
c9bfb18b1c
Update to match new yaml format 2019-11-16 13:34:05 -08:00
Dane Everitt
9dcda47657
Send the correct signal to the instance 2019-09-28 13:18:09 -07:00
Dane Everitt
4e1b7988bf
Set server to stopping when stop command is sent 2019-09-22 21:33:44 -07: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
2a745c5da1
Fix CPU calculation 2019-09-17 23:10:02 -07:00
Dane Everitt
64f477f423
Send server stat updates over the websocket 2019-09-05 22:08:10 -07:00
Dane Everitt
9a4f1672f7
Fix logic for resource usage -- include disk and reset to 0 when stopped 2019-08-17 16:10:48 -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
a1987f3aef
Return times in RFC3339 format since the default format is not parsable in PHP 2019-08-05 22:22:49 -07:00
Dane Everitt
7c82c6445d
Correctly connect to running containers 2019-06-29 17:52:55 -07:00
Dane Everitt
2db705f697
Send the server logs when the websocket is connected to initially 2019-05-27 18:03:37 -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
8d8ec70683
Add support for writing to a file (and creating it if not existent) 2019-05-25 15:40:15 -07:00
Dane Everitt
7182b02ce2
Order A-Z not Z-A 2019-05-14 18:43:04 -07:00
Dane Everitt
9c252a5ad7
Truncate the logs when server process is starting 2019-05-09 21:52:24 -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
e95c22a526
Add support for deleting a file or directory from a server 2019-05-04 17:09:35 -07:00
Dane Everitt
50d16a3dcd
Add support for copying a file 2019-05-04 17:02:01 -07:00
Dane Everitt
4318d9988a
Add support for renaming files/directories 2019-05-04 16:04:41 -07:00
Dane Everitt
857bf45324
Add support for creating a new directory 2019-05-01 22:09:01 -07:00
Dane Everitt
c3515454f2
Fix handling of empty directories to not return null 2019-05-01 22:08:54 -07:00
Dane Everitt
3de40ddf98
Fix handling of kill in daemon 2019-04-21 12:27:53 -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
729a84b4bf
Output as expected json keys 2019-04-07 15:11:56 -07:00
Dane Everitt
0ace25c117
Add support for listing a directory's contents 2019-04-07 14:45:23 -07:00
Dane Everitt
91afa4d38e
Add basic file stat & mimetype 2019-04-07 13:47:14 -07:00
Dane Everitt
aef9521190
Add support for reading a file's content or downloading it 2019-04-06 17:32:35 -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
fe30c2969d
Add the default environment variables for servers 2019-04-06 12:36:05 -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
447dafc76d
Update deprecated API call 2019-04-03 23:58:45 -07:00
Dane Everitt
4c6f2cf948
Whoops, casting strings like this is incorrect.
For example, 25565 is a rune for 揝 when doing string(port).
2019-04-03 23:54:38 -07:00
Dane Everitt
b69da4f43a
Correctly map to int not string here 2019-04-03 23:45:15 -07:00
Dane Everitt
b84ed20c24
Update docker environment to handle port mapping 2019-04-03 23:09:15 -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