ucb-rit / coldfront

HPC Resource Allocation System
https://coldfront.readthedocs.io
GNU General Public License v3.0
3 stars 3 forks source link

Issue 585: Ensure that users cannot be added to "New" / "Inactive" / "Archived" projects #590

Open haudquaquam opened 5 months ago

haudquaquam commented 5 months ago

Check whether users can be added to a Project with the "New", "Inactive", or "Archived" statuses:

  1. "Can a user request to join such a project from the UI?"
    • A user cannot access a Project that is "New," "Inactive," or "Archived" from the "Join a Project" page. Only "Active" Projects are listed.
    • Users also cannot access "New," "Inactive," or "Archived" Projects by going to /project/##, where ## represents the project ID of a Project.
  2. "Can a PI/manager of such a project add users to such a project?"
    • For a "New" Project, no. The PI of a "New" Project can access the "Add a User" button and go through the flow of adding a user, however upon submission, the following error message shows: Project does not have a LBL Project ID for billing. You cannot add users until one is set.
    • For an "Inactive" Project, yes. The PI can access the "Add a User" button and successfully add a user. This probably should not be allowed.
    • For an "Archived" Project, no. The PI cannot make any changes to an "Archived" Project.

Changes

matthew-li commented 5 months ago

Also, it'd be good to codify this behavior with some unit tests insofar as they don't already exist.

I.e., for each of the relevant views, add a test that a user can/can't join/be added.

(I'll update the docs as well.)