Commit graph

154 commits

Author SHA1 Message Date
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
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
703f55271d
Remove all references to daemon keys from the codebase 2020-09-13 11:38:42 -07:00
Dane Everitt
3c7ffaaadb
Remove all references of packs from the Panel 2020-09-13 11:13:37 -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
034a310702
Use checksum more broadly, not specifically SHA256 2020-08-23 18:06:47 -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
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
874d928a50
Correctly handle response from daemon for server stats; #2183 2020-07-29 20:34:06 -07:00
Dane Everitt
2278927fb6
Update allocations to support ids; protect endpoints; support notes 2020-07-09 20:36:08 -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
be91913f23
Return a null resource if an allocation has no server; closes #2117 2020-06-13 09:56:40 -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
c4f4f1f5c8
Don't show an error in the listing if the server is still installing or suspended 2020-04-25 17:58:09 -07:00
AreYouScared
0ecfb40f5e Add variable to API endpoint
Allow API to retrun max_connections for frontend database page
2020-04-22 06:17:26 -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
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
AreYouScared
b351c07d34 Fix server transformer
Properly pass the value to wings
2020-03-29 16:55:06 -04:00
Dane Everitt
a6f46d36ba
Implement basic code for creating/updating a subuser 2020-03-27 14:23:13 -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
cf7f36c950
Always include the tasks with a schedule 2020-03-22 13:57:31 -07:00
Dane Everitt
32e9fb0346
Add basic listing of server schedules 2020-02-08 15:23:08 -08:00
Dane Everitt
5f13531c69
Fix up subuser API response for clients 2019-12-28 12:03:19 -08:00
Dane Everitt
51defae917
Merge branch 'master' into develop 2019-12-28 11:49:08 -08:00
Dane Everitt
66ead2f682
Update subuser API output to work correctly 2019-12-28 11:39:44 -08:00
Stepan Fedotov
5f60a6c735
Fix the resource key for subusers 2019-12-28 13:53:33 +02:00
Dane Everitt
2570b4e2d0
Base code for settings and schedules 2019-12-07 15:58:37 -08:00
Dane Everitt
543884876f
Add basic subuser listing for servers 2019-11-03 12:20:11 -08:00
Dane Everitt
67ff67a1bd
Add endpoints to return a server's egg configuration 2019-09-22 15:30:53 -07:00
Dane Everitt
7543ef085d
Format files 2019-09-05 21:32:57 -07:00
TrixterTheTux
ab09c7db28 Fix couple of issues with /api/application/servers 2019-08-31 11:29:44 +03:00
TrixterTheTux
20c594ae3b Include the egg name in egg model's response from the application API 2019-08-24 15:47:11 +03:00
Dane Everitt
fb9c106448
Update server listing and associated logic to pull from the panel dynamiacally 2019-08-17 16:03:10 -07:00
Dane Everitt
1769d191d2
Correct behavior of date formatting 2019-08-05 22:22:31 -07:00
Dane Everitt
c90fcea519
Add basic file listing functionality 2019-07-27 20:23:51 -07:00
Dane Everitt
0757d8856b
Add base code to support retrieving allocations as a client 2019-03-23 17:47:20 -07:00
Dane Everitt
9be2aa4ca9
Push beginning of DB deletion stuff 2018-08-25 14:43:21 -07:00
Dane Everitt
17796fb1c4
Add basic database listing for server 2018-08-21 21:47:01 -07:00
Dane Everitt
03c83c084a
Revert use of cookies, go back to using a JWT 2018-06-06 22:49:44 -07:00
Dane Everitt
e948d81d8a
Base attempt at using vuex to handle logins 2018-06-05 23:00:01 -07:00
Dane Everitt
02b29a66ea
Use client API to get resource use for a server 2018-06-02 19:08:53 -07:00
Dane Everitt
aa61afb58f
Add proper server models 2018-05-28 14:11:23 -07:00
Dane Everitt
6e5c365018
Use the client API to load servers on the listing page 2018-05-28 13:23:40 -07:00
Lance Pioch
f82b419d47 Update php doc blocks 2018-05-13 12:42:11 -04: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
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
e8ea218f20
Add integration test for remaining application api user endpoints 2018-03-04 22:35:57 -06:00
Dane Everitt
e2aa01c9cc
First go at integration tests 2018-03-04 16:30:16 -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
87b96bdfc8
Add core logic to allow for limited databases and allocations 2018-03-01 20:08:27 -06:00
Dane Everitt
ab2973c4d1
Add pack transformer support 2018-03-01 18:43:39 -06:00
Dane Everitt
cef3e4ced4
Add base routes for managing servers as a client 2018-02-27 21:28:43 -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
633bba6d6e
Add support for external_id on servers, closes #975 2018-02-24 11:57:12 -06:00
Dane Everitt
be6b398e2d
add support for egg variables, closes #974 2018-02-24 11:17:21 -06:00
Dane Everitt
2ec76d283b
Fix bad API behavior 2018-02-04 15:38:38 -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
2bd691efad
Add database list endpoint, add more resource name magic 2018-01-25 21:26:06 -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
bdadec002c
Push updates to server transformer 2018-01-18 21:56:12 -06:00
Dane Everitt
ad3a954256
Rename APIKey to ApiKey 2018-01-14 12:06:15 -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
cf21fd5a4b
More API updates, better support for node config edits 2018-01-10 23:19:03 -06:00
Dane Everitt
54b6fb5ebd
More work on the API utilizing Laravel 5.5 exception rendering
Also corrects API format to maintain JSONAPI spec
2017-12-17 14:57:05 -06:00
Dane Everitt
698c121e11
First round of API additions 2017-11-19 16:30:00 -06:00
Dane Everitt
24d0ae18fd
Include permission for subusers to access the server console. 2017-11-18 16:50:58 -06:00
Lance Pioch
c2408a28d8 Remove unused imports 2017-11-17 18:08:10 -05:00
Dane Everitt
b1f6058e31
Fix daemon key provider service
Handles missing keys if user is an admin or the server owner. Step in the right direction for #733 where all users have their own keys now. Still need to address admin status revocation in order to fully address that issue.
2017-11-05 16:07:50 -06:00
Dane Everitt
df87ea0867
This breaks literally the entire panel. 2017-10-06 23:57:53 -05:00
Dane Everitt
fb8a26f141
Merge branch 'develop' into feature/api-daemon-changes 2017-09-25 21:46:44 -05:00
Dane Everitt
e56f4cdd33
Update license headers on files. 2017-09-25 21:43:01 -05:00
Dane Everitt
8e2b77dc1e
Final touches to new key-rotation service 2017-09-24 12:34:00 -05:00
Dane Everitt
906a699ee2
Begin implementation of new daemon authentication scheme 2017-09-23 20:45:25 -05:00
Dane Everitt
3ee5803416
Massive PHPCS linting 2017-08-21 22:10:48 -05:00
Dane Everitt
93d79994f8 Apply fixes from StyleCI (#372) 2017-04-09 19:16:39 -04:00
Dane Everitt
f0c3f6f9b6
Fix location permission name 2017-04-09 15:39:44 -04:00
Dane Everitt
a2a4ab05c8
Corrected permissions to go with the more logical thought process 2017-04-09 15:35:49 -04:00
Dane Everitt
820d2bf172
Node and user API routes implemented.
More attempts at the logic for API permissions, most likely will need
continued tweaking in the future, but base is there.
2017-04-09 15:31:10 -04:00
Dane Everitt
f24b238e30
Base node route implementation 2017-04-09 13:52:31 -04:00
Dane Everitt
c492446513
Implement initial server and location API routes.
Also fixes a few exception handler issues causing incorrect HTTP status
codes on authorization errors.
2017-04-09 13:15:15 -04:00
Dane Everitt
463f465dea
Block viewing node allocations and location unless user has permission
Blocks viewing the allocation list and location for a node unless a
user has permission to view the node in the first place.
2017-04-08 12:07:17 -04:00
Dane Everitt
4479d3bf19
Improved logic for handling permissions on API routes.
Still only partially implemented, however this method will allow the
inclusion of data that is granted with servers (such as viewing more
about the node, node location, allocations, etc) while still limiting
someone from doing `?include=node.servers` and listing all servers when
they don’t have list-servers as a permission.
2017-04-08 12:05:29 -04:00
Dane Everitt
51204b8d9d
Add all of the potential transformers that might be needed for now. 2017-04-07 20:28:58 -04:00
Dane Everitt
65630bdcce
Move API to use JSON:API standards and fractal serializer
Makes the data slightly more complex, but forces a standard and can
always be changed down the road simply by changing the default
serializer.
2017-04-02 16:51:56 -04:00
Dane Everitt
97773300ed
Better middleware for routes, cleaned up API, removed old API calls
New API routes for Server allow specifying which fractal objects to
load into the request, thus making it possible to fine-tune what data
is returned.
2017-04-02 13:19:39 -04:00
Dane Everitt
ddb82ac3ca
Add initial user server transformer for API. 2017-04-02 00:49:53 -04:00
Dane Everitt
0312c974f5
Update doc blocks for all app/ 2017-03-19 19:36:50 -04:00
Dane Everitt
bf7b58470a
Update copyright headers 2017-01-24 17:57:08 -05:00
Dane Everitt
c1fb0a665f Apply fixes from StyleCI 2016-12-07 22:46:38 +00:00
Dane Everitt
7529e961de Add back API (#80)
Re-implements the API after it was removed in the Laravel 5.3 upgrade.
2016-09-05 16:21:36 -04:00
Dane Everitt
afb5011fbe Update to Laravel 5.3
[BREAKING] — REMOVES REMOTE API

A new API will need to be implemented properly using the new Laravel
Passport OAuth2 system. DingoAPI was becoming too unstable and
development wasn’t really moving along enough to continue to rely on it.
2016-09-03 17:09:00 -04:00
Dane Everitt
40c68a5391 Add title to copyright 2016-01-20 16:05:16 -05:00