genouest / genouestaccountmanager

Account manager for core facility
GNU Affero General Public License v3.0
5 stars 8 forks source link

Db interface rework #470

Closed rsiminel closed 3 months ago

rsiminel commented 4 months ago

This PR is exactly the same as #384, I just didn't want Konogan to get a bunch of notifications on an ancient PR from his previous employers. It seems to have been basically entirely finished.

Description: New database management workflow. Users now ask for a database and give relevant information, while the admins receive an email when a database is requested and can visualize pending requests and validate them as they see fit.

closes #370

rsiminel commented 4 months ago

Ok @mboudet, she's ready for your review. I still can't figure out the origin of the issue I mentioned with the "change database owner" feature. A few other questions:

mboudet commented 4 months ago

Ok @mboudet, she's ready for your review. I still can't figure out the origin of the issue I mentioned with the "change database owner" feature. A few other questions:

* What do we plan on doing with the "I will be the only one using this database" check-box information (because currently it isn't displayed anywhere at all) ?

Maybe we can add it in the admin view of the database, with a column 'Sole owner' or something. (If you can fix the column name while you're at it, I think it's missing a closing tag somewhere)

* Should we send more emails to concerned parties over the lifetime of a Database (on creation by an admin, on deletion) ?

We need to send a mail upon creating by an admin in all cases, because we need to send the DB password. (That's how we did beforehand anyway). No need for the DB deletion, because we would need to contact the user beforehand anyway.

* Should we add an option for admins to delete other people's Databases directly ?

Sure, why not

mboudet commented 4 months ago

As an additional comment: Currently router.post('/database/:id' serves for both DB creation, and DB declaration (with both restricted to admins, or at least should).

Might be better to have a dedicated route for each (like /database/create/:id/and /database/declare/:id), which would avoid having some convoluted test to decide if we need to create it or not.