Skip to content

Commit 62b2c94

Browse files
authored
feat: support domain name as the ceresdb node addr (#852)
* feat: support domain name as the ceresdb node addr * chore: remove unused imports
1 parent 527f320 commit 62b2c94

File tree

2 files changed

+9
-13
lines changed

2 files changed

+9
-13
lines changed

src/bin/ceresdb-server.rs

+7-13
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
// Copyright 2022 CeresDB Project Authors. Licensed under Apache-2.0.
1+
// Copyright 2022-2023 CeresDB Project Authors. Licensed under Apache-2.0.
22

33
//! The main entry point to start the server
44
5-
use std::{env, net::IpAddr};
5+
use std::env;
66

77
use ceresdb::{
88
config::{ClusterDeployment, Config},
@@ -12,8 +12,11 @@ use clap::{App, Arg};
1212
use common_util::{panic, toml};
1313
use log::info;
1414

15-
/// The ip address of current node.
15+
/// By this environment variable, the address of current node can be overridden.
16+
/// And it could be domain name or ip address, but no port follows it.
1617
const NODE_ADDR: &str = "CERESDB_SERVER_ADDR";
18+
/// By this environment variable, the cluster name of current node can be
19+
/// overridden.
1720
const CLUSTER_NAME: &str = "CLUSTER_NAME";
1821

1922
fn fetch_version() -> String {
@@ -36,14 +39,6 @@ fn fetch_version() -> String {
3639
.join("\n")
3740
}
3841

39-
// Parse the raw addr and panic if it is invalid.
40-
fn parse_node_addr_or_fail(raw_addr: &str) -> IpAddr {
41-
let socket_addr: IpAddr = raw_addr
42-
.parse()
43-
.unwrap_or_else(|_| panic!("invalid node addr, raw_addr:{raw_addr}"));
44-
socket_addr
45-
}
46-
4742
fn main() {
4843
let version = fetch_version();
4944
let matches = App::new("CeresDB Server")
@@ -67,8 +62,7 @@ fn main() {
6762
};
6863

6964
if let Ok(node_addr) = env::var(NODE_ADDR) {
70-
let ip = parse_node_addr_or_fail(&node_addr);
71-
config.node.addr = ip.to_string();
65+
config.node.addr = node_addr;
7266
}
7367
if let Ok(cluster) = env::var(CLUSTER_NAME) {
7468
if let Some(ClusterDeployment::WithMeta(v)) = &mut config.cluster_deployment {

src/config.rs

+2
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ use server::{
1212
#[derive(Clone, Debug, Deserialize, Serialize)]
1313
#[serde(default)]
1414
pub struct NodeInfo {
15+
/// The address of the ceresdb node. It can be a domain name or an IP
16+
/// address without port followed.
1517
pub addr: String,
1618
pub zone: String,
1719
pub idc: String,

0 commit comments

Comments
 (0)