Skip to main content

microsandbox_migration/
lib.rs

1//! Database migrations for microsandbox.
2
3mod m20260305_000001_create_image_tables;
4mod m20260305_000002_create_sandbox_tables;
5mod m20260305_000003_create_storage_tables;
6mod m20260305_000004_create_sandbox_images_table;
7mod m20260410_000001_erofs_image_schema;
8mod m20260501_000001_create_snapshot_index;
9mod m20260517_000001_drop_sandbox_metric;
10
11use sea_orm_migration::prelude::*;
12
13//--------------------------------------------------------------------------------------------------
14// Re-Exports
15//--------------------------------------------------------------------------------------------------
16
17pub use sea_orm_migration::MigratorTrait;
18
19//--------------------------------------------------------------------------------------------------
20// Types
21//--------------------------------------------------------------------------------------------------
22
23/// The migrator that runs all migrations in order.
24pub struct Migrator;
25
26//--------------------------------------------------------------------------------------------------
27// Trait Implementations
28//--------------------------------------------------------------------------------------------------
29
30#[async_trait::async_trait]
31impl MigratorTrait for Migrator {
32    fn migrations() -> Vec<Box<dyn MigrationTrait>> {
33        vec![
34            Box::new(m20260305_000001_create_image_tables::Migration),
35            Box::new(m20260305_000002_create_sandbox_tables::Migration),
36            Box::new(m20260305_000003_create_storage_tables::Migration),
37            Box::new(m20260305_000004_create_sandbox_images_table::Migration),
38            Box::new(m20260410_000001_erofs_image_schema::Migration),
39            Box::new(m20260501_000001_create_snapshot_index::Migration),
40            Box::new(m20260517_000001_drop_sandbox_metric::Migration),
41        ]
42    }
43}