authentik.rbac.migrations.0001_initial

 1# Generated by Django 4.2.6 on 2023-10-11 13:37
 2
 3import uuid
 4
 5import django.db.models.deletion
 6from django.db import migrations, models
 7
 8
 9class Migration(migrations.Migration):
10    initial = True
11
12    dependencies = [
13        ("auth", "0012_alter_user_first_name_max_length"),
14    ]
15
16    operations = [
17        migrations.CreateModel(
18            name="Role",
19            fields=[
20                (
21                    "uuid",
22                    models.UUIDField(
23                        default=uuid.uuid4,
24                        editable=False,
25                        primary_key=True,
26                        serialize=False,
27                        unique=True,
28                    ),
29                ),
30                ("name", models.TextField(max_length=150, unique=True)),
31                (
32                    "group",
33                    models.OneToOneField(
34                        on_delete=django.db.models.deletion.CASCADE, to="auth.group"
35                    ),
36                ),
37            ],
38            options={
39                "verbose_name": "Role",
40                "verbose_name_plural": "Roles",
41                "permissions": [
42                    ("assign_role_permissions", "Can assign permissions to users"),
43                    ("unassign_role_permissions", "Can unassign permissions from users"),
44                ],
45            },
46        ),
47    ]
class Migration(django.db.migrations.migration.Migration):
10class Migration(migrations.Migration):
11    initial = True
12
13    dependencies = [
14        ("auth", "0012_alter_user_first_name_max_length"),
15    ]
16
17    operations = [
18        migrations.CreateModel(
19            name="Role",
20            fields=[
21                (
22                    "uuid",
23                    models.UUIDField(
24                        default=uuid.uuid4,
25                        editable=False,
26                        primary_key=True,
27                        serialize=False,
28                        unique=True,
29                    ),
30                ),
31                ("name", models.TextField(max_length=150, unique=True)),
32                (
33                    "group",
34                    models.OneToOneField(
35                        on_delete=django.db.models.deletion.CASCADE, to="auth.group"
36                    ),
37                ),
38            ],
39            options={
40                "verbose_name": "Role",
41                "verbose_name_plural": "Roles",
42                "permissions": [
43                    ("assign_role_permissions", "Can assign permissions to users"),
44                    ("unassign_role_permissions", "Can unassign permissions from users"),
45                ],
46            },
47        ),
48    ]

The base class for all migrations.

Migration files will import this from django.db.migrations.Migration and subclass it as a class called Migration. It will have one or more of the following attributes:

  • operations: A list of Operation instances, probably from django.db.migrations.operations
  • dependencies: A list of tuples of (app_path, migration_name)
  • run_before: A list of tuples of (app_path, migration_name)
  • replaces: A list of migration_names

Note that all migrations come out of migrations and into the Loader or Graph as instances, having been initialized with their app label and name.

initial = True
dependencies = [('auth', '0012_alter_user_first_name_max_length')]
operations = [<CreateModel name='Role', fields=[('uuid', <django.db.models.fields.UUIDField>), ('name', <django.db.models.fields.TextField>), ('group', <django.db.models.fields.related.OneToOneField>)], options={'verbose_name': 'Role', 'verbose_name_plural': 'Roles', 'permissions': [('assign_role_permissions', 'Can assign permissions to users'), ('unassign_role_permissions', 'Can unassign permissions from users')]}>]