Skip to content

Commit 0ab49bd

Browse files
authored
chore: Update to stackable-operator 0.95.0 (#689)
1 parent b9aa589 commit 0ab49bd

File tree

9 files changed

+1304
-832
lines changed

9 files changed

+1304
-832
lines changed

Cargo.lock

Lines changed: 351 additions & 310 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.nix

Lines changed: 917 additions & 497 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ repository = "https://github.com/stackabletech/hbase-operator"
1111

1212
[workspace.dependencies]
1313
product-config = { git = "https://github.com/stackabletech/product-config.git", tag = "0.7.0" }
14-
stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", features = ["telemetry", "versioned"], tag = "stackable-operator-0.94.0" }
14+
stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", features = ["telemetry", "versioned"], tag = "stackable-operator-0.95.0" }
1515

1616
anyhow = "1.0"
1717
built = { version = "0.8", features = ["chrono", "git2"] }
@@ -20,7 +20,7 @@ const_format = "0.2"
2020
fnv = "1.0"
2121
futures = { version = "0.3", features = ["compat"] }
2222
indoc = "2.0"
23-
rstest = "0.25"
23+
rstest = "0.26"
2424
serde = { version = "1.0", features = ["derive"] }
2525
serde_json = "1.0"
2626
serde_yaml = "0.9"

crate-hashes.json

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

rust/operator-binary/src/crd/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ use stackable_operator::{
3434
product_logging::{self, spec::Logging},
3535
role_utils::{GenericRoleConfig, JavaCommonConfig, Role, RoleGroupRef},
3636
schemars::{self, JsonSchema},
37+
shared::time::Duration,
3738
status::condition::{ClusterCondition, HasStatusCondition},
38-
time::Duration,
3939
versioned::versioned,
4040
};
4141
use strum::{Display, EnumIter, EnumString};

rust/operator-binary/src/discovery.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ pub fn build_discovery_configmap(
6464
})?
6565
.with_recommended_labels(build_recommended_labels(
6666
hbase,
67-
&resolved_product_image.app_version_label,
67+
&resolved_product_image.app_version_label_value,
6868
&HbaseRole::RegionServer.to_string(),
6969
"discovery",
7070
))

rust/operator-binary/src/hbase_controller.rs

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,10 @@ use stackable_operator::{
2626
},
2727
},
2828
cluster_resources::{ClusterResourceApplyStrategy, ClusterResources},
29-
commons::{product_image_selection::ResolvedProductImage, rbac::build_rbac_resources},
29+
commons::{
30+
product_image_selection::{self, ResolvedProductImage},
31+
rbac::build_rbac_resources,
32+
},
3033
k8s_openapi::{
3134
api::{
3235
apps::v1::{StatefulSet, StatefulSetSpec},
@@ -55,11 +58,11 @@ use stackable_operator::{
5558
},
5659
},
5760
role_utils::{GenericRoleConfig, RoleGroupRef},
61+
shared::time::Duration,
5862
status::condition::{
5963
compute_conditions, operations::ClusterOperationsConditionBuilder,
6064
statefulset::StatefulSetConditionBuilder,
6165
},
62-
time::Duration,
6366
utils::cluster_info::KubernetesClusterInfo,
6467
};
6568
use strum::{EnumDiscriminants, IntoStaticStr, ParseError};
@@ -321,6 +324,11 @@ pub enum Error {
321324

322325
#[snafu(display("failed to build listener persistent volume claim"))]
323326
ListenerPersistentVolumeClaim { source: crate::crd::Error },
327+
328+
#[snafu(display("failed to resolve product image"))]
329+
ResolveProductImage {
330+
source: product_image_selection::Error,
331+
},
324332
}
325333

326334
type Result<T, E = Error> = std::result::Result<T, E>;
@@ -348,15 +356,16 @@ pub async fn reconcile_hbase(
348356
let resolved_product_image = hbase
349357
.spec
350358
.image
351-
.resolve(DOCKER_IMAGE_BASE_NAME, crate::built_info::PKG_VERSION);
359+
.resolve(DOCKER_IMAGE_BASE_NAME, crate::built_info::PKG_VERSION)
360+
.context(ResolveProductImageSnafu)?;
352361
let zookeeper_connection_information = ZookeeperConnectionInformation::retrieve(hbase, client)
353362
.await
354363
.context(RetrieveZookeeperConnectionInformationSnafu)?;
355364

356365
let roles = hbase.build_role_properties().context(RolePropertiesSnafu)?;
357366

358367
let validated_config = validate_all_roles_and_groups_config(
359-
&resolved_product_image.app_version_label,
368+
&resolved_product_image.app_version_label_value,
360369
&transform_all_roles_to_config(hbase, roles).context(GenerateProductConfigSnafu)?,
361370
&ctx.product_config,
362371
false,
@@ -676,7 +685,7 @@ fn build_rolegroup_config_map(
676685
.context(ObjectMissingMetadataForOwnerRefSnafu)?
677686
.with_recommended_labels(build_recommended_labels(
678687
hbase,
679-
&resolved_product_image.app_version_label,
688+
&resolved_product_image.app_version_label_value,
680689
&rolegroup.role,
681690
&rolegroup.role_group,
682691
))
@@ -740,7 +749,7 @@ fn build_rolegroup_service(
740749
.context(ObjectMissingMetadataForOwnerRefSnafu)?
741750
.with_recommended_labels(build_recommended_labels(
742751
hbase,
743-
&resolved_product_image.app_version_label,
752+
&resolved_product_image.app_version_label_value,
744753
&rolegroup.role,
745754
&rolegroup.role_group,
746755
))
@@ -782,7 +791,7 @@ fn build_rolegroup_statefulset(
782791
resolved_product_image: &ResolvedProductImage,
783792
service_account: &ServiceAccount,
784793
) -> Result<StatefulSet> {
785-
let hbase_version = &resolved_product_image.app_version_label;
794+
let hbase_version = &resolved_product_image.app_version_label_value;
786795

787796
let ports = hbase
788797
.ports(hbase_role)
@@ -1244,7 +1253,9 @@ mod test {
12441253

12451254
let resolved_image = ResolvedProductImage {
12461255
image: format!("oci.stackable.tech/sdp/hbase:{hbase_version}-stackable0.0.0-dev"),
1247-
app_version_label: hbase_version.to_string(),
1256+
app_version_label_value: hbase_version
1257+
.parse()
1258+
.expect("test: hbase version is always valid"),
12481259
product_version: hbase_version.to_string(),
12491260
image_pull_policy: "Never".to_string(),
12501261
pull_secrets: None,

rust/operator-binary/src/kerberos.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ use stackable_operator::{
1111
},
1212
},
1313
kube::{ResourceExt, runtime::reflector::ObjectRef},
14-
time::Duration,
14+
shared::time::Duration,
1515
utils::cluster_info::KubernetesClusterInfo,
1616
};
1717

rust/operator-binary/src/main.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,15 +65,15 @@ async fn main() -> anyhow::Result<()> {
6565
Command::Run(ProductOperatorRun {
6666
product_config,
6767
watch_namespace,
68-
telemetry_arguments,
69-
cluster_info_opts,
68+
operator_environment: _,
69+
telemetry,
70+
cluster_info,
7071
}) => {
7172
// NOTE (@NickLarsenNZ): Before stackable-telemetry was used:
7273
// - The console log level was set by `HBASE_OPERATOR_LOG`, and is now `CONSOLE_LOG` (when using Tracing::pre_configured).
7374
// - The file log level was set by `HBASE_OPERATOR_LOG`, and is now set via `FILE_LOG` (when using Tracing::pre_configured).
7475
// - The file log directory was set by `HBASE_OPERATOR_LOG_DIRECTORY`, and is now set by `ROLLING_LOGS_DIR` (or via `--rolling-logs <DIRECTORY>`).
75-
let _tracing_guard =
76-
Tracing::pre_configured(built_info::PKG_NAME, telemetry_arguments).init()?;
76+
let _tracing_guard = Tracing::pre_configured(built_info::PKG_NAME, telemetry).init()?;
7777

7878
tracing::info!(
7979
built_info.pkg_version = built_info::PKG_VERSION,
@@ -91,7 +91,7 @@ async fn main() -> anyhow::Result<()> {
9191
])?;
9292
let client = stackable_operator::client::initialize_operator(
9393
Some(OPERATOR_NAME.to_string()),
94-
&cluster_info_opts,
94+
&cluster_info,
9595
)
9696
.await?;
9797

0 commit comments

Comments
 (0)