diff --git a/server/Cargo.toml b/server/Cargo.toml index 6bfa31428..020278b6c 100644 --- a/server/Cargo.toml +++ b/server/Cargo.toml @@ -56,8 +56,8 @@ tokio = { version = "1.13.1", default-features = false, features = [ clokwerk = "0.4.0-rc1" actix-web-static-files = "4.0" static-files = "0.2.1" +ulid = { version = "1.0", features = ["serde"] } ureq = { version = "2.5.0", features = ["json"] } -uuid = { version = "1.2.1", features = ["v4", "fast-rng", "serde"] } [build-dependencies] static-files = "0.2.1" diff --git a/server/src/alerts/mod.rs b/server/src/alerts/mod.rs index b793d6176..caa8153d4 100644 --- a/server/src/alerts/mod.rs +++ b/server/src/alerts/mod.rs @@ -17,11 +17,12 @@ */ use serde::{Deserialize, Serialize}; -use uuid::Uuid; pub mod rule; pub mod target; +use crate::utils::uid::Uid; + pub use self::rule::Rule; use self::target::Target; @@ -34,8 +35,8 @@ pub struct Alerts { #[derive(Debug, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct Alert { - #[serde(default = "crate::utils::uuid::gen")] - pub id: Uuid, + #[serde(default = "crate::utils::uid::gen")] + pub id: Uid, pub name: String, pub message: String, pub rule: Rule, diff --git a/server/src/storage/store_metadata.rs b/server/src/storage/store_metadata.rs index 7fc408d11..0ed7faaa8 100644 --- a/server/src/storage/store_metadata.rs +++ b/server/src/storage/store_metadata.rs @@ -24,7 +24,7 @@ use std::{ use serde::{Deserialize, Serialize}; use std::io; -use crate::{option::CONFIG, utils::hostname_unchecked}; +use crate::{option::CONFIG, utils::uid}; use super::{object_storage::PARSEABLE_METADATA_FILE_NAME, ObjectStorageError}; @@ -34,7 +34,8 @@ pub struct StorageMetadata { pub mode: String, pub staging: PathBuf, pub storage: String, - pub deployment_id: String, + #[serde(default = "crate::utils::uid::gen")] + pub deployment_id: uid::Uid, pub user: Vec, pub stream: Vec, } @@ -53,7 +54,7 @@ impl StorageMetadata { mode: CONFIG.storage_name.to_owned(), staging: CONFIG.staging_dir().canonicalize().unwrap(), storage: CONFIG.storage().get_endpoint(), - deployment_id: hostname_unchecked(), + deployment_id: uid::gen(), user: Vec::new(), stream: Vec::new(), } diff --git a/server/src/utils.rs b/server/src/utils.rs index a0b7945b7..d78a441ae 100644 --- a/server/src/utils.rs +++ b/server/src/utils.rs @@ -121,11 +121,13 @@ pub fn capitalize_ascii(s: &str) -> String { s[0..1].to_uppercase() + &s[1..] } -pub mod uuid { - use uuid::Uuid; +pub mod uid { + use ulid::Ulid; - pub fn gen() -> Uuid { - Uuid::new_v4() + pub type Uid = Ulid; + + pub fn gen() -> Ulid { + Ulid::new() } }