Commit graph

347 commits

Author SHA1 Message Date
Matthew Penner
b1d30c1bde Fix RolesContainer, refactor NestsContainer 2021-01-03 16:25:32 -07:00
Matthew Penner
ce40194147 Make pagination tabs dynamically update 2021-01-03 12:38:48 -07:00
Matthew Penner
052a6d4ce5 Get basic concept of pagination working on NestsContainer.tsx 2021-01-03 11:34:07 -07:00
Matthew Penner
88ac1ce1fd Cleanup code, add basic functionality for Nests 2021-01-01 15:55:30 -07:00
Matthew Penner
9c7b49e2b9 Add proper permissions for role application routes, allow admins to access application api 2020-12-28 12:47:08 -07:00
Matthew Penner
7369167e28 Fix problems after rebase, move RoleController to Api\Application 2020-12-27 22:02:30 -07:00
Dane Everitt
a7fef8b736
Correctly handle backups that fail without an upload_id attached to them 2020-12-27 11:56:28 -08:00
Dane Everitt
952715facc
Fix handling of upload IDs on backups 2020-12-27 11:34:55 -08:00
Matthew Penner
951d92b143 Store S3 upload_id in the database for backups 2020-12-26 11:59:21 -07:00
Dane Everitt
6c39288def
Clarify error messaging for transfers 2020-12-24 10:14:10 -08:00
Dane Everitt
25e53d9f22
Merge branch 'matthewpi/transfer-improvements' of https://github.com/Pterodactyl/Panel into matthewpi/transfer-improvements 2020-12-24 10:10:41 -08:00
Dane Everitt
2ee08a1a3d
Update logic for server transfer controller 2020-12-24 10:10:40 -08:00
Dane Everitt
6c61577699
Simplify logic in websocket control 2020-12-24 09:20:23 -08:00
Dane Everitt
6fa24d4979
Merge branch 'develop' into matthewpi/transfer-improvements 2020-12-24 09:17:21 -08:00
Dane Everitt
9a57011071
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-12-24 09:15:05 -08:00
Dane Everitt
087c41d5ac
Add endpoint to pull a remote file down 2020-12-24 09:15:03 -08:00
Dane Everitt
2f17e75395
Merge pull request #2879 from pterodactyl/fix/backups-failing-early
Allow changing the prune age for backups
2020-12-24 09:12:59 -08:00
Matthew Penner
d8f75fa0b7 Fix failed transfers locking a server into a unaccessible state 2020-12-17 11:14:58 -07:00
Matthew Penner
fd848985ee Add ServerTransferringException, use is_null 2020-12-17 10:35:54 -07:00
Matthew Penner
8d297a0918 Release reserved allocations upon archive failure 2020-12-17 10:35:54 -07:00
Matthew Penner
01926e2896 Improve logic for logging into the websocket of the target node 2020-12-17 10:35:54 -07:00
Matthew Penner
5c5e2e24f1 📯 tRaNsFeR lOgS 📯 2020-12-17 10:35:54 -07:00
Matthew Penner
e6c4a68e4a Update logic for tracking a server's transfer state 2020-12-17 10:35:54 -07:00
Dane Everitt
5d03c0d2e5
Properly handle loading files with special characters 2020-12-16 21:38:46 -08:00
Matthew Penner
e34d31a58c Allow changing the prune age for backups 2020-12-16 14:15:07 -07:00
Dane Everitt
5bbb36b3cf
Support updating docker image for a server from the frontend 2020-12-13 11:07:29 -08:00
Dane Everitt
3e65a2d055
Pass one at unfucking the stupid file encoding issues 2020-12-08 21:24:17 -08:00
Matthew Penner
00429c3911 Cleanup remote backup controllers 2020-12-06 15:19:54 -07:00
Matthew Penner
a5cebd6bcf s3 backups: handle CompleteMultipartUpload and AbortMultipartUpload on the panel instead of in wings, add BACKUP_PRESIGNED_URL_LIFESPAN environment variable 2020-12-06 13:53:55 -07:00
Dane Everitt
11054de5b3
Attempt revocation of JWT access when changing a server's owner
closes #2771
2020-12-06 12:16:12 -08:00
Dane Everitt
af360d49dd
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-12-06 12:01:43 -08:00
Dane Everitt
a8d9eccf9c
Support pagination of server backups, closes #2787 2020-12-06 12:01:42 -08:00
Matthew Penner
8611ebb2d6 Add /api/client/servers/{server}/files/chmod endpoint 2020-12-04 09:24:06 -07:00
Dane Everitt
f99ac0ecde
Fix some failing test cases 2020-11-06 22:33:39 -08:00
Dane Everitt
625fd92130
Fix URKL encoding hellscape; closes #2664 closes #2663 2020-11-06 20:47:03 -08:00
Dane Everitt
009f9c297d
Revoke JWT JTIs when modifying a subuser's permissions 2020-11-03 21:01:15 -08:00
Dane Everitt
964a1436ce
Code cleanup for signed URL generation endpoint 2020-11-01 14:46:01 -08:00
Matthew Penner
6af848ccea Tweaks to BackupRemoteUploadController.php 2020-11-01 15:27:43 -07:00
Matthew Penner
63ac81586d Tweaks to BackupRemoteUploadController.php 2020-11-01 15:27:43 -07:00
Matthew Penner
85af073438 Switch to s3 multipart uploads for backups 2020-11-01 15:27:43 -07:00
Dane Everitt
23d2352a9b
Don't ever return per_page as a string here... 2020-11-01 14:27:14 -08:00
Dane Everitt
d493685518
Add test coverage for allocation assignment endpoint 2020-10-31 21:57:27 -07:00
Dane Everitt
b2be067f38
Support deleting an allocation for a server 2020-10-31 21:22:44 -07:00
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
65d04d0c05
Correctly handle schedule task deletion and avoid errors; closes #2534 2020-10-22 20:54:58 -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
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
8697185900
Fix up database creation and handling code for servers; ref #2447 2020-10-11 11:59:46 -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
2560163655
Modify how deletion service works (actually fixes #2085); cover changes with test 2020-10-08 21:08:55 -07:00
Dane Everitt
83efb2d7b6
More fixes for broken unit tests 2020-10-05 21:54:29 -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
4ff5de7e1b
decode before encoding URLs, closes #2440 2020-10-03 12:51:41 -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
3340ee7fd8
Fix bad encoding when handling files; closes #2399 2020-09-24 20:27:02 -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
79f616f791
Fix authentication lockout when doing multiple SFTP uploads; closes #2221 2020-09-13 13:54:41 -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
981edb0d64
Require specific permission for reading the actual contents of a file; ref #2288 2020-08-31 19:36:30 -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
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
1e58e108ba
Update last location using wrong column name 2020-08-23 20:23:42 -07:00
Dane Everitt
5173f1f7e8
Don't allow editing read only values; closes #2252 2020-08-23 14:56:05 -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
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
61e9771333
Code cleanup for subuser API endpoints; closes #2247 2020-08-19 20:21:12 -07: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
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
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
Dane Everitt
fdec3cea80
Fix nested directories being created incorrectly 2020-07-10 22:10:41 -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
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
Dane Everitt
a998b463e3
Generate recovery tokens when enabling 2FA on an account 2020-07-02 21:55:25 -07:00
Dane Everitt
28c5729e48
Add test coverage for creating tasks 2020-06-28 14:41:22 -07:00
Dane Everitt
b9a451b528
Add test coverage for schedules 2020-06-28 13:50:07 -07:00
Dane Everitt
63bc4080d5
Add test coverage for reinstall & server renaming 2020-06-28 10:40:41 -07:00
Dane Everitt
4cb4dfecc8
Add test coverage for generating JWTs to connect to websocket 2020-06-28 10:16:15 -07:00
Dane Everitt
4cb95d8063
Add test coverage for 2fa 2020-06-27 11:06:35 -07:00
Dane Everitt
a81f6882f7
Add test coverage for API key generation and deletion 2020-06-25 22:36:58 -07:00
Dane Everitt
7a5f7b99a7
Add integration test covering account endpoint 2020-06-25 22:12:09 -07:00
Dane Everitt
8fb21a5048
Fix error while updating user 2020-06-25 21:42:21 -07:00
Dane Everitt
b78aa180ea
Prevent creating a new database via the application API if server is at its limit; closes #2129 2020-06-23 20:07:37 -07:00
Dane Everitt
693b9eab0c
Fix handling of backup tasks; closes #2067 2020-06-18 21:00:04 -07:00
Dane Everitt
225ef2917a
Support downloading and deleting S3 backups 2020-05-09 19:43:58 -07:00
Dane Everitt
2cf1c7f712
Fix handling of SFTP authorization; closes #1972 2020-04-25 11:48:49 -07:00
Dane Everitt
973591d86e
Add basic support for backups via the scheduled tasks system 2020-04-19 19:43:41 -07:00
Dane Everitt
a1c3730861
Update frontend to only allow selection of valid permissions for subusers 2020-04-19 11:58:26 -07:00
Dane Everitt
00b0d30c60
Fix handling for backups; correctly send along ignored files & directories 2020-04-18 23:26:59 -07:00
Dane Everitt
81f7734df2
Update endpoints for managing backups 2020-04-17 10:21:51 -07:00
Dane Everitt
e969344f3b
Fix display of navbar links to admins, closes #1920 2020-04-17 10:21:15 -07:00
Dane Everitt
fda88940f7
Fix up node autodeployment 2020-04-12 17:20:09 -07:00
Matthew Penner
ea8f7bb5b6
Merge branch 'develop' into enhancement/new-server-admin 2020-04-11 23:04:48 -06:00
Dane Everitt
60f6e86b8b
Remove all of the old references to unused interfaces outside the test code 2020-04-11 15:35:32 -07:00
Matthew Penner
432e28b6bb Fix all StyleCI errors and probably break everything in the process 2020-04-11 14:07:40 -06:00
Matthew Penner
658a959e5d Fix trailing comma in DaemonAuthenticate.php, change ServerDetailsController.php to use node authentication 2020-04-10 17:54:50 -06:00
Matthew Penner
94d46affb8
Merge branch 'develop' into enhancement/wings-improved-server-loading 2020-04-10 16:23:46 -06:00
Dane Everitt
7557dddf49
Store node daemon tokens in an encrypted manner 2020-04-10 15:15:38 -07:00
Matthew Penner
87e95f4195 Fix StyleCI 2020-04-10 13:08:43 -06:00
Matthew Penner
42fb9fdbd9 Add the ability for a node to fetch a list of all servers it has been assigned 2020-04-10 13:04:11 -06:00
Dane Everitt
06707fd33a
Better throttling of backup generation 2020-04-09 22:35:38 -07:00
Dane Everitt
c1a7e4ebe1
Merge branch 'develop' of https://github.com/Pterodactyl/Panel into develop 2020-04-09 22:08:16 -07:00
Dane Everitt
9ba6aaebde
Move actions into context menu, add support for deleting a backup 2020-04-09 22:08:09 -07:00
Lance Pioch
78e03cb9b2
Update AccountController.php 2020-04-08 02:59:38 -04:00
Lance Pioch
f9e6df5d71
Change to new password instead 2020-04-07 19:25:11 -04:00
Dane Everitt
b1e7e0b8b0
Simplify handling of permissions for websocket, only send permissions the user actually has 2020-04-06 21:03:00 -07:00
Dane Everitt
a924eb56cc
Fix file and backup downloading to use URL returned by server 2020-04-06 20:28:14 -07:00
Matthew Penner
2f506d564b
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 20:56:37 -06:00
Dane Everitt
be05d2df81
Add support for generating a signed URL for downloading a file from the daemon 2020-04-04 19:54:59 -07:00
Matthew Penner
b395440e4e Check that the selected daemon is online for a transfer, delete the server from the old node when a transfer is successful 2020-04-04 18:28:09 -06:00
Matthew Penner
7b518325c4
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 17:09:39 -06:00
Dane Everitt
15b436d26e
Add endpoints required to store the results of a backup 2020-04-04 16:07:09 -07:00
Matthew Penner
fd4de9168a
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 16:28:02 -06:00
Matthew Penner
5c7c1f60cf Fix StyleCI issues #2 2020-04-04 16:25:41 -06:00
Matthew Penner
142bf16aae Fix StyleCI issues 2020-04-04 16:24:58 -06:00
Matthew Penner
454ce6ce45 Add successful column to server_transfers table, get server transfers working properly :) 2020-04-04 16:16:18 -06:00
Matthew Penner
6ba6c34252 Add ServerTransfer relation in Models/Server.php, notify the new daemon about the incoming server transfer 2020-04-04 14:10:18 -06:00
Dane Everitt
d27f0c6f2a
Basic backend support to at least store a backup model in the DB 2020-04-04 12:26:39 -07:00
Dane Everitt
9991989f89
Very basic implemention of frontend logic required to display backups and create a new one 2020-04-04 10:59:25 -07:00
Matthew Penner
5007ce0b1c Get to the point where we can start notifying the other daemon, remove TransferJob.php, add DaemonTransferRepository.php 2020-04-04 00:50:12 -06:00
Dane Everitt
85e3945cd7
Add support for client-side server reinstallation 2020-04-03 14:43:24 -07:00
Dane Everitt
cb945b1f13
Fix permissions handling; do not allow a subuser to assign permissions they do not have 2020-03-27 16:57:49 -07:00
Dane Everitt
39f79a8f3c
Finish cleaning up subuser view 2020-03-27 16:42:27 -07:00
Dane Everitt
1270e51248
Add support for deleting a subuser from a server 2020-03-27 15:32:33 -07:00
Dane Everitt
a6f46d36ba
Implement basic code for creating/updating a subuser 2020-03-27 14:23:13 -07:00
Dane Everitt
51c5cf4dbb
Get basic modal view for editing/creating a new subuser working 2020-03-25 21:58:37 -07:00
Dane Everitt
8d52e2e1a7
Finalize API key management for accounts 2020-03-22 19:10:49 -07:00
Dane Everitt
933a4733e8
Add base support for creating a new API key for an account 2020-03-22 18:15:38 -07:00
Dane Everitt
32f25170f1
Pass at removing extraneous permissions table and using native MySQL JSON 2020-03-22 16:56:00 -07:00
Dane Everitt
23d594f655
Update all of the permissions checking to be constant based 2020-03-22 15:31:25 -07:00
Dane Everitt
1e0d630e1f
Finish building out schedule management functionality 2020-03-22 13:56:15 -07:00
Dane Everitt
ef38a51d6d
Add base support for editing an existing task 2020-03-18 22:28:32 -07:00