From dcc3ccbce05f53e41270d5e1bdfd03e1286eeb65 Mon Sep 17 00:00:00 2001 From: Tanner Prestegard <tanner.prestegard@ligo.org> Date: Thu, 7 Feb 2019 14:07:17 -0600 Subject: [PATCH] Add and populate group for priority users --- config/settings/base.py | 1 + .../auth/0019_create_priority_users_group.py | 28 +++++++++ .../0020_populate_priority_users_group.py | 57 +++++++++++++++++++ 3 files changed, 86 insertions(+) create mode 100644 gracedb/migrations/auth/0019_create_priority_users_group.py create mode 100644 gracedb/migrations/auth/0020_populate_priority_users_group.py diff --git a/config/settings/base.py b/config/settings/base.py index 93d80696f..ed24bd04e 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 000000000..dec439239 --- /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 000000000..490c9a162 --- /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), + ] -- GitLab