Skip to content

Commit e472aff

Browse files
authored
fix: Bump stackable-operator for delayed controller functionality (#859)
* fix: Bump stackable-operator for delayed controller functionality * chore: Update changelog * chore: Use delayed controller * chore(nix): Update crate hashes
1 parent 919addd commit e472aff

File tree

7 files changed

+63
-54
lines changed

7 files changed

+63
-54
lines changed

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ All notable changes to this project will be documented in this file.
1616

1717
### Changed
1818

19-
- Bump stackable-operator to 0.106.2, snafu to 0.9, strum to 0.28 ([#855]).
19+
- Bump stackable-operator to 0.108.0, snafu to 0.9, strum to 0.28 ([#855], [#859]).
2020
- Gracefully shutdown all concurrent tasks by forwarding the SIGTERM signal ([#843]).
2121
- Pin k8s-openapi to `0.26.0` ([#831]).
2222
- BREAKING: The field `opa` in `authorization` is now a mandatory enum variant instead of being optional ([#827]).
@@ -28,6 +28,7 @@ All notable changes to this project will be documented in this file.
2828
### Fixed
2929

3030
- Kuttl tests where catalogs are created after the Trino cluster. These tests failed on Kubernetes 1.35 because the Trino pods were missing catalog information ([#857]).
31+
- Fix "404 page not found" error for the initial object list ([#859]).
3132

3233
### Removed
3334

@@ -42,6 +43,7 @@ All notable changes to this project will be documented in this file.
4243
[#848]: https://github.com/stackabletech/trino-operator/pull/848
4344
[#855]: https://github.com/stackabletech/trino-operator/pull/855
4445
[#857]: https://github.com/stackabletech/trino-operator/pull/857
46+
[#859]: https://github.com/stackabletech/trino-operator/pull/859
4547

4648
## [25.11.0] - 2025-11-07
4749

Cargo.lock

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

Cargo.nix

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

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ repository = "https://github.com/stackabletech/trino-operator"
1111

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

1616
anyhow = "1.0"
1717
async-trait = "0.1"

crate-hashes.json

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

deploy/helm/trino-operator/templates/roles.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,9 @@ rules:
108108
{{- if .Values.maintenance.customResourceDefinitions.maintain }}
109109
- create
110110
- patch
111+
# Required for startup condition
112+
- list
113+
- watch
111114
{{- end }}
112115
- apiGroups:
113116
- listeners.stackable.tech

rust/operator-binary/src/main.rs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use stackable_operator::{
1717
core::v1::{ConfigMap, Service},
1818
},
1919
kube::{
20-
ResourceExt,
20+
CustomResourceExt as _, ResourceExt,
2121
core::DeserializeGuard,
2222
runtime::{
2323
Controller,
@@ -29,7 +29,7 @@ use stackable_operator::{
2929
logging::controller::report_controller_reconciled,
3030
shared::yaml::SerializeOptions,
3131
telemetry::Tracing,
32-
utils::signal::SignalWatcher,
32+
utils::signal::{self, SignalWatcher},
3333
};
3434

3535
use crate::{
@@ -147,7 +147,7 @@ async fn main() -> anyhow::Result<()> {
147147
let authentication_class_cluster_store = cluster_controller.store();
148148
let config_map_cluster_store = cluster_controller.store();
149149

150-
let cluster_controller = cluster_controller
150+
let trino_controller = cluster_controller
151151
.owns(
152152
watch_namespace.get_api::<DeserializeGuard<Service>>(&client),
153153
watcher::Config::default(),
@@ -226,7 +226,12 @@ async fn main() -> anyhow::Result<()> {
226226
)
227227
.map(anyhow::Ok);
228228

229-
futures::try_join!(cluster_controller, eos_checker, webhook_server)?;
229+
let delayed_trino_controller = async {
230+
signal::crd_established(&client, v1alpha1::TrinoCluster::crd_name(), None).await?;
231+
trino_controller.await
232+
};
233+
234+
futures::try_join!(delayed_trino_controller, eos_checker, webhook_server)?;
230235
}
231236
}
232237

0 commit comments

Comments
 (0)