Skip to content

Commit ca2104d

Browse files
committed
Refactor product_config_utils
1 parent ba84a4d commit ca2104d

File tree

2 files changed

+15
-13
lines changed

2 files changed

+15
-13
lines changed

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ kube = { version = "0.86.0", default-features = false, features = ["client", "js
3131
lazy_static = "1.4.0"
3232
opentelemetry = { version = "0.20.0", features = ["rt-tokio"] }
3333
opentelemetry-jaeger = { version = "0.19.0", features = ["rt-tokio"] }
34-
product-config = { git = "https://github.com/stackabletech/product-config.git", tag = "0.5.0" }
34+
product-config = { git = "https://github.com/stackabletech/product-config.git", tag = "0.6.0" }
3535
rand = "0.8.5"
3636
regex = "1.9.3"
3737
schemars = "0.8.12"

src/product_config_utils.rs

+14-12
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,22 @@
1-
use crate::error;
2-
use crate::error::*;
3-
use crate::role_utils::{CommonConfiguration, Role};
4-
use product_config::types::PropertyNameKind;
5-
use product_config::{ProductConfigManager, PropertyValidationResult};
1+
use std::collections::{BTreeMap, HashMap};
2+
3+
use product_config::{types::PropertyNameKind, ProductConfigManager, PropertyValidationResult};
64
use schemars::JsonSchema;
75
use serde::Serialize;
8-
use std::collections::{BTreeMap, HashMap};
9-
use thiserror::Error;
6+
use snafu::Snafu;
107
use tracing::{debug, error, warn};
118

12-
#[derive(Error, Debug)]
9+
use crate::{
10+
error::{Error, OperatorResult},
11+
role_utils::{CommonConfiguration, Role},
12+
};
13+
14+
#[derive(Debug, Snafu)]
1315
pub enum ConfigError {
14-
#[error("Invalid configuration found: {reason}")]
16+
#[snafu(display("Invalid configuration found: {reason}"))]
1517
InvalidConfiguration { reason: String },
1618

17-
#[error("Collected product config validation errors: {collected_errors:?}")]
19+
#[snafu(display("Collected product config validation errors: {collected_errors:?}"))]
1820
ProductConfigErrors {
1921
collected_errors: Vec<product_config::error::Error>,
2022
},
@@ -121,13 +123,13 @@ pub fn config_for_role_and_group<'a>(
121123
) -> OperatorResult<&'a HashMap<PropertyNameKind, BTreeMap<String, String>>> {
122124
let result = match role_config.get(role) {
123125
None => {
124-
return Err(error::Error::MissingRole {
126+
return Err(Error::MissingRole {
125127
role: role.to_string(),
126128
})
127129
}
128130
Some(group_config) => match group_config.get(group) {
129131
None => {
130-
return Err(error::Error::MissingRoleGroup {
132+
return Err(Error::MissingRoleGroup {
131133
role: role.to_string(),
132134
role_group: group.to_string(),
133135
})

0 commit comments

Comments
 (0)