Skip to content

Commit dfd6551

Browse files
committed
refactor: drop dead chroot discovery code path
1 parent 6b625f6 commit dfd6551

5 files changed

Lines changed: 17 additions & 53 deletions

File tree

rust/operator-binary/src/controller.rs

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -607,22 +607,15 @@ pub async fn reconcile_hive(
607607
},
608608
)?;
609609

610-
for discovery_cm in discovery::build_discovery_configmaps(
611-
&validated_cluster,
612-
HiveRole::MetaStore,
613-
None,
614-
listener,
615-
)
616-
.await
617-
.context(BuildDiscoveryConfigSnafu)?
618-
{
619-
let discovery_cm = cluster_resources
620-
.add(client, discovery_cm)
621-
.await
622-
.context(ApplyDiscoveryConfigSnafu)?;
623-
if let Some(generation) = discovery_cm.metadata.resource_version {
624-
discovery_hash.write(generation.as_bytes())
625-
}
610+
let discovery_cm =
611+
discovery::build_discovery_configmap(&validated_cluster, HiveRole::MetaStore, listener)
612+
.context(BuildDiscoveryConfigSnafu)?;
613+
let discovery_cm = cluster_resources
614+
.add(client, discovery_cm)
615+
.await
616+
.context(ApplyDiscoveryConfigSnafu)?;
617+
if let Some(generation) = discovery_cm.metadata.resource_version {
618+
discovery_hash.write(generation.as_bytes());
626619
}
627620
}
628621

rust/operator-binary/src/controller/build/resource/discovery.rs

Lines changed: 3 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -34,29 +34,13 @@ fn cluster_object_ref(cluster: &ValidatedCluster) -> ObjectRef<v1alpha1::HiveClu
3434
ObjectRef::new(cluster.name.as_ref()).within(cluster.namespace.as_ref())
3535
}
3636

37-
/// Builds discovery [`ConfigMap`]s for connecting to a [`v1alpha1::HiveCluster`] for all expected
38-
/// scenarios.
39-
pub async fn build_discovery_configmaps(
40-
cluster: &ValidatedCluster,
41-
hive_role: HiveRole,
42-
chroot: Option<&str>,
43-
listener: Listener,
44-
) -> Result<Vec<ConfigMap>, Error> {
45-
let discovery_configmaps = vec![build_discovery_configmap(
46-
cluster, hive_role, chroot, listener,
47-
)?];
48-
49-
Ok(discovery_configmaps)
50-
}
51-
5237
/// Build a discovery [`ConfigMap`] containing information about how to connect to a certain
5338
/// [`v1alpha1::HiveCluster`].
5439
///
55-
/// Data is coming from the [`Listener`] objects. Connection string is only build by [`build_listener_connection_string`].
56-
fn build_discovery_configmap(
40+
/// Data is coming from the [`Listener`] objects. Connection string is only built by [`build_listener_connection_string`].
41+
pub fn build_discovery_configmap(
5742
cluster: &ValidatedCluster,
5843
hive_role: HiveRole,
59-
chroot: Option<&str>,
6044
listener: Listener,
6145
) -> Result<ConfigMap, Error> {
6246
let mut discovery_configmap = ConfigMapBuilder::new();
@@ -72,7 +56,7 @@ fn build_discovery_configmap(
7256

7357
discovery_configmap.add_data(
7458
"HIVE".to_string(),
75-
build_listener_connection_string(listener, &hive_role.to_string(), chroot)
59+
build_listener_connection_string(listener, &hive_role.to_string())
7660
.context(ListenerConfigurationSnafu)?,
7761
);
7862

rust/operator-binary/src/controller/build/resource/listener.rs

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,19 @@ pub enum Error {
1515
RoleListenerHasNoAddress { role: String },
1616
#[snafu(display("could not find port [{port_name}] for rolegroup listener {role}"))]
1717
NoServicePort { port_name: String, role: String },
18-
#[snafu(display("chroot path {chroot} was relative (must be absolute)"))]
19-
RelativeChroot { chroot: String },
2018
}
2119

2220
// Builds the connection string with respect to the listener provided objects
2321
pub fn build_listener_connection_string(
2422
listener_ref: Listener,
25-
role: &String,
26-
chroot: Option<&str>,
23+
role: &str,
2724
) -> Result<String, Error> {
2825
// We only need the first address corresponding to the role
2926
let listener_address = listener_ref
3027
.status
3128
.and_then(|s| s.ingress_addresses?.into_iter().next())
3229
.context(RoleListenerHasNoAddressSnafu { role })?;
33-
let mut conn_str = format!(
30+
let conn_str = format!(
3431
"thrift://{address}:{port}",
3532
address = listener_address.address,
3633
port = listener_address
@@ -42,12 +39,6 @@ pub fn build_listener_connection_string(
4239
role
4340
})?
4441
);
45-
if let Some(chroot) = chroot {
46-
if !chroot.starts_with('/') {
47-
return RelativeChrootSnafu { chroot }.fail();
48-
}
49-
conn_str.push_str(chroot);
50-
}
5142
Ok(conn_str)
5243
}
5344

rust/operator-binary/src/controller/dereference.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use stackable_operator::{
66
commons::opa::{OpaApiVersion, OpaConfig},
77
crd::s3,
88
k8s_openapi::api::core::v1::ConfigMap,
9-
kube::ResourceExt,
109
v2::{controller_utils::get_namespace, types::kubernetes::SecretClassName},
1110
};
1211

@@ -64,11 +63,9 @@ impl ResolvedOpaConfig {
6463
.await
6564
.context(InvalidOpaConfigSnafu)?;
6665

66+
let namespace = get_namespace(hive).context(ResolveNamespaceSnafu)?;
6767
let tls_secret_class = client
68-
.get::<ConfigMap>(
69-
&opa_config.config_map_name,
70-
hive.namespace().as_deref().unwrap_or("default"),
71-
)
68+
.get::<ConfigMap>(&opa_config.config_map_name, namespace.as_ref())
7269
.await
7370
.ok()
7471
.and_then(|cm| cm.data)

rust/operator-binary/src/controller/validate.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -195,8 +195,7 @@ pub fn validate_cluster(
195195
groups.insert(role_group_name, validated_rg);
196196
}
197197

198-
let mut role_group_configs = BTreeMap::new();
199-
role_group_configs.insert(hive_role, groups);
198+
let role_group_configs = BTreeMap::from([(hive_role, groups)]);
200199

201200
let metadata_database_connection_details = hive
202201
.spec

0 commit comments

Comments
 (0)