aboutsummaryrefslogtreecommitdiff
path: root/src/rpc
diff options
context:
space:
mode:
Diffstat (limited to 'src/rpc')
-rw-r--r--src/rpc/consul_services.rs19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/rpc/consul_services.rs b/src/rpc/consul_services.rs
index 928c7691..aaf3c4a1 100644
--- a/src/rpc/consul_services.rs
+++ b/src/rpc/consul_services.rs
@@ -129,17 +129,22 @@ impl ConsulServiceDiscovery {
]
.concat();
+ let mut meta = HashMap::from([
+ (format!("{}-pubkey", META_PREFIX), hex::encode(node_id)),
+ (format!("{}-hostname", META_PREFIX), hostname.to_string()),
+ ]);
+
+ if let Some(global_meta) = &self.config.meta {
+ for (key, value) in global_meta.into_iter() {
+ meta.insert(key.clone(), value.clone());
+ }
+ }
+
let advertisement: ConsulPublishService = ConsulPublishService {
service_id: node.clone(),
service_name: self.config.service_name.clone(),
tags,
- meta: [
- (format!("{}-pubkey", META_PREFIX), hex::encode(node_id)),
- (format!("{}-hostname", META_PREFIX), hostname.to_string()),
- ]
- .iter()
- .cloned()
- .collect(),
+ meta,
address: rpc_public_addr.ip(),
port: rpc_public_addr.port(),
};