diff --git a/server/src/db/migrator/m20230813_000002_create_package_tables.rs b/server/src/db/migrator/m20230730_000001_create_repo_tables.rs similarity index 94% rename from server/src/db/migrator/m20230813_000002_create_package_tables.rs rename to server/src/db/migrator/m20230730_000001_create_repo_tables.rs index 1cfc208..adefe56 100644 --- a/server/src/db/migrator/m20230813_000002_create_package_tables.rs +++ b/server/src/db/migrator/m20230730_000001_create_repo_tables.rs @@ -4,13 +4,29 @@ pub struct Migration; impl MigrationName for Migration { fn name(&self) -> &str { - "m_20230813_000002_create_package_tables" + "m_20230730_000001_create_repo_tables" } } #[async_trait::async_trait] impl MigrationTrait for Migration { async fn up(&self, manager: &SchemaManager) -> Result<(), DbErr> { + manager + .create_table( + Table::create() + .table(Repo::Table) + .col( + ColumnDef::new(Repo::Id) + .integer() + .not_null() + .auto_increment() + .primary_key(), + ) + .col(ColumnDef::new(Repo::Name).string().not_null().unique_key()) + .col(ColumnDef::new(Repo::Description).string()) + .to_owned(), + ) + .await?; manager .create_table( Table::create() @@ -276,6 +292,9 @@ impl MigrationTrait for Migration { .await?; manager .drop_table(Table::drop().table(Package::Table).to_owned()) + .await?; + manager + .drop_table(Table::drop().table(Repo::Table).to_owned()) .await } } @@ -284,6 +303,8 @@ impl MigrationTrait for Migration { pub enum Repo { Table, Id, + Name, + Description, } #[derive(Iden)] diff --git a/server/src/db/migrator/m20230813_000001_create_dist_tables.rs b/server/src/db/migrator/m20230813_000001_create_dist_tables.rs deleted file mode 100644 index 46a2842..0000000 --- a/server/src/db/migrator/m20230813_000001_create_dist_tables.rs +++ /dev/null @@ -1,98 +0,0 @@ -use sea_orm_migration::prelude::*; - -pub struct Migration; - -impl MigrationName for Migration { - fn name(&self) -> &str { - "m_20230813_000001_create_dist_tables" - } -} - -#[async_trait::async_trait] -impl MigrationTrait for Migration { - async fn up(&self, manager: &SchemaManager) -> Result<(), DbErr> { - manager - .create_table( - Table::create() - .table(Distro::Table) - .col( - ColumnDef::new(Distro::Id) - .integer() - .not_null() - .auto_increment() - .primary_key(), - ) - .col( - ColumnDef::new(Distro::Slug) - .string_len(255) - .not_null() - .unique_key(), - ) - .col( - ColumnDef::new(Distro::Name) - .string() - .not_null() - .unique_key(), - ) - .col(ColumnDef::new(Distro::Description).string()) - .col(ColumnDef::new(Distro::Url).string()) - .to_owned(), - ) - .await?; - manager - .create_table( - Table::create() - .table(Repo::Table) - .col( - ColumnDef::new(Repo::Id) - .integer() - .not_null() - .auto_increment() - .primary_key(), - ) - .col(ColumnDef::new(Repo::DistroId).integer().not_null()) - .col(ColumnDef::new(Repo::Name).string().not_null().unique_key()) - .col(ColumnDef::new(Repo::Description).string()) - .foreign_key( - ForeignKey::create() - .name("fk-repo-distro_id") - .from(Repo::Table, Repo::DistroId) - .to(Distro::Table, Distro::Id) - .on_delete(ForeignKeyAction::Cascade), - ) - .to_owned(), - ) - .await?; - - Ok(()) - } - - // Define how to rollback this migration: Drop the Bakery table. - async fn down(&self, manager: &SchemaManager) -> Result<(), DbErr> { - manager - .drop_table(Table::drop().table(Repo::Table).to_owned()) - .await?; - manager - .drop_table(Table::drop().table(Distro::Table).to_owned()) - .await - } -} - -#[derive(Iden)] -pub enum Distro { - Table, - Id, - Slug, - Name, - Description, - Url, -} - -#[derive(Iden)] -pub enum Repo { - Table, - Id, - DistroId, - Name, - Description, -} diff --git a/server/src/db/migrator/mod.rs b/server/src/db/migrator/mod.rs index 0d8899b..d939276 100644 --- a/server/src/db/migrator/mod.rs +++ b/server/src/db/migrator/mod.rs @@ -1,16 +1,12 @@ -mod m20230813_000001_create_dist_tables; -mod m20230813_000002_create_package_tables; - use sea_orm_migration::prelude::*; pub struct Migrator; +mod m20230730_000001_create_repo_tables; + #[async_trait::async_trait] impl MigratorTrait for Migrator { fn migrations() -> Vec> { - vec![ - Box::new(m20230813_000001_create_dist_tables::Migration), - Box::new(m20230813_000002_create_package_tables::Migration), - ] + vec![Box::new(m20230730_000001_create_repo_tables::Migration)] } }