diff --git a/config/settings/base.py b/config/settings/base.py index 93d80696f75266a395c04feca1066088eaf4505d..ed24bd04ea1a254d5402a9b6060af30e3f8b4f4e 100644 --- a/config/settings/base.py +++ b/config/settings/base.py @@ -104,6 +104,7 @@ LVC_GROUP = 'Communities:LSCVirgoLIGOGroupMembers' LVEM_GROUP = 'gw-astronomy:LV-EM' LVEM_OBSERVERS_GROUP = 'gw-astronomy:LV-EM:Observers' PUBLIC_GROUP = 'public_users' +PRIORITY_USERS_GROUP = 'priority_users' # Group names # Executives group name diff --git a/gracedb/migrations/auth/0019_create_priority_users_group.py b/gracedb/migrations/auth/0019_create_priority_users_group.py new file mode 100644 index 0000000000000000000000000000000000000000..dec4392390746d655a6001e988f828f3a693bf22 --- /dev/null +++ b/gracedb/migrations/auth/0019_create_priority_users_group.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.18 on 2018-12-05 02:41 +from __future__ import unicode_literals + +from django.db import migrations + +GROUP_NAME = 'priority_users' + +def create_group(apps, schema_editor): + Group = apps.get_model('auth', 'Group') + Group.objects.create(name=GROUP_NAME) + + +def delete_group(apps, schema_editor): + Group = apps.get_model('auth', 'Group') + g = Group.objects.get(name=GROUP_NAME) + g.delete() + + +class Migration(migrations.Migration): + + dependencies = [ + ('auth', '0018_update_emfollow_groups'), + ] + + operations = [ + migrations.RunPython(create_group, delete_group), + ] diff --git a/gracedb/migrations/auth/0020_populate_priority_users_group.py b/gracedb/migrations/auth/0020_populate_priority_users_group.py new file mode 100644 index 0000000000000000000000000000000000000000..490c9a162d8ddd6f587d098e712ef56e73bd2b98 --- /dev/null +++ b/gracedb/migrations/auth/0020_populate_priority_users_group.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.18 on 2018-12-05 02:47 +from __future__ import unicode_literals + +from django.db import migrations + +GROUP_NAME = 'priority_users' +PRIORITY_USERS = [ + 'detchar', + 'emfollow', + 'gstlal-spiir', + 'gstlalcbc', + 'MbtaAlert', + 'oLIB', + 'pycbclive', + 'virgo_detchar', + 'waveburst', # cWB +] + + +def add_users(apps, schema_editor): + Group = apps.get_model('auth', 'Group') + User = apps.get_model('auth', 'User') + + # Get group + pg = Group.objects.get(name=GROUP_NAME) + + # Get users + users = User.objects.filter(username__in=PRIORITY_USERS) + + # Add users + pg.user_set.add(*users) + + +def remove_users(apps, schema_editor): + Group = apps.get_model('auth', 'Group') + User = apps.get_model('auth', 'User') + + # Get group + pg = Group.objects.get(name=GROUP_NAME) + + # Get users + users = User.objects.filter(username__in=PRIORITY_USERS) + + # Remove users + pg.user_set.remove(*users) + + +class Migration(migrations.Migration): + + dependencies = [ + ('auth', '0019_create_priority_users_group'), + ] + + operations = [ + migrations.RunPython(add_users, remove_users), + ]