Commit Graph

1108 Commits

Author SHA1 Message Date
Lance Pioch ba96829d13 Fix cron jobs by removing the extra unusable argument 2018-05-13 00:42:25 -04:00
Xander Smeets 5f6ee45f44 Fixed typo (#1134) 2018-05-06 11:22:30 -07:00
stanjg 095d85bb60
Added the server as argument, and improved the bug fix 2018-05-06 17:59:11 +02:00
stanjg 06a67bb4bb
Cleaned up some duplicate code 2018-05-05 10:39:20 +02:00
stanjg 28a97fea54
Polished it up 2018-05-04 22:48:43 +02:00
stanjg 93a7d11c28
Made a base 2018-05-04 18:45:37 +02:00
stanjg 86c8ecdcdf
Added the actual logic 2018-05-04 15:02:51 +02:00
stanjg 17a72d0895
StyleCI fixes 2018-05-04 14:05:42 +02:00
stanjg 9ae25538c3
Made it so users can switch languages themselves 2018-05-04 13:08:41 +02:00
stanjg 9a06647435
Added support for user specific languages 2018-05-04 12:56:30 +02:00
Lance Pioch 88fd83d413 Remove unused imports (#1102) 2018-04-08 15:37:27 -05:00
Lance Pioch ceff5acb85 Public is just the boolean (#1101) 2018-04-08 15:36:40 -05:00
Dane Everitt 68f0811273
Merge branch 'feature/api-integration-testing' into develop 2018-03-26 19:55:28 -05:00
Stan f1a76ec7fd Add description field to nodes (#1065) 2018-03-26 13:57:24 -05:00
Stan 56478d81da Added cast for 'public' field (#1085)
The missing cast was resulting in the API to send a 0 or 1 instead of true or false for the public field
2018-03-26 13:56:58 -05:00
Dane Everitt 565c5ddc52
Add integration tests for nests 2018-03-25 17:41:36 -05:00
Dane Everitt bde4d4187f
Merge branch 'develop' into feature/api-integration-testing 2018-03-21 22:25:16 -05:00
Dane Everitt b96c2d16ee
Added validation to variable validation rules to validate that the validation rules are valid
closes #988
2018-03-17 15:09:09 -05:00
Dane Everitt 3e2ac981a9
Add API endpoint for getting server resource utilization, closes #900
This endpoint is throttled to 15 requests per minute to avoid destroying the daemon since clients can use it.
2018-03-17 14:01:53 -05:00
Dane Everitt 21cd0688e0
Added giant warning message if you attempt to change an encryption key once one has been set. 2018-03-10 15:18:24 -06:00
Dane Everitt f8e98e9c9e
Add ability to change server name, closes #563 2018-03-10 14:44:21 -06:00
Dane Everitt e55d3c1a9a
Add check on SFTP page to make sure the permission is assigned before showing 2018-03-10 14:26:00 -06:00
Dane Everitt abd2a42471
Fix data integrity exception thrown when attempting to store updated server egg variables 2018-03-10 13:55:24 -06:00
Dane Everitt 40c74ae1e7
Add validation to prevent invalid ports, closes #1034 2018-03-10 13:10:40 -06:00
Dane Everitt e5c59c4984
Change exception handling for display exception 2018-03-10 13:02:41 -06:00
Dane Everitt ef371a508d
Change check on debugbar to use debug not environment 2018-03-10 12:03:23 -06:00
Dane Everitt dfb002fb33
Change config value for daemon 2018-03-08 23:35:36 -06:00
Dane Everitt 5839034e8f
Fix egg copy from, closes #995 2018-03-06 23:07:00 -06:00
Dane Everitt 4964d294f6
Throw 504 where necessary 2018-03-06 22:17:01 -06:00
Dane Everitt ac9f83a8fe
Fix test to run with new bootstrapping 2018-03-04 22:42:33 -06:00
Dane Everitt e8ea218f20
Add integration test for remaining application api user endpoints 2018-03-04 22:35:57 -06:00
Dane Everitt bbbab4bf81
Handle error codes from custom rules better 2018-03-04 22:21:23 -06:00
Dane Everitt e2aa01c9cc
First go at integration tests 2018-03-04 16:30:16 -06:00
Dane Everitt 36837df0a6
Use beginning of UUID for server uuidShort 2018-03-03 22:20:53 -06:00
Dane Everitt 85e75a2808
Fix bulk key revocation 2018-03-03 21:53:07 -06:00
Dane Everitt d7efb4c4a2
Fix inability to revoke admin tokens from daemon 2018-03-03 21:45:10 -06:00
Dane Everitt a4f03f5d02
Handle missing daemon keys better and fix subuser missing key errors 2018-03-03 21:31:44 -06:00
Dane Everitt 6d217869e0
Don't load daemon key on server models automatically. 2018-03-03 18:09:49 -06:00
Dane Everitt a31334c0c5
Fix SQl queries being executed unnecessarily when listing servers 2018-03-03 18:00:23 -06:00
Dane Everitt c739f292e4
paginate databases when viewing a host 2018-03-03 17:52:35 -06:00
Dane Everitt dff7e8f734
Fix server creation in UI and API 2018-03-02 23:11:30 -06:00
Dane Everitt 0135f7ee8e
Add test for new command 2018-03-02 21:26:42 -06:00
Dane Everitt 021710aa1c
Add bulk power management via CLI 2018-03-02 20:58:58 -06:00
Dane Everitt c6137db529
Fix build limit management in Admin CP 2018-03-02 19:49:09 -06:00
Dane Everitt e39353a18d
Add tests for new service 2018-03-02 19:37:21 -06:00
Dane Everitt bcb69603ad
Add support for user management of databases 2018-03-02 19:03:55 -06:00
Dane Everitt 07893effa3
Add initial go at user created databases for servers, still needs cleaning 2018-03-01 21:27:37 -06:00
Dane Everitt 87b96bdfc8
Add core logic to allow for limited databases and allocations 2018-03-01 20:08:27 -06:00
Dane Everitt 5f6c153537
Validate resource existence before validating data sent 2018-03-01 20:00:14 -06:00
Dane Everitt 070239abcf
Fix inability to edit certain environment vars and start line, closes #1008 2018-03-01 19:26:11 -06:00
Dane Everitt 85bdbdce14
Better handling of file download requests 2018-03-01 19:19:19 -06:00
Dane Everitt 838b9a9093
Add support for filesystem caching, closes #993 2018-03-01 18:46:59 -06:00
Dane Everitt ab2973c4d1
Add pack transformer support 2018-03-01 18:43:39 -06:00
Dane Everitt 0a39a9b6bf
Don't require an environment variable to be present if none are required anyways, closes #1007 2018-03-01 18:35:53 -06:00
Dane Everitt 8f72571895
Fix IP access middleware 2018-02-28 23:39:59 -06:00
Dane Everitt 9b93629f45
Add UI for client API keys 2018-02-28 23:30:39 -06:00
Dane Everitt 2017e640b6
Add client API 2018-02-28 22:51:04 -06:00
Dane Everitt 4e12c289ed
Add command sending 2018-02-27 22:09:34 -06:00
Dane Everitt cef3e4ced4
Add base routes for managing servers as a client 2018-02-27 21:28:43 -06:00
Dane Everitt 9a32b9fd03
Merge branch 'develop' into feature/client-api 2018-02-27 21:04:18 -06:00
Dane Everitt 23e07689a7
Handle 404 errors in API bindings correctly to avoid explosing that a resource exists before validating a key 2018-02-27 21:04:04 -06:00
Dane Everitt d4e331c20a
Merge branch 'develop' into feature/client-api 2018-02-27 19:49:06 -06:00
Dane Everitt a765e0dbb6
closes #991 2018-02-27 19:43:47 -06:00
Dane Everitt 4cfb8941d5
Fix broken users table in database causing validation errors. 2018-02-25 16:08:01 -06:00
Dane Everitt e28973bcae
Move everything around as needed to get things setup for the client API 2018-02-25 15:30:56 -06:00
Dane Everitt 8daf97021a
Add ability to modify external id for a server 2018-02-25 14:45:16 -06:00
Dane Everitt 6a4b5e04e2
Fix broken external_id handling when creating servers 2018-02-25 14:43:40 -06:00
Dane Everitt bdbed7706d
Set much higher throttle limits by default 2018-02-24 16:00:53 -06:00
Dane Everitt 5c4200dc0c
Make external_id fillable 2018-02-24 14:47:53 -06:00
Dane Everitt fb1b2406b5
Add API endpoint to get a server by external ID 2018-02-24 14:09:09 -06:00
Dane Everitt a1e704d3a7
Add back server sidebar list 2018-02-24 13:58:48 -06:00
Dane Everitt 5b6d3b8325
Slightly more clear errors 2018-02-24 12:27:41 -06:00
Dane Everitt baeffef24b
Fix bad permissions check on server API route 2018-02-24 12:15:21 -06:00
Dane Everitt 807521b97c
Fix schedules with no names being uneditable 2018-02-24 12:04:14 -06:00
Dane Everitt 633bba6d6e
Add support for external_id on servers, closes #975 2018-02-24 11:57:12 -06:00
Dane Everitt f655188c58
Fix searching servers 2018-02-24 11:48:24 -06:00
Dane Everitt be6b398e2d
add support for egg variables, closes #974 2018-02-24 11:17:21 -06:00
Dane Everitt 620c624e6f
Fix exception thrown when accessing /nests/:id/eggs/:id API endpoint 2018-02-24 11:11:57 -06:00
Dane Everitt e7e50bc45d
Add a few new internal configs to the node config 2018-02-18 20:39:43 -06:00
Dane Everitt 0341dbdfad
Add very basic cache busting 2018-02-18 15:15:53 -06:00
Dane Everitt 1eb76c4457
Log more information for PDOExceptions while also keeping passwords out. 2018-02-18 14:31:40 -06:00
Dane Everitt 4b9f025e98
Fix exception when trying to edit a host, ref #957 2018-02-18 14:10:12 -06:00
Dane Everitt 541b9ec7f5
Fix database name using d#_ rather than s#_, ref #957 2018-02-18 13:46:42 -06:00
Dane Everitt 3fb02a4b3c
Fix FQDN failing validation in database host UI, ref #957 2018-02-18 13:43:54 -06:00
Dane Everitt c61c2bc5fd
Fix User model validation behavior, closes #950 2018-02-18 13:29:28 -06:00
Dane Everitt 50809cad36
Fix exception when no 2FA token is entered when enabling or disabling 2018-02-18 13:15:10 -06:00
Dane Everitt e9680fc29c
Fix for StyleCI 2018-02-17 16:21:37 -06:00
ShadowKitten d8be167a9c Add support for allowing subusers to access SFTP. (#918) 2018-02-17 16:10:44 -06:00
Dane Everitt f61a5fa0cb
Use left join, not inner here 2018-02-17 15:52:41 -06:00
Dane Everitt 7562e501af
Fix an auto deployment bug causing a node to be ignored if it had no servers already attached to it
closes #919
2018-02-17 15:51:28 -06:00
Dane Everitt d86c35d80f
Prevent duplicate allocations for servers 2018-02-17 13:53:38 -06:00
Dane Everitt 241f7d0125
Fix some data integrity issues 2018-02-17 13:37:53 -06:00
Dane Everitt d52f8d9215
Fix behavior of validation when creating egg variables 2018-02-17 13:09:54 -06:00
Dane Everitt 303b64ced1
Fix improperly named mailgun environment variable, closes #942 2018-02-17 13:00:11 -06:00
Dane Everitt 8e1aa15dba
Fixes a bug that would cause non-editable variables on the front-end to throw a validation error 2018-02-15 20:58:51 -06:00
Dane Everitt e2cdb3b4b1
Add test cases for services 2018-02-11 17:32:45 -06:00
Dane Everitt 3ecab82358
Fix exception when empty default value is passed for an egg variable, closes #934 2018-02-11 16:47:50 -06:00
Dane Everitt bf537922a3
Fix username validation and auto-generation, closes #927 2018-02-11 16:39:50 -06:00
Dane Everitt cfb7415e2a
Fix data integrity exception, closes #922 2018-02-10 14:01:49 -06:00
Dane Everitt db29b04c39
Fix improper allocation id validation on API 2018-02-07 22:50:22 -06:00
Dane Everitt a9c1946319
Add support for finding a user by external ID. 2018-02-07 21:56:11 -06:00
Dane Everitt 2e693067b8
Add search to API endpoints 2018-02-07 21:33:44 -06:00
Dane Everitt dd54c5abb1
Fix user password handling in Admin CP 2018-02-07 21:13:40 -06:00
Dane Everitt 2ec76d283b
Fix bad API behavior 2018-02-04 15:38:38 -06:00
Dane Everitt d4d9eda57a
Add schedule edit support 2018-02-04 13:51:24 -06:00
Dane Everitt f42bc8a031
Cleanup exception reporting, stop logging PDO exception stacks.
PDOException stacks include the MySQL password for the connection attempt and many people do not realize this when providing logs.
2018-02-04 13:31:39 -06:00
Dane Everitt ff8b5fc5a3
Fix exception when modifying existing DB host, closes #910 2018-02-04 12:59:14 -06:00
Dane Everitt de1d9502c1
fix error when resetting daemon secret, closes #915 2018-02-04 12:55:50 -06:00
Dane Everitt 0b00895261
fix saving of egg variable values, closes #905 2018-02-03 12:36:57 -06:00
Dane Everitt d9355b93b4
Fix exception when adjusting mail settings, closes #907 2018-02-03 12:28:39 -06:00
Dane Everitt 48c933fa0f
fix exception when deleting allocations, closes #908 2018-02-03 12:22:10 -06:00
Dane Everitt ffa09d81e2
Pass strings for deletion of user sessions, closes #906 2018-02-03 12:18:18 -06:00
Dane Everitt 7a19019980
Fix suspension/installed handling for servers
closes Pterodactyl/Panel#891
2018-01-30 22:40:21 -06:00
Dane Everitt c599112021
Finalize server management API 2018-01-30 20:36:59 -06:00
Dane Everitt 1be7805481
Add line? 2018-01-28 17:14:34 -06:00
Dane Everitt 5ed164e13e
Implement server creation though the API.
Also implements auto-deployment to specific locations and ports.
2018-01-28 17:14:14 -06:00
Dane Everitt 97ee95b4da
Fix some error handling 2018-01-27 13:26:43 -06:00
Dane Everitt 8afced3410
Add nests & eggs
Cleanup middleware handling and parameters on controllers...
2018-01-27 12:38:56 -06:00
Dane Everitt de07b3cc7f
Add server database management support to API. 2018-01-25 22:34:53 -06:00
Dane Everitt 2bd691efad
Add database list endpoint, add more resource name magic 2018-01-25 21:26:06 -06:00
Dane Everitt 407120a854
Merge branch 'develop' into feature/api-v1 2018-01-21 17:06:31 -06:00
Dane Everitt 655d2485b5
Fix error causing inability to save variables. 2018-01-21 17:02:25 -06:00
Dane Everitt aca0819bcd
Add server build management to API 2018-01-21 16:02:03 -06:00
Dane Everitt d3dba3fcf9
Fix bug when modifying server descriptions 2018-01-21 14:45:20 -06:00
Dane Everitt faaf27632c
Fix behavior on automatic resource name setter 2018-01-21 14:37:57 -06:00
Dane Everitt 8dcab927e5
Merge branch 'develop' into feature/api-v1 2018-01-21 14:31:32 -06:00
Dane Everitt c369151397
Allow editing symlinked files 2018-01-21 14:24:59 -06:00
Dane Everitt c69f48ad83
Fix filemanager file edit bug, closes #867 2018-01-21 12:31:41 -06:00
Dane Everitt 2212f28351
Don't break the page if no variable rules are provided. 2018-01-21 11:58:59 -06:00
Dane Everitt 62fd299fa2
Fix some egregious search and replace action... 2018-01-21 11:38:16 -06:00
Dane Everitt 17f6f3eeb6
Add server details modification endpoint to API. 2018-01-20 16:03:23 -06:00
Dane Everitt 3e327b8b0e
Use more logical route binding to not reveal resources on the API unless authenticated. 2018-01-20 15:33:04 -06:00
Dane Everitt 17544481b5
More server management via the API 2018-01-20 13:48:02 -06:00
Dane Everitt 3724559468
Forgotten changes 2018-01-19 21:48:26 -06:00
Dane Everitt a497a3d153
Make server listing and single server view API endpoints work 2018-01-19 21:47:06 -06:00
Dane Everitt 74bdbea6a4
Sneaky files 2018-01-19 20:01:56 -06:00
Dane Everitt 0e7f8cedf0
Reorganize API files 2018-01-19 19:58:57 -06:00
Dane Everitt bdadec002c
Push updates to server transformer 2018-01-18 21:56:12 -06:00
Dane Everitt c3b9738364
Implement application API Keys 2018-01-18 21:36:15 -06:00
Dane Everitt f9fc3f4370
Update interface to begin change to seperate account API keys and application keys
Main difference is permissions, cleaner UI for normal users, and account keys use permissions assigned to servers and subusers while application keys use R/W ACLs stored in the key table.
2018-01-14 13:30:55 -06:00
Dane Everitt 14f9e1ad43
More permission removal cleanup 2018-01-14 12:11:04 -06:00
Dane Everitt ad3a954256
Rename APIKey to ApiKey 2018-01-14 12:06:15 -06:00
Dane Everitt 7aa540b895
Remove api permissions table 2018-01-14 12:05:18 -06:00
Dane Everitt e0fb7fa30c
Fix failing ApiKeyCreationService test 2018-01-13 16:23:43 -06:00
Dane Everitt e3df0738da
Change the way API keys are stored and validated; clarify API namespacing
Previously, a single key was used to access the API, this has not changed in terms of what the user sees. However, API keys now use an identifier and token internally. The identifier is the first 16 characters of the key, and the token is the remaining 32. The token is stored encrypted at rest in the database and the identifier is used by the API middleware to grab that record and make a timing attack safe comparison.
2018-01-13 16:06:19 -06:00
Dane Everitt 11c4f3f6f2
Finish putting permissions on the API 2018-01-13 14:08:19 -06:00
Dane Everitt d644a53951
Update users & locations to use new permissions format 2018-01-12 20:39:15 -06:00
Dane Everitt a31e5875dc
First round of changes to API to support simpler permissions. 2018-01-11 22:49:46 -06:00
Dane Everitt 0e24c669c4
docblock 2018-01-11 20:08:49 -06:00
Dane Everitt cf21fd5a4b
More API updates, better support for node config edits 2018-01-10 23:19:03 -06:00