Commit Graph

1365 Commits

Author SHA1 Message Date
Dane Everitt
34ecf20467
Re-implement ContainerInspect call in Wings to use more performant json encoder (#119)
* First pass at re-implementing the Docker inspect call to use more efficient json parser

* Improve logic
2022-01-23 14:13:49 -08:00
Dane Everitt
34c0db9dff Replace encoding/json with goccy/go-json for cpu and memory usage improvement
This new package has significant better resource usage, and we do a _lot_ of JSON parsing in this application, so any amount of improvement becomes significant
2022-01-23 15:17:40 -05:00
Dane Everitt
301788805c Ensure a file uploaded using SFTP is properly owned at the end; closes pterodactyl/panel#3689 2022-01-23 13:14:02 -05:00
Dane Everitt
4c8f5c21a3
Improve power lock logic (#118) 2022-01-23 09:49:35 -08:00
Dane Everitt
c52db4eec0 Add test coverage for sinks; prevent panic on nil channels 2022-01-23 10:41:12 -05:00
Dane Everitt
a4904365c9 Sink pool cleanup and organization; better future support when we add more sinks 2022-01-23 09:57:25 -05:00
Dane Everitt
2a9c9e893e Add test for scan reader 2022-01-22 14:52:24 -05:00
Dane Everitt
1591d86e23 Quick note about the importance of the copy 2022-01-22 14:33:49 -05:00
Dane Everitt
b5536dfc77 Prevent excessive memory usage when large lines are sent over the console 2022-01-22 14:33:03 -05:00
Matthew Penner
45418c86dd
Update CHANGELOG.md 2022-01-20 09:58:47 -07:00
Matthew Penner
71e56c7da6
events: remove debug log 2022-01-20 09:50:13 -07:00
Matthew Penner
4ba5fe2866
events: don't explode when destroying a bus
Only attempt to close channels once, rather than per topic
they are subscribed to.
2022-01-20 09:48:18 -07:00
Matthew Penner
6d8c1d2225
diagnostics: properly redact endpoints 2022-01-20 09:12:24 -07:00
Matthew Penner
a6b77a31dc fix send on closed channel for logging; closes #3895 2022-01-20 07:00:00 -07:00
Matthew Penner
c27e06bcb9
server: ensure last lines are always logged 2022-01-19 18:22:34 -07:00
Noah van der Aa
13a9ee9474
Use GID from config for container (#106) 2022-01-19 17:05:53 -08:00
Dane Everitt
760554f8f4 Update CHANGELOG.md 2022-01-19 20:03:11 -05:00
Matthew Penner
bb7ee24087
router: support the Access-Control-Request-Private-Network header (#117) 2022-01-19 09:27:13 -07:00
Matthew Penner
649dc9663e
Server Event Optimizations (#116) 2022-01-17 20:23:29 -07:00
TacticalCatto
521cc2aef2
Don't turn SSL into lowercase (#114) 2022-01-17 20:22:13 -07:00
Matthew Penner
1892b270b1
environment: allow overriding memory overhead; closes pterodactyl/panel#3728 (#111) 2022-01-17 20:20:30 -07:00
Mrxbox98
ed4d903f21
Redacts redacted info from all (#112) 2022-01-17 19:55:29 -07:00
Chance Callahan
cdb86abac1
RPM is now tracking v1.5.3 (#109) 2022-01-17 19:55:13 -07:00
Matthew Penner
f92b502d6e
ci: fix release version, again 2021-11-15 13:17:47 -07:00
Matthew Penner
aa0d5d46c5
ci: fix version replace and Docker version 2021-11-15 11:19:44 -07:00
Charles Morgan
66eb993afa
Update diagnostics command (#108)
Co-authored-by: Matthew Penner <me@matthewp.io>
2021-11-15 10:56:43 -07:00
Matthew Penner
04b9ef69a1
run gofumpt 2021-11-15 10:37:56 -07:00
Matthew Penner
43d66d14b2
config: don't expand 'environment variables'
fixes https://github.com/pterodactyl/panel/issues/3692, again :)
2021-11-15 10:35:59 -07:00
Matthew Penner
44dfb8fdd7
change default version to be 'develop' 2021-11-15 10:25:39 -07:00
Matthew Penner
d8df353ce8
replace deprecated ioutil function calls 2021-11-15 10:24:52 -07:00
Matthew Penner
be543ce3e0
parser(ini): allow setting the section name
In an egg replacer putting `[]` will cause it to not be split at the first dot.

Before this change putting `"find": { "/Script/Engine.GameSession.MaxPlayers": "<DATA>" }`
would make the section name `/Script/Engine` and the key `GameSession.MaxPlayers`.  After
this change, the same behavior occurs, but if you wrap the key in `[]` it will set the
section name properly, for example `"find": { "[/Script/Engine.GameSession].MaxPlayers": "<DATA>" }`
would make the sesion name `/Script/Engine.GameSession` and the key `MaxPlayers`.

Closes https://github.com/pterodactyl/panel/issues/2533
2021-11-04 13:24:12 -06:00
Dane Everitt
7d689582e5 Update CHANGELOG.md 2021-10-25 21:28:45 -07:00
Dane Everitt
32d6594476 fix incorrect error handling logic when a JWT is created wrongly; closes pterodactyl/panel#3295
Prior to this logic not only was the error response incorrect for events, but we registered event listeners before the authentication event; so if auth failed we flooded the socket with tons of output that was never going to be sent anyways.

This change now waits to register listeners until the socket is fully authenticated and we're guaranteed to have a token present.
2021-10-25 21:23:45 -07:00
Dane Everitt
023d7ec1ec Close websocket connections and allow the client to re-connect on send errors; ref pterodactyl/panel#3596 2021-10-24 16:14:00 -07:00
Dane Everitt
981756b456 Support escaping dollar signs in the YAML config file; closes pterodactyl/panel#3692 2021-10-24 15:20:27 -07:00
Dane Everitt
02734292a0 Update CHANGELOG.md 2021-10-23 13:06:13 -07:00
Matthew Penner
7899a7abdf
re-sync server config if container is already running
If wings is restarted while a container is already running, the server will be missing it's
configuration, specifically it's stop configuration.  This will cause the stop power action
to terminate the server due to no stop command being set.
2021-10-05 18:42:47 -06:00
Cyra
6f9783f164
Update CHS Primary Link to chs.gg (#107)
Update CHS Primary Link to chs.gg
2021-10-04 08:22:56 -07:00
Dane Everitt
d9ebf693e0 Make uptime available in the stat output for a container 2021-10-03 12:59:03 -07:00
Dane Everitt
0cfd72e1d1 Use ED25519 keys for SSH host key authentication purposes
closes pterodactyl/panel#3658
2021-10-03 11:31:39 -07:00
Matthew Penner
6b5b42ec58
Update CHANGELOG.md 2021-09-16 17:53:50 -06:00
Matthew Penner
e13b6d3cb0
actions(build-test): fix artifacts not being uploaded 2021-09-13 22:48:50 -06:00
Matthew Penner
e79694d6d2
config: add ability to enable/disable server crash detection
fixes https://github.com/pterodactyl/panel/issues/3617

Co-authored-by: Alex <admin@softwarenoob.com>
2021-09-13 15:04:28 -06:00
Chance Callahan
12b6b64086
Adding RPM specfile. (#103)
* Adding RPM specfile.

* Added systemd service and some scripting to make things nicer

* Updated systemd service.

* Updated for 1.5.0 and fixed mistake with license.
2021-09-13 12:59:45 -07:00
Dane Everitt
9861286f96 Update CHANGELOG.md 2021-09-12 11:24:31 -07:00
Dane Everitt
09e1ba6f34 Use the request context for cancelation, not a background context
This also fixes an improperly written server deletion listener to look at the correct context cancelation.

Theoretically this should help address the issues in pterodactyl/panel#3596 but I'm not really sure how that happens, and theres no steps for reproduction.
2021-09-12 11:14:00 -07:00
Dane Everitt
ee91224eb6 add context timeouts to avoid hanging wings boot process if docker has a hiccup; closes pterodactyl/panel#3358 2021-09-11 14:13:19 -07:00
Matthew Penner
5cd43dd4c9
archive: keep timestamps when extracting 2021-09-01 09:54:41 -06:00
Dane Everitt
3b5e042ccc Simplify logic when creating a new installer; no longer requires an entire server object be passed. 2021-08-29 14:08:01 -07:00
Dane Everitt
7321c6aa45 Remove unused and complicated installer logic 2021-08-29 13:52:19 -07:00