diff --git a/crates/gateway/src/discord/gateway.rs b/crates/gateway/src/discord/gateway.rs index 4c30e6a9..5ca24185 100644 --- a/crates/gateway/src/discord/gateway.rs +++ b/crates/gateway/src/discord/gateway.rs @@ -1,3 +1,4 @@ +use anyhow::anyhow; use futures::StreamExt; use libpk::{_config::ClusterSettings, runtime_config::RuntimeConfig}; use metrics::counter; @@ -48,6 +49,12 @@ pub fn create_shards(redis: fred::clients::RedisPool) -> anyhow::Result = { + // hacks if let Ok(var) = std::env::var("NOMAD_ALLOC_INDEX") && std::env::var("pluralkit__discord__cluster__total_nodes").is_ok() { std::env::set_var("pluralkit__discord__cluster__node_id", var); } + if let Ok(var) = std::env::var("STATEFULSET_NAME_FOR_INDEX") + && std::env::var("pluralkit__discord__cluster__total_nodes").is_ok() { + std::env::set_var("pluralkit__discord__cluster__node_id", var.split("-").last().unwrap()); + } Arc::new(Config::builder() .add_source(config::Environment::with_prefix("pluralkit").separator("__"))