Skip to content

Commit

Permalink
Add VIP table access to staff
Browse files Browse the repository at this point in the history
  • Loading branch information
rachidatecs committed Jan 26, 2024
1 parent ece81ba commit dcfe19d
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 0 deletions.
37 changes: 37 additions & 0 deletions src/registrar/migrations/0065_create_groups_v06.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# This migration creates the create_full_access_group and create_cisa_analyst_group groups
# It is dependent on 0035 (which populates ContentType and Permissions)
# If permissions on the groups need changing, edit CISA_ANALYST_GROUP_PERMISSIONS
# in the user_group model then:
# [NOT RECOMMENDED]
# step 1: docker-compose exec app ./manage.py migrate --fake registrar 0035_contenttypes_permissions
# step 2: docker-compose exec app ./manage.py migrate registrar 0036_create_groups
# step 3: fake run the latest migration in the migrations list
# [RECOMMENDED]
# Alternatively:
# step 1: duplicate the migration that loads data
# step 2: docker-compose exec app ./manage.py migrate

from django.db import migrations
from registrar.models import UserGroup
from typing import Any


# For linting: RunPython expects a function reference,
# so let's give it one
def create_groups(apps, schema_editor) -> Any:
UserGroup.create_cisa_analyst_group(apps, schema_editor)
UserGroup.create_full_access_group(apps, schema_editor)


class Migration(migrations.Migration):
dependencies = [
("registrar", "0064_alter_domainapplication_address_line1_and_more"),
]

operations = [
migrations.RunPython(
create_groups,
reverse_code=migrations.RunPython.noop,
atomic=True,
),
]
5 changes: 5 additions & 0 deletions src/registrar/models/user_group.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,11 @@ def create_cisa_analyst_group(apps, schema_editor):
"model": "userdomainrole",
"permissions": ["view_userdomainrole", "delete_userdomainrole"],
},
{
"app_label": "registrar",
"model": "veryimportantperson",
"permissions": ["add_veryimportantperson", "change_veryimportantperson", "delete_veryimportantperson"],
},
]

# Avoid error: You can't execute queries until the end
Expand Down
3 changes: 3 additions & 0 deletions src/registrar/tests/test_migrations.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@ def test_groups_created(self):
"change_user",
"delete_userdomainrole",
"view_userdomainrole",
"add_veryimportantperson",
"change_veryimportantperson",
"delete_veryimportantperson",
"change_website",
]

Expand Down

0 comments on commit dcfe19d

Please sign in to comment.