Fix #1008 -- Unassign policies when roles are deleted #1062
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Proposed changes in this pull request
post_delete
hook forProjectRole
instances that makes sure policies are unassigned correctly. The functionality to reassign project roles now lives inassign_prj_policies
, which is used for both updating and removing project roles.assign_org_policies
(formerlyreassign_user_policies
to make sure policies are removed when an organization admin role instance is deleted.reassign_user_policies
renamed toassign_org_policies
remove_project_membership
renamed toremove_org_permissions
assign_org_policies
to usedelete
flag instead ofadding
organization.tests.test_models.ProjectRoleTest
was refactored to test whether the policies are assigned to the user instead of specific permissions. This was necessary because the project user policy does not currently contain any permissions; it would not be possible to test if the role is assigned correctly.When should this PR be merged
ASAP
Risks
None
Follow up actions
None
Checklist (for reviewing)
General
migration
label if a new migration is added.Is the risk level assessment sufficient? The risks section should contain all risks that might be introduced with the PR and which actions we need to take to mitigate these risks. Possible risks are database migrations, new libraries that need to be installed or changes to deployment scripts.
Functionality
Code
Tests
Documentation