forked from alemi/upub
feat: storage for application keys
This commit is contained in:
parent
6ea4f06d54
commit
88808f020c
4 changed files with 63 additions and 0 deletions
44
src/migrations/m20240325_000002_add_system_key.rs
Normal file
44
src/migrations/m20240325_000002_add_system_key.rs
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
use sea_orm_migration::prelude::*;
|
||||||
|
|
||||||
|
#[derive(DeriveMigrationName)]
|
||||||
|
pub struct Migration;
|
||||||
|
|
||||||
|
#[async_trait::async_trait]
|
||||||
|
impl MigrationTrait for Migration {
|
||||||
|
async fn up(&self, manager: &SchemaManager) -> Result<(), DbErr> {
|
||||||
|
manager
|
||||||
|
.create_table(
|
||||||
|
Table::create()
|
||||||
|
.table(Application::Table)
|
||||||
|
.col(
|
||||||
|
ColumnDef::new(Application::Id)
|
||||||
|
.integer()
|
||||||
|
.not_null()
|
||||||
|
.auto_increment()
|
||||||
|
.primary_key()
|
||||||
|
)
|
||||||
|
.col(ColumnDef::new(Application::PrivateKey).string().not_null())
|
||||||
|
.col(ColumnDef::new(Application::PublicKey).string().not_null())
|
||||||
|
.to_owned()
|
||||||
|
)
|
||||||
|
.await?;
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
|
async fn down(&self, manager: &SchemaManager) -> Result<(), DbErr> {
|
||||||
|
manager
|
||||||
|
.drop_table(Table::drop().table(Application::Table).to_owned())
|
||||||
|
.await?;
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(DeriveIden)]
|
||||||
|
enum Application {
|
||||||
|
Table,
|
||||||
|
Id,
|
||||||
|
PrivateKey,
|
||||||
|
PublicKey,
|
||||||
|
}
|
|
@ -8,6 +8,7 @@ mod m20240323_000001_add_user_configs;
|
||||||
mod m20240323_000002_add_simple_credentials;
|
mod m20240323_000002_add_simple_credentials;
|
||||||
mod m20240324_000001_add_addressing;
|
mod m20240324_000001_add_addressing;
|
||||||
mod m20240325_000001_add_deliveries;
|
mod m20240325_000001_add_deliveries;
|
||||||
|
mod m20240325_000002_add_system_key;
|
||||||
|
|
||||||
pub struct Migrator;
|
pub struct Migrator;
|
||||||
|
|
||||||
|
@ -23,6 +24,7 @@ impl MigratorTrait for Migrator {
|
||||||
Box::new(m20240323_000002_add_simple_credentials::Migration),
|
Box::new(m20240323_000002_add_simple_credentials::Migration),
|
||||||
Box::new(m20240324_000001_add_addressing::Migration),
|
Box::new(m20240324_000001_add_addressing::Migration),
|
||||||
Box::new(m20240325_000001_add_deliveries::Migration),
|
Box::new(m20240325_000001_add_deliveries::Migration),
|
||||||
|
Box::new(m20240325_000002_add_system_key::Migration),
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
16
src/model/application.rs
Normal file
16
src/model/application.rs
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
use sea_orm::entity::prelude::*;
|
||||||
|
|
||||||
|
#[derive(Clone, Debug, PartialEq, DeriveEntityModel, Eq)]
|
||||||
|
#[sea_orm(table_name = "application")]
|
||||||
|
pub struct Model {
|
||||||
|
#[sea_orm(primary_key)]
|
||||||
|
pub id: i64,
|
||||||
|
|
||||||
|
pub private_key: String,
|
||||||
|
pub public_key: String,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||||
|
pub enum Relation {}
|
||||||
|
|
||||||
|
impl ActiveModelBehavior for ActiveModel {}
|
|
@ -10,6 +10,7 @@ pub mod like;
|
||||||
pub mod credential;
|
pub mod credential;
|
||||||
pub mod session;
|
pub mod session;
|
||||||
pub mod delivery;
|
pub mod delivery;
|
||||||
|
pub mod application;
|
||||||
|
|
||||||
pub mod faker;
|
pub mod faker;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue