aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2022-10-18 21:17:11 +0200
committerAlex Auvolat <alex@adnab.me>2022-10-18 21:17:11 +0200
commit8bc5caf7aa9bc0e27b741c68113cb7fdde2d54e6 (patch)
treebf5b64bd594972a6827ee3a6eacf5e58710c0d12
parent2da8786f54dcf13bed51549f818a1af3bbebaa8c (diff)
downloadgarage-consul-tls.tar.gz
garage-consul-tls.zip
Fix issue with 'http(s)://' prefixconsul-tls
-rw-r--r--doc/book/reference-manual/configuration.md6
-rw-r--r--src/rpc/consul.rs6
-rw-r--r--src/util/config.rs4
3 files changed, 8 insertions, 8 deletions
diff --git a/doc/book/reference-manual/configuration.md b/doc/book/reference-manual/configuration.md
index dc75236b..2d9c3f0c 100644
--- a/doc/book/reference-manual/configuration.md
+++ b/doc/book/reference-manual/configuration.md
@@ -33,7 +33,7 @@ bootstrap_peers = [
[consul_discovery]
-consul_host = "consul.service"
+consul_http_addr = "http://127.0.0.1:8500"
service_name = "garage-daemon"
ca_cert = "/etc/consul/consul-ca.crt"
client_cert = "/etc/consul/consul-client.crt"
@@ -306,9 +306,9 @@ Garage supports discovering other nodes of the cluster using Consul. For this
to work correctly, nodes need to know their IP address by which they can be
reached by other nodes of the cluster, which should be set in `rpc_public_addr`.
-### `consul_host` and `service_name`
+### `consul_http_addr` and `service_name`
-The `consul_host` parameter should be set to the full HTTP(S) address of the Consul server.
+The `consul_http_addr` parameter should be set to the full HTTP(S) address of the Consul server.
### `service_name`
diff --git a/src/rpc/consul.rs b/src/rpc/consul.rs
index cf050207..b1772a1a 100644
--- a/src/rpc/consul.rs
+++ b/src/rpc/consul.rs
@@ -100,8 +100,8 @@ impl ConsulDiscovery {
pub async fn get_consul_nodes(&self) -> Result<Vec<(NodeID, SocketAddr)>, ConsulError> {
let url = format!(
- "http://{}/v1/catalog/service/{}",
- self.config.consul_host, self.config.service_name
+ "{}/v1/catalog/service/{}",
+ self.config.consul_http_addr, self.config.service_name
);
let http = self.client.get(&url).send().await?;
@@ -158,7 +158,7 @@ impl ConsulDiscovery {
},
};
- let url = format!("http://{}/v1/catalog/register", self.config.consul_host);
+ let url = format!("{}/v1/catalog/register", self.config.consul_http_addr);
let http = self.client.put(&url).json(&advertisement).send().await?;
http.error_for_status()?;
diff --git a/src/util/config.rs b/src/util/config.rs
index a85e025f..04f8375a 100644
--- a/src/util/config.rs
+++ b/src/util/config.rs
@@ -128,8 +128,8 @@ pub struct AdminConfig {
#[derive(Deserialize, Debug, Clone)]
pub struct ConsulDiscoveryConfig {
- /// Consul host to connect to to discover more peers
- pub consul_host: String,
+ /// Consul http or https address to connect to to discover more peers
+ pub consul_http_addr: String,
/// Consul service name to use
pub service_name: String,
/// CA TLS certificate to use when connecting to Consul