arcbox_migration/
progress.rs1#[derive(Debug, Clone, Copy, PartialEq, Eq)]
5pub enum MigrationStage {
6 Prepare,
8 StopSourceContainers,
10 ImportImages,
12 ImportVolumes,
14 RecreateNetworks,
16 RecreateContainers,
18 StartContainers,
20 Cleanup,
22 Complete,
24}
25
26impl MigrationStage {
27 #[must_use]
29 pub const fn as_str(self) -> &'static str {
30 match self {
31 Self::Prepare => "prepare",
32 Self::StopSourceContainers => "stop-source-containers",
33 Self::ImportImages => "import-images",
34 Self::ImportVolumes => "import-volumes",
35 Self::RecreateNetworks => "recreate-networks",
36 Self::RecreateContainers => "recreate-containers",
37 Self::StartContainers => "start-containers",
38 Self::Cleanup => "cleanup",
39 Self::Complete => "complete",
40 }
41 }
42}
43
44#[derive(Debug, Clone, PartialEq, Eq)]
46pub struct MigrationProgress {
47 pub stage: MigrationStage,
49 pub detail: String,
51 pub resource_type: Option<String>,
53 pub resource_name: Option<String>,
55 pub current: Option<u32>,
57 pub total: Option<u32>,
59}