data.database/migrations: remove repo_id from db
This also manually organizes and removes broken parts of the migration.
This commit is contained in:
parent
8f323154ce
commit
1e9ce85af6
2 changed files with 167 additions and 167 deletions
|
@ -549,17 +549,12 @@ class Visibility(BaseModel):
|
|||
name = CharField(index=True, unique=True)
|
||||
|
||||
|
||||
class RepositoryKind(BaseModel):
|
||||
name = CharField(index=True, unique=True)
|
||||
|
||||
|
||||
class Repository(BaseModel):
|
||||
namespace_user = QuayUserField(null=True)
|
||||
name = FullIndexedCharField(match_function=db_match_func)
|
||||
visibility = ForeignKeyField(Visibility)
|
||||
description = FullIndexedTextField(match_function=db_match_func, null=True)
|
||||
badge_token = CharField(default=uuid_generator)
|
||||
repo_kind = EnumField(RepositoryKind)
|
||||
|
||||
class Meta:
|
||||
database = db
|
||||
|
|
|
@ -17,35 +17,24 @@ from util.migrate import UTF8LongText, UTF8CharField
|
|||
|
||||
|
||||
def upgrade(tables):
|
||||
### commands auto generated by Alembic - please adjust! ###
|
||||
op.create_table('repositorykind',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('name', UTF8CharField(length=255), nullable=False),
|
||||
sa.PrimaryKeyConstraint('id', name=op.f('pk_repositorykind'))
|
||||
)
|
||||
|
||||
# this is used for the default value of repository.repo_kind
|
||||
op.bulk_insert(tables.repositorykind,
|
||||
[
|
||||
{'name': 'image', 'id': 1},
|
||||
{'name': 'application', 'id': 2},
|
||||
])
|
||||
|
||||
op.create_table('tagkind',
|
||||
op.create_table(
|
||||
'tagkind',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('name', UTF8CharField(length=255), nullable=False),
|
||||
sa.PrimaryKeyConstraint('id', name=op.f('pk_tagkind'))
|
||||
)
|
||||
op.create_table('blobplacementlocation',
|
||||
op.create_index('tagkind_name', 'tagkind', ['name'], unique=True)
|
||||
|
||||
op.create_table(
|
||||
'blobplacementlocation',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('name', UTF8CharField(length=255), nullable=False),
|
||||
sa.PrimaryKeyConstraint('id', name=op.f('pk_blobplacementlocation'))
|
||||
)
|
||||
op.create_index('blobplacementlocation_name', 'blobplacementlocation', ['name'], unique=True)
|
||||
op.create_index('repositorykind_name', 'repositorykind', ['name'], unique=True)
|
||||
|
||||
op.create_index('tagkind_name', 'tagkind', ['name'], unique=True)
|
||||
op.create_table('blob',
|
||||
op.create_table(
|
||||
'blob',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('digest', UTF8CharField(length=255), nullable=False),
|
||||
sa.Column('media_type_id', sa.Integer(), nullable=False),
|
||||
|
@ -56,7 +45,9 @@ def upgrade(tables):
|
|||
)
|
||||
op.create_index('blob_digest', 'blob', ['digest'], unique=True)
|
||||
op.create_index('blob_media_type_id', 'blob', ['media_type_id'], unique=False)
|
||||
op.create_table('blobplacementlocationpreference',
|
||||
|
||||
op.create_table(
|
||||
'blobplacementlocationpreference',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('user_id', sa.Integer(), nullable=False),
|
||||
sa.Column('location_id', sa.Integer(), nullable=False),
|
||||
|
@ -66,7 +57,9 @@ def upgrade(tables):
|
|||
)
|
||||
op.create_index('blobplacementlocationpreference_location_id', 'blobplacementlocationpreference', ['location_id'], unique=False)
|
||||
op.create_index('blobplacementlocationpreference_user_id', 'blobplacementlocationpreference', ['user_id'], unique=False)
|
||||
op.create_table('manifest',
|
||||
|
||||
op.create_table(
|
||||
'manifest',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('digest', UTF8CharField(length=255), nullable=False),
|
||||
sa.Column('media_type_id', sa.Integer(), nullable=False),
|
||||
|
@ -76,7 +69,9 @@ def upgrade(tables):
|
|||
)
|
||||
op.create_index('manifest_digest', 'manifest', ['digest'], unique=True)
|
||||
op.create_index('manifest_media_type_id', 'manifest', ['media_type_id'], unique=False)
|
||||
op.create_table('manifestlist',
|
||||
|
||||
op.create_table(
|
||||
'manifestlist',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('digest', UTF8CharField(length=255), nullable=False),
|
||||
sa.Column('manifest_list_json', UTF8LongText, nullable=False),
|
||||
|
@ -87,7 +82,9 @@ def upgrade(tables):
|
|||
)
|
||||
op.create_index('manifestlist_digest', 'manifestlist', ['digest'], unique=True)
|
||||
op.create_index('manifestlist_media_type_id', 'manifestlist', ['media_type_id'], unique=False)
|
||||
op.create_table('bittorrentpieces',
|
||||
|
||||
op.create_table(
|
||||
'bittorrentpieces',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('blob_id', sa.Integer(), nullable=False),
|
||||
sa.Column('pieces', UTF8LongText, nullable=False),
|
||||
|
@ -97,7 +94,9 @@ def upgrade(tables):
|
|||
)
|
||||
op.create_index('bittorrentpieces_blob_id', 'bittorrentpieces', ['blob_id'], unique=False)
|
||||
op.create_index('bittorrentpieces_blob_id_piece_length', 'bittorrentpieces', ['blob_id', 'piece_length'], unique=True)
|
||||
op.create_table('blobplacement',
|
||||
|
||||
op.create_table(
|
||||
'blobplacement',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('blob_id', sa.Integer(), nullable=False),
|
||||
sa.Column('location_id', sa.Integer(), nullable=False),
|
||||
|
@ -108,7 +107,9 @@ def upgrade(tables):
|
|||
op.create_index('blobplacement_blob_id', 'blobplacement', ['blob_id'], unique=False)
|
||||
op.create_index('blobplacement_blob_id_location_id', 'blobplacement', ['blob_id', 'location_id'], unique=True)
|
||||
op.create_index('blobplacement_location_id', 'blobplacement', ['location_id'], unique=False)
|
||||
op.create_table('blobuploading',
|
||||
|
||||
op.create_table(
|
||||
'blobuploading',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('uuid', UTF8CharField(length=255), nullable=False),
|
||||
sa.Column('created', sa.DateTime(), nullable=False),
|
||||
|
@ -130,7 +131,9 @@ def upgrade(tables):
|
|||
op.create_index('blobuploading_repository_id', 'blobuploading', ['repository_id'], unique=False)
|
||||
op.create_index('blobuploading_repository_id_uuid', 'blobuploading', ['repository_id', 'uuid'], unique=True)
|
||||
op.create_index('blobuploading_uuid', 'blobuploading', ['uuid'], unique=True)
|
||||
op.create_table('derivedimage',
|
||||
|
||||
op.create_table(
|
||||
'derivedimage',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('uuid', UTF8CharField(length=255), nullable=False),
|
||||
sa.Column('source_manifest_id', sa.Integer(), nullable=False),
|
||||
|
@ -153,7 +156,9 @@ def upgrade(tables):
|
|||
op.create_index('derivedimage_source_manifest_id_media_type_id_uniqueness_hash', 'derivedimage', ['source_manifest_id', 'media_type_id', 'uniqueness_hash'], unique=True)
|
||||
op.create_index('derivedimage_uniqueness_hash', 'derivedimage', ['uniqueness_hash'], unique=True)
|
||||
op.create_index('derivedimage_uuid', 'derivedimage', ['uuid'], unique=True)
|
||||
op.create_table('manifestblob',
|
||||
|
||||
op.create_table(
|
||||
'manifestblob',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('manifest_id', sa.Integer(), nullable=False),
|
||||
sa.Column('blob_id', sa.Integer(), nullable=False),
|
||||
|
@ -164,7 +169,9 @@ def upgrade(tables):
|
|||
op.create_index('manifestblob_blob_id', 'manifestblob', ['blob_id'], unique=False)
|
||||
op.create_index('manifestblob_manifest_id', 'manifestblob', ['manifest_id'], unique=False)
|
||||
op.create_index('manifestblob_manifest_id_blob_id', 'manifestblob', ['manifest_id', 'blob_id'], unique=True)
|
||||
op.create_table('manifestlabel',
|
||||
|
||||
op.create_table(
|
||||
'manifestlabel',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('repository_id', sa.Integer(), nullable=False),
|
||||
sa.Column('annotated_id', sa.Integer(), nullable=False),
|
||||
|
@ -178,7 +185,9 @@ def upgrade(tables):
|
|||
op.create_index('manifestlabel_label_id', 'manifestlabel', ['label_id'], unique=False)
|
||||
op.create_index('manifestlabel_repository_id', 'manifestlabel', ['repository_id'], unique=False)
|
||||
op.create_index('manifestlabel_repository_id_annotated_id_label_id', 'manifestlabel', ['repository_id', 'annotated_id', 'label_id'], unique=True)
|
||||
op.create_table('manifestlayer',
|
||||
|
||||
op.create_table(
|
||||
'manifestlayer',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('blob_id', sa.Integer(), nullable=False),
|
||||
sa.Column('manifest_id', sa.Integer(), nullable=False),
|
||||
|
@ -192,7 +201,9 @@ def upgrade(tables):
|
|||
op.create_index('manifestlayer_manifest_id', 'manifestlayer', ['manifest_id'], unique=False)
|
||||
op.create_index('manifestlayer_manifest_id_manifest_index', 'manifestlayer', ['manifest_id', 'manifest_index'], unique=True)
|
||||
op.create_index('manifestlayer_manifest_index', 'manifestlayer', ['manifest_index'], unique=False)
|
||||
op.create_table('manifestlistmanifest',
|
||||
|
||||
op.create_table(
|
||||
'manifestlistmanifest',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('manifest_list_id', sa.Integer(), nullable=False),
|
||||
sa.Column('manifest_id', sa.Integer(), nullable=False),
|
||||
|
@ -210,7 +221,9 @@ def upgrade(tables):
|
|||
op.create_index('manifestlistmanifest_manifest_listid_os_arch_mtid', 'manifestlistmanifest', ['manifest_list_id', 'operating_system', 'architecture', 'media_type_id'], unique=False)
|
||||
op.create_index('manifestlistmanifest_manifest_listid_mtid', 'manifestlistmanifest', ['manifest_list_id', 'media_type_id'], unique=False)
|
||||
op.create_index('manifestlistmanifest_media_type_id', 'manifestlistmanifest', ['media_type_id'], unique=False)
|
||||
op.create_table('tag',
|
||||
|
||||
op.create_table(
|
||||
'tag',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('name', UTF8CharField(length=255), nullable=False),
|
||||
sa.Column('repository_id', sa.Integer(), nullable=False),
|
||||
|
@ -236,7 +249,9 @@ def upgrade(tables):
|
|||
op.create_index('tag_repository_id_name_lifetime_end_tag_kind_id', 'tag', ['repository_id', 'name', 'lifetime_end', 'tag_kind_id'], unique=True)
|
||||
op.create_index('tag_repository_id_name_tag_kind_id', 'tag', ['repository_id', 'name', 'tag_kind_id'], unique=False)
|
||||
op.create_index('tag_tag_kind_id', 'tag', ['tag_kind_id'], unique=False)
|
||||
op.create_table('manifestlayerdockerv1',
|
||||
|
||||
op.create_table(
|
||||
'manifestlayerdockerv1',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('manifest_layer_id', sa.Integer(), nullable=False),
|
||||
sa.Column('image_id', UTF8CharField(length=255), nullable=False),
|
||||
|
@ -247,7 +262,9 @@ def upgrade(tables):
|
|||
)
|
||||
op.create_index('manifestlayerdockerv1_image_id', 'manifestlayerdockerv1', ['image_id'], unique=False)
|
||||
op.create_index('manifestlayerdockerv1_manifest_layer_id', 'manifestlayerdockerv1', ['manifest_layer_id'], unique=False)
|
||||
op.create_table('manifestlayerscan',
|
||||
|
||||
op.create_table(
|
||||
'manifestlayerscan',
|
||||
sa.Column('id', sa.Integer(), nullable=False),
|
||||
sa.Column('layer_id', sa.Integer(), nullable=False),
|
||||
sa.Column('scannable', sa.Boolean(), nullable=False),
|
||||
|
@ -256,22 +273,17 @@ def upgrade(tables):
|
|||
sa.PrimaryKeyConstraint('id', name=op.f('pk_manifestlayerscan'))
|
||||
)
|
||||
op.create_index('manifestlayerscan_layer_id', 'manifestlayerscan', ['layer_id'], unique=True)
|
||||
op.create_index('derivedstorageforimage_source_imageid_trid_uniq_hash', 'derivedstorageforimage', ['source_image_id', 'transformation_id', 'uniqueness_hash'], unique=True)
|
||||
op.drop_index('uniqueness_index', table_name='derivedstorageforimage')
|
||||
op.drop_column(u'imagestorage', 'checksum')
|
||||
op.add_column(u'repository', sa.Column('repo_kind_id', sa.Integer(), nullable=False, server_default="1"))
|
||||
op.create_index('repository_repo_kind_id', 'repository', ['repo_kind_id'], unique=False)
|
||||
|
||||
op.create_foreign_key(op.f('fk_repository_repo_kind_id_repositorykind'), 'repository', 'repositorykind', ['repo_kind_id'], ['id'])
|
||||
|
||||
|
||||
op.bulk_insert(tables.blobplacementlocation,
|
||||
op.bulk_insert(
|
||||
tables.blobplacementlocation,
|
||||
[
|
||||
{'name': 'local_eu'},
|
||||
{'name': 'local_us'},
|
||||
])
|
||||
],
|
||||
)
|
||||
|
||||
op.bulk_insert(tables.mediatype,
|
||||
op.bulk_insert(
|
||||
tables.mediatype,
|
||||
[
|
||||
{'name': 'application/vnd.cnr.blob.v1.tar+gzip'},
|
||||
{'name': 'application/vnd.cnr.package-manifest.helm.v1.json'},
|
||||
|
@ -282,25 +294,20 @@ def upgrade(tables):
|
|||
{'name': 'application/vnd.cnr.package.docker-compose.v1.tar+gzip'},
|
||||
{'name': 'application/vnd.cnr.manifests.v1.json'},
|
||||
{'name': 'application/vnd.cnr.manifest.list.v1.json'},
|
||||
])
|
||||
],
|
||||
)
|
||||
|
||||
op.bulk_insert(tables.tagkind,
|
||||
op.bulk_insert(
|
||||
tables.tagkind,
|
||||
[
|
||||
{'name': 'tag', 'id': 1},
|
||||
{'name': 'release', 'id': 2},
|
||||
{'name': 'channel', 'id': 3},
|
||||
])
|
||||
|
||||
### end Alembic commands ###
|
||||
]
|
||||
)
|
||||
|
||||
|
||||
def downgrade(tables):
|
||||
### commands auto generated by Alembic - please adjust! ###
|
||||
op.drop_constraint(op.f('fk_repository_repo_kind_id_repositorykind'), 'repository', type_='foreignkey')
|
||||
op.drop_column(u'repository', 'repo_kind_id')
|
||||
op.add_column(u'imagestorage', sa.Column('checksum', mysql.VARCHAR(length=255), nullable=True))
|
||||
op.create_index('uniqueness_index', 'derivedstorageforimage', ['source_image_id', 'transformation_id', 'uniqueness_hash'], unique=True)
|
||||
op.drop_index('derivedstorageforimage_source_imageid_trid_uniq_hash', table_name='derivedstorageforimage')
|
||||
op.drop_table('manifestlayerscan')
|
||||
op.drop_table('manifestlayerdockerv1')
|
||||
op.drop_table('tag')
|
||||
|
@ -317,6 +324,4 @@ def downgrade(tables):
|
|||
op.drop_table('blobplacementlocationpreference')
|
||||
op.drop_table('blob')
|
||||
op.drop_table('tagkind')
|
||||
op.drop_table('repositorykind')
|
||||
op.drop_table('blobplacementlocation')
|
||||
### end Alembic commands ###
|
||||
|
|
Reference in a new issue