Commit graph

461 commits

Author SHA1 Message Date
Dane Everitt
ccecaa6694
Add basic auditing for filesystem actions
Specifically skipping read actions since there isn't much to say there, and it generally wouldn't be very helpful (plus, likely to generate lots of logs).
2021-01-17 11:46:08 -08:00
Dane Everitt
b15679d3bb
Add base logic for audit logging 2021-01-17 10:49:36 -08:00
Charles Morgan
ffeedf17e4 Adds months for schedules
Adds month variable for schedules
2021-01-16 22:07:39 -05:00
Dane Everitt
239984f92c
Add internal support for file denylist on eggs; closes #569 2021-01-10 17:02:14 -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
2ee08a1a3d
Update logic for server transfer controller 2020-12-24 10:10:40 -08: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
5bbb36b3cf
Support updating docker image for a server from the frontend 2020-12-13 11:07:29 -08:00
Dane Everitt
78c4ac80bc
Basic implemention of multiple selectable images for an egg
The admin side of this is quite ugly when creating/editing a server, but I'm not putting effort into that right now with React Admin soon™
2020-12-13 09:53:17 -08:00
Dane Everitt
802f88fc78
Merge branch 'develop' into permissions 2020-11-08 11:47:45 -08:00
Dane Everitt
c20d53bb17
Always return the primary allocation for a server, even without the allocation permissions 2020-11-07 09:57:53 -08:00
Charles Morgan
b2d2a931a9
Add missing descriptions for permissions 2020-11-03 16:11:59 -05:00
Dane Everitt
95d605c1e3
Fix validation schema 2020-11-02 20:24:11 -08:00
Dane Everitt
7618f306bd
Support functionality for per-egg features 2020-11-02 20:20:36 -08:00
Matthew Penner
85af073438 Switch to s3 multipart uploads for backups 2020-11-01 15:27:43 -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
092c942764
Fix server owner filtering; improve searching for servers; closes #2581 2020-10-25 17:29:57 -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
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
c1ee0ac4f8
Add support for executing a scheduled task right now 2020-10-14 20:38:59 -07: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
18fce37565
Fix subuser permissions not migrating correctly from 0.7; closes #2309 2020-10-11 15:13:17 -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
99c9682f67
Fix errors with mounts; closes #2374 2020-10-03 12:42:27 -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
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
Anand Capur
dda13f80c7
Fix empty array in node config YAML 2020-09-22 16:09:28 -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
981edb0d64
Require specific permission for reading the actual contents of a file; ref #2288 2020-08-31 19:36:30 -07:00
Dane Everitt
ac1559de5e
Revert "Less obtuse mounting code"
This reverts commit 9d95c5ab32.
2020-08-25 21:54:41 -07:00
Dane Everitt
9d95c5ab32
Less obtuse mounting code 2020-08-25 19:01:08 -07:00
Dane Everitt
034a310702
Use checksum more broadly, not specifically SHA256 2020-08-23 18:06:47 -07:00
Dane Everitt
92929c45d5
Fix query bug returning _all_ variables; closes #2250 2020-08-23 08:45:39 -07:00
Dane Everitt
91cdbd6c2e
Support modifying startup variables for servers 2020-08-22 18:13:59 -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
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
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
Matthew Penner
295f09ca43
Merge branch 'develop' into feature/server-mounts 2020-07-11 12:29:30 -06: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
d3c749ac56
Code cleanup & fix frontend searching servers; closes #2100 2020-07-06 21:25:00 -07: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
Dane Everitt
a998b463e3
Generate recovery tokens when enabling 2FA on an account 2020-07-02 21:55:25 -07:00
Dane Everitt
fc261fe20c
Add test cases for client servers endpoint 2020-06-27 10:35:02 -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
Matthew Penner
3338c49831 Fix Validable class on ServerTransfer.php 2020-06-06 11:37:43 -06:00
Matthew Penner
65393914c3 Send mounts when wings fetches server information, fix issue with mount fields not being updated 2020-05-21 15:14:09 -06:00
Matthew Penner
0eb29dac9c Add mount_server table, fix wrong field type on other many to many tables, add routes for mounting and unmounting mounts on a server, finish server admin mounts page 2020-05-21 14:23:12 -06:00
Matthew Penner
77150b2551 Add increment id to mount, add basic mount view page 2020-05-20 19:17:35 -06:00
Matthew Penner
976b669059 Make StyleCI happy 2020-05-20 18:57:30 -06:00
Matthew Penner
a4af8ec977 Add the ability to create mounts 2020-05-20 18:55:59 -06:00
Matthew Penner
00d1b5861a Properly setup Mount model, add database migration, get mount admin page added 2020-05-20 18:07:56 -06:00
Matthew Penner
59a150148a feature/server-mounts initial commit 2020-05-20 17:29:03 -06:00
Dane Everitt
3b2e2c63c6
Only show relevant configuration; update default path to be what the daemon expects 2020-05-09 15:44:13 -07:00
Charles Morgan
c3da5f0c0c
Update Node.php
No longer needed in wings config.
2020-05-09 01:03:36 -04:00
Dane Everitt
41845ffdad
Backups cannot be nullable 2020-05-04 19:06:20 -07:00
Dane Everitt
b774622faa
Add base support for AWS/Wings backup adapters 2020-04-26 16:07:36 -07:00
Dane Everitt
f1c3762f4d
Add base support for definining the number of backups that can be created for a server 2020-04-26 12:12:29 -07:00
Dane Everitt
72ecac5236
Merge pull request #1963 from Sir3lit/maxconn
Add Max Concurrent Connections for database users
2020-04-25 11:01:01 -07:00
Dane Everitt
0385d2a05c
Merge pull request #1939 from Sir3lit/optionaldesc
Allow description fields to be optional
2020-04-23 20:37:02 -07:00
Charles Morgan
e3303f7a60 Change validation rule
Change validation rule to
2020-04-23 14:59:47 -04:00
Charles Morgan
82dd7dc8e3 Allow Null = 0
Allow Value to be nullable, will autofill 0 if value is null or 0, to facilitate "unlimited" connections.
2020-04-23 10:45:44 -04:00
AreYouScared
f0e4764a11 Add Max Concurrent Connections for database users
Closes #1849

Allows database users to be limited to a number of concurrent connections to prevent one user from connecting hundreds of time and bottlenecking the MySQL server.
2020-04-22 06:00:04 -04:00
Dane Everitt
00b0d30c60
Fix handling for backups; correctly send along ignored files & directories 2020-04-18 23:26:59 -07:00
AreYouScared
21491e3aaa Allow descrition field to be optional
Allows for Nest, Node, Location and Egg description fields to be blank / nullable.
Removed "required" wording next to them aswell
2020-04-17 20:52:40 -04:00
Dane Everitt
e969344f3b
Fix display of navbar links to admins, closes #1920 2020-04-17 10:21:15 -07:00
Dane Everitt
7557dddf49
Store node daemon tokens in an encrypted manner 2020-04-10 15:15:38 -07:00
Jakob Schrettenbrunner
a1f4baa800 re-enable auto-deploy daemon endpoint 2020-04-10 17:38:20 +02: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
fd4de9168a
Merge branch 'develop' into feature/server-transfers-actually 2020-04-04 16:28:02 -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
25b0e86730
backup names don't actually matter all that much, they don't get used as file names 2020-04-04 12:30:29 -07: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
6d426e45d9
Whoops, remove this too 2020-04-04 11:57:50 -07:00
Dane Everitt
5f42325284
Don't trigger a recursive nesting call 2020-04-04 11:37:10 -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
86b7b6ecc3 Add Models/ServerTransfer.php 2020-04-04 11:37:44 -06: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