diff options
Diffstat (limited to 'kubernetes/contrib/components/netbox/components/netbox-app/resources/config/startup_scripts/10_groups.py')
-rwxr-xr-x | kubernetes/contrib/components/netbox/components/netbox-app/resources/config/startup_scripts/10_groups.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/kubernetes/contrib/components/netbox/components/netbox-app/resources/config/startup_scripts/10_groups.py b/kubernetes/contrib/components/netbox/components/netbox-app/resources/config/startup_scripts/10_groups.py new file mode 100755 index 0000000000..7932874704 --- /dev/null +++ b/kubernetes/contrib/components/netbox/components/netbox-app/resources/config/startup_scripts/10_groups.py @@ -0,0 +1,19 @@ +from django.contrib.auth.models import Group, User +from ruamel.yaml import YAML + +with open('/opt/netbox/initializers/groups.yml', 'r') as stream: + yaml=YAML(typ='safe') + groups = yaml.load(stream) + + if groups is not None: + for groupname, group_details in groups.items(): + group, created = Group.objects.get_or_create(name=groupname) + + if created: + print("👥 Created group", groupname) + + for username in group_details['users']: + user = User.objects.get(username=username) + + if user: + user.groups.add(group) |