authentik.policies.reputation.migrations.0001_initial

 1# Generated by Django 3.0.6 on 2020-05-19 22:08
 2
 3import django.db.models.deletion
 4from django.conf import settings
 5from django.db import migrations, models
 6
 7
 8class Migration(migrations.Migration):
 9    initial = True
10
11    dependencies = [
12        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
13        ("authentik_policies", "0001_initial"),
14    ]
15
16    operations = [
17        migrations.CreateModel(
18            name="IPReputation",
19            fields=[
20                (
21                    "id",
22                    models.AutoField(
23                        auto_created=True,
24                        primary_key=True,
25                        serialize=False,
26                        verbose_name="ID",
27                    ),
28                ),
29                ("ip", models.GenericIPAddressField(unique=True)),
30                ("score", models.IntegerField(default=0)),
31                ("updated", models.DateTimeField(auto_now=True)),
32            ],
33        ),
34        migrations.CreateModel(
35            name="ReputationPolicy",
36            fields=[
37                (
38                    "policy_ptr",
39                    models.OneToOneField(
40                        auto_created=True,
41                        on_delete=django.db.models.deletion.CASCADE,
42                        parent_link=True,
43                        primary_key=True,
44                        serialize=False,
45                        to="authentik_policies.Policy",
46                    ),
47                ),
48                ("check_ip", models.BooleanField(default=True)),
49                ("check_username", models.BooleanField(default=True)),
50                ("threshold", models.IntegerField(default=-5)),
51            ],
52            options={
53                "verbose_name": "Reputation Policy",
54                "verbose_name_plural": "Reputation Policies",
55            },
56            bases=("authentik_policies.policy",),
57        ),
58        migrations.CreateModel(
59            name="UserReputation",
60            fields=[
61                (
62                    "id",
63                    models.AutoField(
64                        auto_created=True,
65                        primary_key=True,
66                        serialize=False,
67                        verbose_name="ID",
68                    ),
69                ),
70                ("score", models.IntegerField(default=0)),
71                ("updated", models.DateTimeField(auto_now=True)),
72                (
73                    "user",
74                    models.OneToOneField(
75                        on_delete=django.db.models.deletion.CASCADE,
76                        to=settings.AUTH_USER_MODEL,
77                    ),
78                ),
79            ],
80        ),
81    ]
class Migration(django.db.migrations.migration.Migration):
 9class Migration(migrations.Migration):
10    initial = True
11
12    dependencies = [
13        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
14        ("authentik_policies", "0001_initial"),
15    ]
16
17    operations = [
18        migrations.CreateModel(
19            name="IPReputation",
20            fields=[
21                (
22                    "id",
23                    models.AutoField(
24                        auto_created=True,
25                        primary_key=True,
26                        serialize=False,
27                        verbose_name="ID",
28                    ),
29                ),
30                ("ip", models.GenericIPAddressField(unique=True)),
31                ("score", models.IntegerField(default=0)),
32                ("updated", models.DateTimeField(auto_now=True)),
33            ],
34        ),
35        migrations.CreateModel(
36            name="ReputationPolicy",
37            fields=[
38                (
39                    "policy_ptr",
40                    models.OneToOneField(
41                        auto_created=True,
42                        on_delete=django.db.models.deletion.CASCADE,
43                        parent_link=True,
44                        primary_key=True,
45                        serialize=False,
46                        to="authentik_policies.Policy",
47                    ),
48                ),
49                ("check_ip", models.BooleanField(default=True)),
50                ("check_username", models.BooleanField(default=True)),
51                ("threshold", models.IntegerField(default=-5)),
52            ],
53            options={
54                "verbose_name": "Reputation Policy",
55                "verbose_name_plural": "Reputation Policies",
56            },
57            bases=("authentik_policies.policy",),
58        ),
59        migrations.CreateModel(
60            name="UserReputation",
61            fields=[
62                (
63                    "id",
64                    models.AutoField(
65                        auto_created=True,
66                        primary_key=True,
67                        serialize=False,
68                        verbose_name="ID",
69                    ),
70                ),
71                ("score", models.IntegerField(default=0)),
72                ("updated", models.DateTimeField(auto_now=True)),
73                (
74                    "user",
75                    models.OneToOneField(
76                        on_delete=django.db.models.deletion.CASCADE,
77                        to=settings.AUTH_USER_MODEL,
78                    ),
79                ),
80            ],
81        ),
82    ]

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 = [('authentik_core', '__first__'), ('authentik_policies', '0001_initial')]
operations = [<CreateModel name='IPReputation', fields=[('id', <django.db.models.fields.AutoField>), ('ip', <django.db.models.fields.GenericIPAddressField>), ('score', <django.db.models.fields.IntegerField>), ('updated', <django.db.models.fields.DateTimeField>)]>, <CreateModel name='ReputationPolicy', fields=[('policy_ptr', <django.db.models.fields.related.OneToOneField>), ('check_ip', <django.db.models.fields.BooleanField>), ('check_username', <django.db.models.fields.BooleanField>), ('threshold', <django.db.models.fields.IntegerField>)], options={'verbose_name': 'Reputation Policy', 'verbose_name_plural': 'Reputation Policies'}, bases=('authentik_policies.policy',)>, <CreateModel name='UserReputation', fields=[('id', <django.db.models.fields.AutoField>), ('score', <django.db.models.fields.IntegerField>), ('updated', <django.db.models.fields.DateTimeField>), ('user', <django.db.models.fields.related.OneToOneField>)]>]