feat: env var to control rabbitmq event ingress

Signed-off-by: Zomatree <me@zomatree.live>
This commit is contained in:
Zomatree
2026-03-15 19:31:04 +00:00
parent 5a6155fdb6
commit 805f2c4528

View File

@@ -56,39 +56,41 @@ async fn main() {
set_rabbitmq_connection(rmq_conn.clone()); set_rabbitmq_connection(rmq_conn.clone());
let channel = rmq_conn if std::env::var("ENABLE_RABBITMQ_INGRESS").as_deref().is_ok_and(|v| v == "1") {
.open_channel(None) let channel = rmq_conn
.await .open_channel(None)
.expect("Failed to open RabbitMQ channel."); .await
.expect("Failed to open RabbitMQ channel.");
channel channel
.exchange_declare( .exchange_declare(
ExchangeDeclareArguments::new("events", "fanout") ExchangeDeclareArguments::new("events", "fanout")
.durable(true) .durable(true)
.finish(), .finish(),
) )
.await .await
.expect("wires"); .expect("Failed to declare exchange");
channel channel
.queue_declare(QueueDeclareArguments::new("events").durable(true).finish()) .queue_declare(QueueDeclareArguments::new("events").durable(true).finish())
.await .await
.expect("wires 2"); .expect("Failed to declare queue");
channel channel
.queue_bind(QueueBindArguments::new("events", "events", "events")) .queue_bind(QueueBindArguments::new("events", "events", "events"))
.await .await
.expect("wires 3"); .expect("Failed to bind queue");
channel channel
.basic_consume( .basic_consume(
RabbitToRedisConsumer, RabbitToRedisConsumer,
BasicConsumeArguments::new("events", "") BasicConsumeArguments::new("events", "")
.manual_ack(false) .manual_ack(false)
.finish(), .finish(),
) )
.await .await
.expect("wires 4"); .expect("Failed to consume channel");
}
// Start accepting new connections and spawn a client for each connection. // Start accepting new connections and spawn a client for each connection.
while let Ok((stream, addr)) = listener.accept().await { while let Ok((stream, addr)) = listener.accept().await {