# Generated by Django 3.0.7 on 2020-11-30 18:19 import bookwyrm.models.activitypub_mixin import bookwyrm.models.fields from django.conf import settings from django.db import migrations, models import django.db.models.deletion def copy_rsa_keys(app_registry, schema_editor): db_alias = schema_editor.connection.alias users = app_registry.get_model('bookwyrm', 'User') keypair = app_registry.get_model('bookwyrm', 'KeyPair') for user in users.objects.using(db_alias): if user.public_key or user.private_key: user.key_pair = keypair.objects.create( remote_id='%s/#main-key' % user.remote_id, private_key=user.private_key, public_key=user.public_key ) user.save() class Migration(migrations.Migration): dependencies = [ ('bookwyrm', '0016_auto_20201129_0304'), ] operations = [ migrations.CreateModel( name='KeyPair', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created_date', models.DateTimeField(auto_now_add=True)), ('updated_date', models.DateTimeField(auto_now=True)), ('remote_id', bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id])), ('private_key', models.TextField(blank=True, null=True)), ('public_key', bookwyrm.models.fields.TextField(blank=True, null=True)), ], options={ 'abstract': False, }, bases=(bookwyrm.models.activitypub_mixin.ActivitypubMixin, models.Model), ), migrations.AddField( model_name='user', name='followers', field=bookwyrm.models.fields.ManyToManyField(related_name='following', through='bookwyrm.UserFollows', to=settings.AUTH_USER_MODEL), ), migrations.AlterField( model_name='author', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='book', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='connector', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='favorite', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='federatedserver', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='image', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='notification', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='readthrough', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='shelf', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='shelfbook', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='status', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='tag', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='user', name='avatar', field=bookwyrm.models.fields.ImageField(blank=True, null=True, upload_to='avatars/'), ), migrations.AlterField( model_name='user', name='bookwyrm_user', field=bookwyrm.models.fields.BooleanField(default=True), ), migrations.AlterField( model_name='user', name='inbox', field=bookwyrm.models.fields.RemoteIdField(max_length=255, unique=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='user', name='local', field=models.BooleanField(default=False), ), migrations.AlterField( model_name='user', name='manually_approves_followers', field=bookwyrm.models.fields.BooleanField(default=False), ), migrations.AlterField( model_name='user', name='name', field=bookwyrm.models.fields.CharField(blank=True, max_length=100, null=True), ), migrations.AlterField( model_name='user', name='outbox', field=bookwyrm.models.fields.RemoteIdField(max_length=255, unique=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='user', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, unique=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='user', name='shared_inbox', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='user', name='summary', field=bookwyrm.models.fields.TextField(blank=True, null=True), ), migrations.AlterField( model_name='user', name='username', field=bookwyrm.models.fields.UsernameField(), ), migrations.AlterField( model_name='userblocks', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='userfollowrequest', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='userfollows', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AlterField( model_name='usertag', name='remote_id', field=bookwyrm.models.fields.RemoteIdField(max_length=255, null=True, validators=[bookwyrm.models.fields.validate_remote_id]), ), migrations.AddField( model_name='user', name='key_pair', field=bookwyrm.models.fields.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='owner', to='bookwyrm.KeyPair'), ), migrations.RunPython(copy_rsa_keys), ]