cloudsim-grant's People
cloudsim-grant's Issues
Middleware improvements
Original report (archived issue) by Hugo Boyer (Bitbucket: hugomatic, GitHub: hugomatic).
Add a filter parameter for resources
Make a createResource middleware: it should expect a req.resourceData or the req.error (in case of error) as input. Its work would be to write a new entry in the database with req.resourceData, and format the response (there is no next to call, it completes the route).
Make a deleteResource middleware: it should expect a req.resourceId (or req.error). It would remove the resource from the database and format the response.
Dump doesn't show custom keys
Original report (archived issue) by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).
Data saved to the database using saveData
, added in pull request #25, doesn't show on dump, so it's hard to debug them
Warning/error for wrong database URL
Original report (archived issue) by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).
Currently the Redis client just hangs when it can't do something, way after it was initialized
Delete user
Original report (archived issue) by Hugo Boyer (Bitbucket: hugomatic, GitHub: hugomatic).
Delete user revokes all permissions for every resource.
Revoking permissions can orphan resources if they have a single user.
This needs to be dealt with:
- resources should always have more than one user? (admin user cannot be deleted)
- resources should be deleted before deleting a user (and destroyed, ie: machines shut-down)
- resources should be transfered to another user (admin)
Comments on this issue are welcome.
Check duplicate resource
Original report (archived issue) by Ian Chen (Bitbucket: Ian Chen, GitHub: iche033).
Currently multiple resources with the same name can be created using createResource
. There should be a way to check for duplicate resources, e.g. resourceExist
?, or prevent duplicate resources from being created.
resource name nbs are too short
Original report (archived issue) by Hugo Boyer (Bitbucket: hugomatic, GitHub: hugomatic).
3 characters is small, and will rollover soon.
string compare won't guarantee order.
A better fix would be to split resource name into:
an id (could be a uuid)
a creation time (for sorting, unless the id has increment part)
a type ("simulator", etc)
The current scheme requires to call the database INCR to generate a unique resource name. This operation is asynchronous and could be avoided.
grant and revoke refactor
Original report (archived issue) by Hugo Boyer (Bitbucket: hugomatic, GitHub: hugomatic).
grant and revoke routes do not have a isAuthorized check anymore.
We cannot use ownsResource middleware because we don't know the resourceId
solution: change the /permission routes to: /permisssions/:resourceId, and add an ownResource.
This will impact:
- Server route definitions (auth, sim and portal)
- gz-grant (internally)
- widgets (only to change the version of gz-grant)
I also suggest a setPermissionsRoutes that will reduce code duplication.
Possible data loss during deployment
Original report (archived issue) by Hugo Boyer (Bitbucket: hugomatic, GitHub: hugomatic).
The auth server on the production environment was missing user data.
This problem could happen when the deployment is interrupted.
It was also noticed that deployment of the portal was taking a long time (5 minutes)
These problems may be related to the code that reads the database data (using too many simultaneous asynchronous calls in parallel)
Does clearDb work?
Original report (archived issue) by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).
It might not
Grant permissions in bulk
Original report (archived issue) by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).
Support passing an array of indentities
Deployment takes to long
Original report (archived issue) by Hugo Boyer (Bitbucket: hugomatic, GitHub: hugomatic).
It was observed that deployment is very slow.
It can take a few minutes for the servers to come back online.
A lot of time is spent reading the database (sasc data).
There is extraneous data should be removed (database swoosh). This can be accomplished automatically during each deployment, and it would make the next one faster. We could also trigger the operation manually (when backing up the data)
Id count isn't reset after clearDb
Original report (archived issue) by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).
-
Create some resources
-
Call
clearDb
-
Call
getNextResourceId
-> the id count continues from the previous number as if the db had never been cleared.
Not sure if this is a feature or a bug, just thought it should be pointed out.
Update authentication to use identities instead of username
Original report (archived issue) by Ian Chen (Bitbucket: Ian Chen, GitHub: iche033).
username
string -> identities
array
It shouldn't be possible to delete resources created at init
Original report (archived issue) by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).
See this for context
Software contract
Original report (archived issue) by Hugo Boyer (Bitbucket: hugomatic, GitHub: hugomatic).
Cloudsim-grant should implement data consistency checks, that could optionally be relaxed during production.
- Each resource should have at least one user with read/write access.
- Depending on the collection, each resource could have a unique name
These checks should be run after each database operation, ensuring there is no data corruption possible.
13 seconds latency on dev servers
Original report (archived issue) by Hugo Boyer (Bitbucket: hugomatic, GitHub: hugomatic).
The shared database for the dev servers is still using a t2.micro.
Latency is high. The server should be upgraded (like on production)
clearDb doesn't clear custom keys
Original report (archived issue) by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).
This would be especially useful when testing, the same way we use it for "normal" resources
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.