Dane Everitt
8081c83de4
Allow disabling disk checking with 0 value for check interval
2020-11-12 20:50:03 -08:00
Dane Everitt
be9d1a3986
Replace error handling package with emperror; add better reporting for errors escaping server root
2020-11-08 13:52:20 -08:00
Dane Everitt
a74be8f4eb
configurable socket log count; closes pterodactyl/panel#2659
2020-11-06 20:56:21 -08:00
Dane Everitt
41a67933eb
Use a paginated loop to fetch servers from the Panel rather than a single massive request
2020-10-31 11:05:53 -07:00
Dane Everitt
c73d632e0d
Use correct case-insensitive regex; closes pterodactyl/panel#2546
2020-10-22 20:22:27 -07:00
Dane Everitt
903902e123
Match multiple times
2020-10-22 20:17:58 -07:00
Dane Everitt
560c832cc6
Apply timezone cleaning to final result, closes #2546
2020-10-19 16:13:59 -07:00
Dane Everitt
9b54be06bb
Remove unused config values
2020-10-17 14:09:02 -07:00
Dane Everitt
80387bc294
Use more easily configurable timezone, remove /etc/timezone mounts from containers; closes pterodactyl/panel#2513
...
If this does not completely solve the issue in containers then we need to evaluate the image being used to determine what changes need to happen to the image itself to support the timezone.
ref pterodactyl/panel#2239
ref pterodactyl/panel#2329
ref pterodactyl/panel#2389
2020-10-17 11:35:20 -07:00
Dane Everitt
6c291d9b0e
Minor tweaks to diagnostics for cleaner info, changes endpoint; closes pterodactyl/panel#2463
2020-10-11 15:23:55 -07:00
Matthew Penner
aa39cefcf1
Fix AllowedMounts value from potentially being overwritten remotely
2020-09-17 21:59:41 -06:00
Dane Everitt
864c37f17c
Use 2k lines as the per loop limit
2020-09-17 20:45:13 -07:00
Dane Everitt
815539b3da
Fix log rotation error due to missing templates dir in compiled build
2020-09-17 20:16:27 -07:00
Dane Everitt
6ba1b75696
Add console throttling; closes pterodactyl/panel#2214 ( #60 )
2020-09-17 20:13:04 -07:00
Dane Everitt
57221bdd30
Make disk checking timeout configurable
2020-09-11 20:24:23 -07:00
Matthew Penner
7ba32aca84
Fix some typos and run gofmt on all .go files
2020-09-05 13:08:40 -06:00
Dane Everitt
e09cc3d2dd
Automatically write a logrotate file to the disk when wings boots if directory exists; closes pterodactyl/panel#2312
2020-09-03 20:13:51 -07:00
Dane Everitt
b6008108ac
Update data path if the server data directory is a symlink
2020-09-01 19:24:50 -07:00
Dane Everitt
5f1ceeff90
Add ability for users to disable checking file permissions when starting a server; closes pterodactly/panel#2272
2020-08-27 19:02:22 -07:00
Matthew Penner
b3a2a76f25
Fix log directory not being created
2020-08-24 11:29:40 -06:00
Dane Everitt
b4875926c6
Do not chown files when booting the daemon; avoid massive delays in production environments
2020-08-18 20:29:12 -07:00
Dane Everitt
cf1c671e68
Support changing the /tmp volume size in the config
2020-08-12 20:38:02 -07:00
Dane Everitt
cc52954a2a
Refactor environment handling logic to separate a server from the environment handler itself
...
This change makes the environment handling logic execute independent of the server itself and should make it much easier for people to contribute changes and additional environment handlers down the road without polluting the server object even more.
There is still a lot of work to do on this front to make things easier to work with, and there are some questionable design decisions at play I'm sure.
Welcome to additional modifications and cleanup to make this code easier to reason about and work with.
2020-08-10 21:38:42 -07:00
Dane Everitt
881cb84605
Actually set file permissions for servers when booting the daemon
2020-07-31 21:55:30 -07:00
Dane Everitt
f889a193bf
Use NumCPU and not GOMAXPROCS
2020-07-31 21:31:53 -07:00
Dane Everitt
5e8425ad6a
Code cleanup; use a worker pool for updating file permissions to avoid run-away go-routines
...
Co-Authored-By: Jakob <schrej@users.noreply.github.com>
2020-07-31 21:14:49 -07:00
Dane Everitt
cecc72110c
Merge pull request #46 from pterodactyl/feature/docker-repo-auth
...
Add Docker registry authentication
2020-07-31 20:27:35 -07:00
Matthew Penner
8f1ebdd39f
Replace errors.Wrap with errors.WithStack
2020-07-31 21:22:01 -06:00
Matthew Penner
5b999db7f3
Add Docker registry authentication
2020-07-31 18:28:40 -06:00
Matthew Penner
43795a4be3
Document config options
2020-07-31 16:21:27 -06:00
Matthew Penner
b811d2474e
Add the ability to define additional allowed origins
2020-07-31 16:19:09 -06:00
Matthew Penner
93228933bf
Merge branch 'develop' into feature/server-mounts
2020-07-11 12:32:34 -06:00
Matthew Penner
3a6050446f
Add AllowedMounts configuration option, block any custom mounts if they are not in the AllowedMounts list
2020-07-04 15:32:53 -06:00
Matthew Penner
d339996b4e
Tweaks to environment_docker.go, change container hostnames to use the server's uuid, add Domainname option
2020-07-04 15:14:22 -06:00
Dane Everitt
d284c4aec9
Fix lock obtainment to avoid freeze
2020-06-29 20:42:26 -07:00
Dane Everitt
05a4730489
Fix configuration file saving to disk using the config command
...
closes pterodactyl/panel#2135
2020-06-29 20:33:54 -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
Dane Everitt
6d7ab865d7
Fix SFTP default configuration; closes pterodactyl/panel#2045
2020-05-25 15:51:36 -07:00
Dane Everitt
c802a3397e
Fix warnings about configuration values; should always use the snake case since we're using a marshaled value
2020-05-17 17:25:53 -07:00
Kawaii Neko Lolis
cfca0d7f07
Added network option to docker configuration
2020-05-10 03:29:56 +02:00
Dane Everitt
fd83424ee2
Change default config location (again); support auto-locating and moving old configs
2020-05-09 15:37:49 -07:00
Dane Everitt
fab5d36917
Remove redundant code
2020-05-03 21:37:22 -07:00
Dane Everitt
eba5aa8cbe
Merge pull request #26 from pterodactyl/add/data_folder
...
add data folder on first startup
2020-05-03 20:43:03 -07:00
Dane Everitt
7321fe1421
Make DNS settings for containers configurable, closes #1965
2020-04-25 12:18:18 -07:00
Dane Everitt
9e0cacc076
Update output when booting
2020-04-17 14:32:09 -07:00
Dane Everitt
4279fa510e
Cleanup data storage locations for daemon
2020-04-17 14:27:06 -07:00
Michael Parker
9c5855663c
return errors
...
Actually return errors for stat and mkdir.
2020-04-14 22:06:19 -04:00
Michael (Parker) Parker
da093e7cf7
Update config/config.go
...
remove extra logging.
Co-Authored-By: Lance Pioch <git@lance.sh>
2020-04-14 13:07:10 -04:00
Michael Parker
df9c4835c4
fix folder adding
...
Sorry dane I missed that I nested those.
2020-04-14 00:03:16 -04:00
Michael Parker
65102966a1
add data folder on startup
...
Instead of making users create the data folder create it for them on startup if it doesn't exist.
2020-04-13 18:17:00 -04:00
Michael Parker
12c97c41b0
fixes distro matching
...
Adds osrelease to get distro name
2020-04-13 13:12:49 -04:00
Dane Everitt
b73f78a832
Fix configuration parsing
2020-04-12 17:39:19 -07:00
Michael Parker
fd28db4a68
alpine specific changes
...
This resolves issues on alpine where lsb_release doesn't exist.
Also correct the addgroup command
2020-04-12 17:07:41 -04:00
Dane Everitt
3bd48bbac1
Update the JWT signing algo when the signing key is changed in the config
2020-04-11 17:26:17 -07:00
Dane Everitt
d3a3d4dbf5
Fix configuration to read JSON correctly
2020-04-11 16:32:46 -07:00
Dane Everitt
083bea5504
Add support for modifying daemon configuration on-the-fly
2020-04-11 16:17:46 -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
4ea1b90560
Merge branch 'develop' into issues/1899
2020-04-10 17:27:39 -06:00
Matthew Penner
12648b43fa
Disable config saving temporarily
2020-04-10 17:19:35 -06:00
Dane Everitt
ac9ab4c0b0
Update to match new configuration structure
2020-04-10 15:22:15 -07: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
Matthew Penner
5693d0431e
Merge branch 'develop' into feature/server-transfers
2020-04-04 17:17:09 -06:00
Dane Everitt
4ce2b73490
Add first implementation of local backups for a server
2020-04-04 16:07:25 -07:00
Matthew Penner
8bd7708631
Get server transfers to download the archive from the old daemon
2020-04-04 14:08:17 -06:00
Matthew Penner
c096d8802f
Add configurable ArchiveDirectory
2020-04-04 00:17:32 -06:00
Dane Everitt
d7bd10fcee
Better approach to timezone handling by using a TZ environment variable
2019-12-24 16:57:22 -08:00
Dane Everitt
06f495682c
When mounting timezone data, check for the path first to avoid a fatal error
2019-12-24 16:49:08 -08:00
Dane Everitt
834f0122e3
Update configuration struct to support defaults
2019-12-22 13:20:34 -08:00
Dane Everitt
a8e907a0fc
Don't force debug to true in config file when set via flag
2019-12-21 21:10:45 -08:00
Dane Everitt
189289ad5f
Correctly handle updating server data
2019-12-21 21:02:02 -08:00
Dane Everitt
91d5735ba8
Add support for creating network if it is missing
2019-12-07 17:31:12 -08:00
Dane Everitt
52ca0667ca
Add base support for internalizing the SFTP server
2019-12-07 14:01:40 -08:00
Dane Everitt
8c57583ce9
[ #389686 ] Add crash detection logic to daemon
2019-11-30 16:43:18 -08:00
Dane Everitt
1899b1ab4b
Add logic to handle authenticating a websocket with the panel
2019-09-08 17:40:06 -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
6e2a442846
Ensure that permissions are set properly on daemon boot
2019-04-06 15:39:57 -07:00
Dane Everitt
23df075253
Add support for checking/creating the Pterodactyl system user
2019-04-06 15:24:25 -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
4bdf373ab8
Cleanup to better match the revised server data format
2019-03-24 17:39:13 -07:00
Dane Everitt
80b4da9284
Move configuration into root space
2019-03-24 15:59:37 -07:00
Jakob Schrettenbrunner
53a3fbc464
remove trailing slashes from api
...
use correct handler to provide server logs
remove Baerer from Authorization header to compare it with known tokens
fix wings-api.paw routes
2018-05-17 21:18:02 +02:00
Jakob Schrettenbrunner
501409827e
some reorganisation etc. in control package
...
some minor stuff
just pushing so I can try to replace fsouza/go-dockerclient with moby/moby/client
2018-02-20 23:38:29 +01:00
Dane Everitt
256c566dfe
Change to using yml for configuration files
2017-09-30 17:25:04 -05:00
Jakob Schrettenbrunner
6c58fec7d3
config: fix tests using old config struct
2017-09-01 00:05:36 +02:00
Jakob Schrettenbrunner
a3fcd7c3e0
config: remove old config struct
2017-09-01 00:00:08 +02:00
Jakob Schrettenbrunner
ef28b61136
config: use constants with config keys instead of struct as its easier to handle
2017-08-31 20:13:01 +02:00
Jakob Schrettenbrunner
d9f57ce7ed
fix assert.Equal order
2017-07-29 13:09:17 +02:00
Jakob Schrettenbrunner
0bceb409e5
implement auth middleware
2017-07-06 20:49:36 +02:00
Jakob Schrettenbrunner
fbfeed4ee7
add debug flag to config
2017-06-27 10:42:19 +02:00
Jakob Schrettenbrunner
90e81d89eb
add config_test.go
2017-06-26 21:04:11 +02:00
Jakob Schrettenbrunner
06055d6265
unmarshal config into struct with viper for consistent access
2017-06-26 11:07:53 +02:00
Jakob Schrettenbrunner
f244cda20f
add example config
...
add generateLetsEncrypt setting
2017-06-19 16:20:58 +02:00
Jakob Schrettenbrunner
03acc4d5a3
add full config struct
2017-06-19 16:15:28 +02:00
Jakob Schrettenbrunner
326fdcae6e
very basic thoughts on module and file structure
...
basic configuration
basic logger
2017-06-19 00:01:44 +02:00