Commit graph

1714 commits

Author SHA1 Message Date
Dane Everitt
c6bd7ff661
Improve logic handle auto-allocation of ports for a server 2020-10-31 14:58:15 -07:00
Dane Everitt
665a4dd8a4
Merge branch 'develop' into develop 2020-10-31 13:47:12 -07:00
Dane Everitt
ff64220741
Avoid N+1 location query for servers 2020-10-31 11:28:31 -07:00
Dane Everitt
c00e5b36a5
Return all servers for a node as a paginated response
Avoids crashing the PHP process and avoids a bad runaway N+1 query issue that previously existed.
2020-10-31 11:14:28 -07:00
Dane Everitt
73b795faba
Correctly reset a schedule if there is an exception during the run stage; closes #2550 2020-10-26 20:54:15 -07:00
Dane Everitt
bffec5b3dc
Don't abort the entire schedule running process if one schedule encounters an exception; closes #2609 2020-10-26 20:16:39 -07:00
Dane Everitt
092c942764
Fix server owner filtering; improve searching for servers; closes #2581 2020-10-25 17:29:57 -07:00
Dane Everitt
21d4402a55
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-10-25 15:07:13 -07:00
Dane Everitt
996fb5b46f
Set the DB timezone on each connection to match the APP_TIMEZONE value 2020-10-25 15:07:11 -07:00
Dane Everitt
8c6327fd32
Let MySQL do the time logic when looking for tasks 2020-10-25 15:06:54 -07:00
Anders G. Jørgensen
a271b59092
Change SameSite attribute on session cookies to "lax" (#2592) 2020-10-25 13:15:49 -07:00
Dane Everitt
65d04d0c05
Correctly handle schedule task deletion and avoid errors; closes #2534 2020-10-22 20:54:58 -07:00
Dane Everitt
26de4493dd
Set notes to null when assigning allocation; ref #2553 2020-10-19 21:08:40 -07:00
Dane Everitt
1f5e0c0334
Update build modification service and cover logic with test cases
closes #2553
2020-10-19 21:07:07 -07:00
Dane Everitt
c370e08f65
[security] add login throttling to the 2FA verification endpoint 2020-10-17 14:46:10 -07:00
Dane Everitt
9621f923f5
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-10-17 14:23:06 -07:00
Dane Everitt
5763493c6c
Allow setting the backup limit via the API; closes #2535 2020-10-17 14:23:00 -07:00
Matthew Penner
8ba291afb2 Fix Mount.php validation rules 2020-10-17 14:43:07 -06:00
Matthew Penner
66b9169458 Cleanup code in MountController.php, again. 2020-10-17 14:42:08 -06:00
Matthew Penner
050075b835 Cleanup code in MountController.php 2020-10-17 14:37:35 -06:00
Matthew Penner
f7520b721b Deny /etc/pterodactyl as a source path for mounts 2020-10-17 14:29:29 -06:00
Matthew Penner
c52c5d6736 Deny certain paths for mounts 2020-10-17 14:28:02 -06:00
Dane Everitt
839e277763
Fix exception when passing location IDs to creation service; closes #2529 2020-10-17 11:52:21 -07:00
Nobody
10548c9d8f Update message and update query 2020-10-17 18:26:34 +01:00
Dane Everitt
cd3572730b
Add test coverage to ensure filters don't unexpectedly get broken 2020-10-15 21:52:26 -07:00
Dane Everitt
f30dab053b
Support much better server querying from frontend
Search all servers if making a query as an admin, allow searching by a more complex set of data, fix unfocus on search field when loading indicator was rendered
2020-10-15 21:21:38 -07:00
Dane Everitt
e7c64bc60e
Add test coverage for schedule execution 2020-10-14 21:06:27 -07:00
Dane Everitt
c1ee0ac4f8
Add support for executing a scheduled task right now 2020-10-14 20:38:59 -07:00
Caleb
ea778e9345
Merge branch 'develop' into develop 2020-10-13 15:35:38 -04:00
Dane Everitt
49ddd63dbd
Do not allow running the up or seed commands if migrations have not been run 2020-10-12 20:51:35 -07:00
Dane Everitt
289de72aca
Merge pull request #2497 from pterodactyl/fix/server-mounts
Fix server mounts
2020-10-12 20:13:35 -07:00
Dane Everitt
1ad8b3f37d
Do not mark a server as "not installed" when updating it's startup arguments 2020-10-12 20:12:34 -07:00
Matthew Penner
3ef3c2a461 Remove commented code 2020-10-12 11:12:23 -06:00
Matthew Penner
abd60ee6f8 Fix 500 error when mounting a mount and fix the actual mount being deleted instead of the relation 2020-10-12 11:11:40 -06:00
Dane Everitt
9112de4bfb
Merge pull request #2481 from AreYouRlyScared/fix-2435
Yeh Yeh.... Remove validation rules
2020-10-11 15:36:18 -07:00
Charles Morgan
4b8a275a78
Update AdvancedSettingsFormRequest.php 2020-10-11 18:33:25 -04:00
Dane Everitt
18fce37565
Fix subuser permissions not migrating correctly from 0.7; closes #2309 2020-10-11 15:13:17 -07:00
Dane Everitt
8697185900
Fix up database creation and handling code for servers; ref #2447 2020-10-11 11:59:46 -07:00
Dane Everitt
a4d7170fac
Don't allow creation of a database with an identical name for the same server; closes #2447 2020-10-10 18:17:04 -07:00
Dane Everitt
7b0f998f0b
Return the correct server & subuser counts for user listing; closes #2469 2020-10-10 18:06:42 -07:00
Dane Everitt
1f7fe093ae
Correctly validate description for API keys to match model expectations; closes #2457 2020-10-10 17:15:30 -07:00
Dane Everitt
1f28fb94e2
Ensure the UUID is set correctly; closes #2450 2020-10-10 17:11:27 -07:00
Dane Everitt
69f27ed807
Update and test variable validator logic 2020-10-10 16:46:56 -07:00
Dane Everitt
d8228f2da8
Allow passing empty values through for variables, covers with test, closes #2433 2020-10-10 16:45:24 -07:00
Dane Everitt
bf6e1ce966
Document what is being tested a little better so it isn't just a wall of code 2020-10-09 22:12:45 -07:00
Dane Everitt
c2db163731
Update node finding service logic to be single query; add test coverage 2020-10-09 22:01:25 -07:00
Dane Everitt
192a578a03
Add basic test coverage for server creation functionality 2020-10-09 21:08:27 -07:00
Dane Everitt
c59a2c436b
Don't waste time on a service better suited to an integration test 2020-10-08 22:34:52 -07:00
Dane Everitt
2560163655
Modify how deletion service works (actually fixes #2085); cover changes with test 2020-10-08 21:08:55 -07:00
Dane Everitt
7a643beee0
Add test coverage for startup modification 2020-10-08 20:38:21 -07:00
Dane Everitt
d087bebc93
Add some additional test coverage and clean up modification service and suspension service 2020-10-07 21:56:44 -07:00
Dane Everitt
83efb2d7b6
More fixes for broken unit tests 2020-10-05 21:54:29 -07:00
Dane Everitt
0c2bd416ee
Fix unit tests for eggs 2020-10-05 21:29:35 -07:00
Dane Everitt
0f4f2235a3
More Laravel-esq job processing 2020-10-05 20:46:41 -07:00
Dane Everitt
2d01c7b988
Reset is_processing state of a schedule when toggling active/inactive; closes #2425 2020-10-03 19:47:52 -07:00
Dane Everitt
2d56cacbab
Don't trigger a 500 error with bad data; closes #2442
This whole chunk of code needs some cleanup but I'll defer that for the new admin area in the future
2020-10-03 19:05:04 -07:00
Dane Everitt
4ff5de7e1b
decode before encoding URLs, closes #2440 2020-10-03 12:51:41 -07:00
Dane Everitt
99c9682f67
Fix errors with mounts; closes #2374 2020-10-03 12:42:27 -07:00
Dane Everitt
b4a9a7205d
speeling is hard 2020-10-03 12:14:39 -07:00
Dane Everitt
1616cf1318
Always show errors from HTTP exceptions correctly to the user; closes #2439 2020-10-03 11:18:14 -07:00
Caleb
4770af453b Removed loggin and reverted changes to webpack 2020-09-29 14:42:02 -04:00
Caleb
fb33824e10 Added admin controls.
Removed the note in the server settings that stated that the allocations feature is currently not implemented.

Properly check to make sure that there are allocations available in range before trying to create it.
2020-09-29 12:00:59 -04:00
Caleb
d80660f047 Added admin configuration
This is not working just yet but the fields have been added to the admin control area.
2020-09-28 16:14:14 -04:00
Caleb
8f8bd0be83 Added Automatic Allocations
Known issues:
- Port range to auto create is hard coded
- React interface is still a WIP.
2020-09-28 11:50:34 -04:00
Dane Everitt
f31a6d3967
Fix parameter bindings for client API routes; closes pterodactyl/panel#2359 2020-09-27 10:39:18 -07:00
Dane Everitt
cc6f98c0fd
Replace all instances of 255 as a max length with 191; ref #2421 2020-09-26 16:29:26 -07:00
Dane Everitt
3340ee7fd8
Fix bad encoding when handling files; closes #2399 2020-09-24 20:27:02 -07:00
Dane Everitt
711efe34bb
Truncate auto-generated usernames to 64 characters 2020-09-24 19:37:39 -07:00
Dane Everitt
c0fc9125ed
Fix database naming conventions; closes #2404 2020-09-24 19:31:42 -07:00
Dane Everitt
6a4914df3b
Properly validate schedule names; closes #2405 2020-09-24 19:25:34 -07:00
Dane Everitt
2182a15494
Don't return variables to users that they should not be able to see; closes #2388 2020-09-22 21:12:00 -07:00
Dane Everitt
7f9b21e486
Correctly show number of servers a user belongs to; closes #2375 2020-09-22 20:13:54 -07:00
Dane Everitt
1b0a6252f1
Fix undefined index error; closes #2378; closes #2391 2020-09-22 19:58:30 -07:00
Anand Capur
dda13f80c7
Fix empty array in node config YAML 2020-09-22 16:09:28 -07:00
Dane Everitt
0908830003
Fix error when loading nodes 2020-09-17 20:44:33 -07:00
Dane Everitt
c9883b5caf
Include resource total allocations; closes #1518 2020-09-17 20:44:24 -07:00
Dane Everitt
79f616f791
Fix authentication lockout when doing multiple SFTP uploads; closes #2221 2020-09-13 13:54:41 -07:00
Dane Everitt
7b57d65edf
Cleanup allocation repository 2020-09-13 12:47:05 -07:00
Dane Everitt
9410a54c98
Removed unused interface functions 2020-09-13 12:37:59 -07:00
Dane Everitt
8b4bd3945d
Fix user search in admin area; closes #2100 2020-09-13 12:35:48 -07:00
Dane Everitt
88300e5448
Support searching servers in admin area using name; closes #2100 2020-09-13 12:26:15 -07:00
Dane Everitt
d8c338df3e
Update all remaining code pathways to use new search tooling 2020-09-13 12:21:44 -07:00
Dane Everitt
f31dd4706c
Fix location controller searches 2020-09-13 11:59:52 -07:00
Dane Everitt
a66623d8e1
Fix user search via the API; ref #2100 2020-09-13 11:55:39 -07:00
Dane Everitt
703f55271d
Remove all references to daemon keys from the codebase 2020-09-13 11:38:42 -07:00
Dane Everitt
4dddcaebb0
Start ripping out old search functionality for models 2020-09-13 11:29:47 -07:00
Dane Everitt
3c7ffaaadb
Remove all references of packs from the Panel 2020-09-13 11:13:37 -07:00
Dane Everitt
6ec2ae9df8
Fix casting 2020-09-13 10:04:30 -07:00
Dane Everitt
9a21584c42
Cleanup mount code; automatically include the mount in the configuration 2020-09-13 09:59:54 -07:00
Dane Everitt
1077504c02
Rely on the test connection to the MySQL instance rather than trying to validate the host manually; closes #2311; closes #2282 2020-09-10 20:09:07 -07:00
Dane Everitt
b707147b73
Better handling of values that may need to be wrapped in quotes within the environment file, closes #2304 2020-09-01 19:45:24 -07:00
Dane Everitt
6ac12fc156
Disable integrity hashes by default, allow enabling with environment
Cloudflare auto-minifies our minified code even more (wat), which leads to issues with the resource hash, and then nothing loads. This is less likely to lead to support requests now.
2020-09-01 19:37:05 -07:00
Dane Everitt
981edb0d64
Require specific permission for reading the actual contents of a file; ref #2288 2020-08-31 19:36:30 -07:00
Dane Everitt
d87438621f
Don't allow opening of files we know cannot be edited; closes #2286 2020-08-30 10:25:48 -07:00
Dane Everitt
906cfce81c
Don't return a 403 when returning resources for a suspended server; closes #2279 2020-08-30 09:54:59 -07:00
Dane Everitt
6a442c1fd3
Don't send along egg information unecessarily 2020-08-30 09:40:19 -07:00
Dane Everitt
f293c73977
Return the broken rule in the validation error response 2020-08-27 21:15:23 -07:00
Dane Everitt
1967e3f7fd
Better backup storage 2020-08-27 19:59:01 -07:00
Dane Everitt
4b919cabd2
Correctly validation API calls to mark a backup as completed
Also block modifying a backup that is already marked as completed via the endpoint
2020-08-27 19:35:22 -07:00
Dane Everitt
e863683582
Treat validation errors the same as a normal error; match the output exactly 2020-08-27 19:26:52 -07:00
Dane Everitt
ac1559de5e
Revert "Less obtuse mounting code"
This reverts commit 9d95c5ab32.
2020-08-25 21:54:41 -07:00
Dane Everitt
179885b546
Add endpoint to return startup variables; send back modified startup when a variable is edited 2020-08-25 19:22:17 -07:00
Dane Everitt
d58fd72bf5
Correctly pass along startup variables for a server; closes #2255 2020-08-25 19:11:25 -07:00
Dane Everitt
9d95c5ab32
Less obtuse mounting code 2020-08-25 19:01:08 -07:00
Rémi Labergère
74cf92b2e1
Fix default values not applied in server creation 2020-08-24 18:50:25 +02:00
Dane Everitt
1e58e108ba
Update last location using wrong column name 2020-08-23 20:23:42 -07:00
Dane Everitt
034a310702
Use checksum more broadly, not specifically SHA256 2020-08-23 18:06:47 -07:00
Dane Everitt
5173f1f7e8
Don't allow editing read only values; closes #2252 2020-08-23 14:56:05 -07:00
Dane Everitt
92929c45d5
Fix query bug returning _all_ variables; closes #2250 2020-08-23 08:45:39 -07:00
Dane Everitt
813a671571
Hide startup line from API response if user doesn't have startup permissions 2020-08-22 19:01:42 -07:00
Dane Everitt
54f9c5f187
Merge branch 'develop' into feature/file-uploads 2020-08-22 18:33:09 -07:00
Dane Everitt
91cdbd6c2e
Support modifying startup variables for servers 2020-08-22 18:13:59 -07:00
Dane Everitt
1b69d82daa
Don't return things a user shouldn't be able to see via the API includes 2020-08-22 16:54:12 -07:00
Dane Everitt
cae604e79d
Include egg variables in the output from the API 2020-08-22 15:43:28 -07:00
Dane Everitt
e3178ba6f0
backend: support is_successful state for backups rather than deleting it when failing
This allows the UI to correctly show failed backups to the user and require them to manually delete those backups, rather than them mysteriously disappearing.

We can also hook into this later to send a notification to the user when the backup fails.
2020-08-20 21:07:53 -07:00
Dane Everitt
6066fa40f4
Prune server backups from the DB after 30 minutes if they still have not completed 2020-08-20 20:48:08 -07:00
Dane Everitt
540cc82e3d
Don't resolve database hosts; closes #2237 2020-08-19 20:38:51 -07:00
Dane Everitt
61e9771333
Code cleanup for subuser API endpoints; closes #2247 2020-08-19 20:21:12 -07:00
Dane Everitt
d41b86f0ea
Correctly pass along allowed IPs for client API keys, closes #2244 2020-08-17 19:48:51 -07:00
Dane Everitt
800b475ec5
Respond with the actual error from wings if available; closes #2224 2020-08-13 21:21:08 -07:00
Dane Everitt
95e8492c5d
What the heck are these abysmal timeouts; closes #2223 2020-08-06 20:25:35 -07:00
Dane Everitt
d1a28051f9
Support userInteraction and user_interaction because who needs this to be maintainable in the future... 2020-08-04 20:39:18 -07:00
Dane Everitt
c91c02f6a8
Fix for struct in Go 2020-08-04 20:38:24 -07:00
Dane Everitt
164d6ef2e4
Return egg "done" checks as an array rather than a string 2020-08-04 20:34:44 -07:00
Dane Everitt
0d089acf3d
Merge pull request #2191 from Sir3lit/googleanalytics2
Add Google Analytics Support
2020-08-01 16:55:06 -07:00
Dane Everitt
874d928a50
Correctly handle response from daemon for server stats; #2183 2020-07-29 20:34:06 -07:00
Charles Morgan
cb4f8efbe6
Add Google Analytics
Added Google Analytics to latest dev branch
2020-07-26 21:05:54 -04:00
Dane Everitt
f0ac0725b6
[Security] Don't return all servers on the system when not a root admin and admin level servers are requested
Cleaned up the API endpoint by simplifying the logic and adds test case to cover this bug.

If you ever need to list _all_ of the servers on the system you should be using the application API endpoint for the servers most likely.
2020-07-26 10:43:46 -07:00
Dane Everitt
d644758986
Always return the status code from the daemon if possible 2020-07-18 10:23:28 -07:00
Matthew Penner
b6e31096f0 Fix empty request body to wings when decompressing a file 2020-07-15 12:29:52 -06:00
Dane Everitt
1a6669aa5c
Add endpoint support for decompressing files 2020-07-14 21:16:49 -07:00
Dane Everitt
78c76d6df4
Ensure errors from daemon are wrapped correctly 2020-07-14 21:16:38 -07:00
Matthew Penner
1d2acbd5b4 Get basic file upload functionality working 2020-07-12 16:42:32 -06:00
Dane Everitt
0d35ab95fd
Merge pull request #1915 from pterodactyl/feature/server-mounts
Add configurable server mounts
2020-07-11 17:19:25 -07:00
Dane Everitt
2653321fc2
Support renaming multiple files at once 2020-07-11 16:00:30 -07:00
Dane Everitt
93cab68cc3
Handle mass actions for file deletion 2020-07-11 15:37:59 -07:00
Dane Everitt
82bc9e617b
Add support for compressing items in the file manager 2020-07-11 13:38:49 -07:00
Matthew Penner
295f09ca43
Merge branch 'develop' into feature/server-mounts 2020-07-11 12:29:30 -06:00
Dane Everitt
fdec3cea80
Fix nested directories being created incorrectly 2020-07-10 22:10:41 -07:00
Dane Everitt
a430ebb89e
Add test coverage for allocation routes 2020-07-10 21:17:28 -07:00
Dane Everitt
4122486468
Fix failing tests (which caught a bug in the new client query) 2020-07-09 21:32:31 -07:00
Dane Everitt
2278927fb6
Update allocations to support ids; protect endpoints; support notes 2020-07-09 20:36:08 -07:00
Dane Everitt
fc9054312d
Support modifying the primary allocation for a server 2020-07-09 19:56:46 -07:00
Dane Everitt
bfb28f949d
[Breaking] Return server allocations automatically as a relation object 2020-07-09 19:17:24 -07:00
Dane Everitt
7b5139b2b1
[Breaking] Return all server allocations in API response 2020-07-08 21:04:45 -07:00
Dane Everitt
d3c749ac56
Code cleanup & fix frontend searching servers; closes #2100 2020-07-06 21:25:00 -07:00
Dane Everitt
f0e18ba6f7
Code cleanup 2020-07-06 20:05:42 -07:00
DarthShmev
06ece0e624
Fix AuthenticateServerAccess middleware spelling issue. 2020-07-05 15:48:02 -04:00
Matthew Penner
29876e023b
Merge branch 'develop' into feature/server-mounts 2020-07-04 15:20:01 -06:00
Dane Everitt
7b75e7a648
Support using recovery tokens during the login process to bypass 2fa; closes #479 2020-07-02 23:01:02 -07:00