From 6aa40a448355a0d9d8943312be224f3aa5d4f2c5 Mon Sep 17 00:00:00 2001 From: Nick Larsen Date: Wed, 21 May 2025 14:51:48 +0200 Subject: [PATCH 1/2] chore: Bump stackable_operator to 0.93.1 Bump stackable-operator to 0.93.0 which versions common CRD structs. --- Cargo.lock | 201 +++--- Cargo.nix | 600 ++++++++---------- Cargo.toml | 4 +- crate-hashes.json | 14 +- deploy/helm/trino-operator/crds/crds.yaml | 4 +- .../operator-binary/src/authentication/mod.rs | 25 +- .../src/authentication/oidc/mod.rs | 16 +- .../src/authentication/password/file.rs | 13 +- .../src/authentication/password/ldap.rs | 19 +- .../src/authentication/password/mod.rs | 20 +- rust/operator-binary/src/catalog/commons.rs | 10 +- rust/operator-binary/src/catalog/mod.rs | 9 +- rust/operator-binary/src/controller.rs | 2 +- .../operator-binary/src/crd/authentication.rs | 14 +- .../src/crd/catalog/delta_lake.rs | 4 +- rust/operator-binary/src/crd/catalog/hive.rs | 4 +- .../src/crd/catalog/iceberg.rs | 4 +- rust/operator-binary/src/crd/mod.rs | 6 +- rust/operator-binary/src/main.rs | 6 +- 19 files changed, 460 insertions(+), 515 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 38946c6c..81f5d495 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -173,40 +173,13 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" -[[package]] -name = "axum" -version = "0.7.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" -dependencies = [ - "async-trait", - "axum-core 0.4.5", - "bytes", - "futures-util", - "http", - "http-body", - "http-body-util", - "itoa", - "matchit 0.7.3", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "sync_wrapper", - "tower 0.5.2", - "tower-layer", - "tower-service", -] - [[package]] name = "axum" version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de45108900e1f9b9242f7f2e254aa3e2c029c921c258fe9e6b4217eeebd54288" dependencies = [ - "axum-core 0.5.2", + "axum-core", "bytes", "form_urlencoded", "futures-util", @@ -216,7 +189,7 @@ dependencies = [ "hyper", "hyper-util", "itoa", - "matchit 0.8.4", + "matchit", "memchr", "mime", "percent-encoding", @@ -234,26 +207,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "axum-core" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" -dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http", - "http-body", - "http-body-util", - "mime", - "pin-project-lite", - "rustversion", - "sync_wrapper", - "tower-layer", - "tower-service", -] - [[package]] name = "axum-core" version = "0.5.2" @@ -344,9 +297,9 @@ dependencies = [ [[package]] name = "built" -version = "0.7.7" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56ed6191a7e78c36abdb16ab65341eefd73d64d303fffccdbb00d51e4205967b" +checksum = "f4ad8f11f288f48ca24471bbd51ac257aaeaaa07adae295591266b792902ae64" dependencies = [ "chrono", "git2", @@ -602,6 +555,26 @@ dependencies = [ "powerfmt", ] +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.100", +] + [[package]] name = "digest" version = "0.10.7" @@ -1482,22 +1455,21 @@ dependencies = [ [[package]] name = "k8s-openapi" -version = "0.24.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c75b990324f09bef15e791606b7b7a296d02fc88a344f6eba9390970a870ad5" +checksum = "aa60a41b57ae1a0a071af77dbcf89fc9819cfe66edaf2beeb204c34459dcf0b2" dependencies = [ "base64 0.22.1", "chrono", "schemars", "serde", - "serde-value", "serde_json", ] [[package]] name = "k8s-version" -version = "0.1.2" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +version = "0.1.3" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#d990019c690ed85aea29b095a03661c015676caa" dependencies = [ "darling", "regex", @@ -1506,9 +1478,9 @@ dependencies = [ [[package]] name = "kube" -version = "0.99.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a4eb20010536b48abe97fec37d23d43069bcbe9686adcf9932202327bc5ca6e" +checksum = "1b49c39074089233c2bb7b1791d1b6c06c84dbab26757491fad9d233db0d432f" dependencies = [ "k8s-openapi", "kube-client", @@ -1519,9 +1491,9 @@ dependencies = [ [[package]] name = "kube-client" -version = "0.99.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc2ed952042df20d15ac2fe9614d0ec14b6118eab89633985d4b36e688dccf1" +checksum = "e199797b1b08865041c9c698f0d11a91de0a8143e808b71e250cd4a1d7ce2b9f" dependencies = [ "base64 0.22.1", "bytes", @@ -1556,11 +1528,12 @@ dependencies = [ [[package]] name = "kube-core" -version = "0.99.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff0d0793db58e70ca6d689489183816cb3aa481673e7433dc618cf7e8007c675" +checksum = "1bdefbba89dea2d99ea822a1d7cd6945535efbfb10b790056ee9284bf9e698e7" dependencies = [ "chrono", + "derive_more", "form_urlencoded", "http", "json-patch", @@ -1574,9 +1547,9 @@ dependencies = [ [[package]] name = "kube-derive" -version = "0.99.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c562f58dc9f7ca5feac8a6ee5850ca221edd6f04ce0dd2ee873202a88cd494c9" +checksum = "8e609a3633689a50869352a3c16e01d863b6137863c80eeb038383d5ab9f83bf" dependencies = [ "darling", "proc-macro2", @@ -1588,14 +1561,13 @@ dependencies = [ [[package]] name = "kube-runtime" -version = "0.99.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88f34cfab9b4bd8633062e0e85edb81df23cb09f159f2e31c60b069ae826ffdc" +checksum = "1d4bd8a4554786f8f9a87bfa977fb7dbaa1d7f102a30477338b044b65de29d8e" dependencies = [ "ahash", "async-broadcast", "async-stream", - "async-trait", "backon", "educe", "futures 0.3.31", @@ -1681,12 +1653,6 @@ dependencies = [ "regex-automata 0.1.10", ] -[[package]] -name = "matchit" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" - [[package]] name = "matchit" version = "0.8.4" @@ -1811,9 +1777,9 @@ dependencies = [ [[package]] name = "opentelemetry" -version = "0.28.0" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "236e667b670a5cdf90c258f5a55794ec5ac5027e960c224bff8367a59e1e6426" +checksum = "9e87237e2775f74896f9ad219d26a2081751187eb7c9f5c58dde20a23b95d16c" dependencies = [ "futures-core", "futures-sink", @@ -1825,9 +1791,9 @@ dependencies = [ [[package]] name = "opentelemetry-appender-tracing" -version = "0.28.1" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c513c7af3bec30113f3d4620134ff923295f1e9c580fda2b8abe0831f925ddc0" +checksum = "e716f864eb23007bdd9dc4aec381e188a1cee28eecf22066772b5fd822b9727d" dependencies = [ "opentelemetry", "tracing", @@ -1837,9 +1803,9 @@ dependencies = [ [[package]] name = "opentelemetry-http" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8863faf2910030d139fb48715ad5ff2f35029fc5f244f6d5f689ddcf4d26253" +checksum = "46d7ab32b827b5b495bd90fa95a6cb65ccc293555dcc3199ae2937d2d237c8ed" dependencies = [ "async-trait", "bytes", @@ -1851,11 +1817,10 @@ dependencies = [ [[package]] name = "opentelemetry-otlp" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bef114c6d41bea83d6dc60eb41720eedd0261a67af57b66dd2b84ac46c01d91" +checksum = "d899720fe06916ccba71c01d04ecd77312734e2de3467fd30d9d580c8ce85656" dependencies = [ - "async-trait", "futures-core", "http", "opentelemetry", @@ -1872,9 +1837,9 @@ dependencies = [ [[package]] name = "opentelemetry-proto" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f8870d3024727e99212eb3bb1762ec16e255e3e6f58eeb3dc8db1aa226746d" +checksum = "8c40da242381435e18570d5b9d50aca2a4f4f4d8e146231adb4e7768023309b3" dependencies = [ "opentelemetry", "opentelemetry_sdk", @@ -1884,18 +1849,17 @@ dependencies = [ [[package]] name = "opentelemetry_sdk" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84dfad6042089c7fc1f6118b7040dc2eb4ab520abbf410b79dc481032af39570" +checksum = "afdefb21d1d47394abc1ba6c57363ab141be19e27cc70d0e422b7f303e4d290b" dependencies = [ - "async-trait", "futures-channel", "futures-executor", "futures-util", "glob", "opentelemetry", "percent-encoding", - "rand", + "rand 0.9.1", "serde_json", "thiserror 2.0.12", "tokio", @@ -2140,8 +2104,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97" +dependencies = [ + "rand_chacha 0.9.0", + "rand_core 0.9.3", ] [[package]] @@ -2151,7 +2125,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core 0.9.3", ] [[package]] @@ -2163,6 +2147,15 @@ dependencies = [ "getrandom 0.2.15", ] +[[package]] +name = "rand_core" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" +dependencies = [ + "getrandom 0.3.2", +] + [[package]] name = "redox_syscall" version = "0.5.11" @@ -2696,8 +2689,8 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "stackable-operator" -version = "0.92.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +version = "0.93.1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#d990019c690ed85aea29b095a03661c015676caa" dependencies = [ "chrono", "clap", @@ -2734,7 +2727,7 @@ dependencies = [ [[package]] name = "stackable-operator-derive" version = "0.3.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#d990019c690ed85aea29b095a03661c015676caa" dependencies = [ "darling", "proc-macro2", @@ -2745,7 +2738,7 @@ dependencies = [ [[package]] name = "stackable-shared" version = "0.0.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#d990019c690ed85aea29b095a03661c015676caa" dependencies = [ "kube", "semver", @@ -2757,9 +2750,9 @@ dependencies = [ [[package]] name = "stackable-telemetry" version = "0.6.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#d990019c690ed85aea29b095a03661c015676caa" dependencies = [ - "axum 0.8.3", + "axum", "clap", "futures-util", "opentelemetry", @@ -2804,7 +2797,7 @@ dependencies = [ [[package]] name = "stackable-versioned" version = "0.7.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#d990019c690ed85aea29b095a03661c015676caa" dependencies = [ "stackable-versioned-macros", ] @@ -2812,7 +2805,7 @@ dependencies = [ [[package]] name = "stackable-versioned-macros" version = "0.7.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#d990019c690ed85aea29b095a03661c015676caa" dependencies = [ "convert_case", "darling", @@ -3079,13 +3072,10 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "877c5b330756d856ffcc4553ab34a5684481ade925ecc54bcd1bf02b1d0d4d52" dependencies = [ - "async-stream", "async-trait", - "axum 0.7.9", "base64 0.22.1", "bytes", "flate2", - "h2", "http", "http-body", "http-body-util", @@ -3095,7 +3085,6 @@ dependencies = [ "percent-encoding", "pin-project", "prost", - "socket2", "tokio", "tokio-stream", "tower 0.4.13", @@ -3115,7 +3104,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand", + "rand 0.8.5", "slab", "tokio", "tokio-util", @@ -3229,9 +3218,9 @@ dependencies = [ [[package]] name = "tracing-opentelemetry" -version = "0.29.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721f2d2569dce9f3dfbbddee5906941e953bfcdf736a62da3377f5751650cc36" +checksum = "fd8e764bd6f5813fd8bebc3117875190c5b0415be8f7f8059bffb6ecd979c444" dependencies = [ "js-sys", "once_cell", diff --git a/Cargo.nix b/Cargo.nix index a04dc397..21867cc2 100644 --- a/Cargo.nix +++ b/Cargo.nix @@ -516,123 +516,7 @@ rec { ]; }; - "axum 0.7.9" = rec { - crateName = "axum"; - version = "0.7.9"; - edition = "2021"; - sha256 = "07z7wqczi9i8xb4460rvn39p4wjqwr32hx907crd1vwb2fy8ijpd"; - dependencies = [ - { - name = "async-trait"; - packageId = "async-trait"; - } - { - name = "axum-core"; - packageId = "axum-core 0.4.5"; - } - { - name = "bytes"; - packageId = "bytes"; - } - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - features = [ "alloc" ]; - } - { - name = "http"; - packageId = "http"; - } - { - name = "http-body"; - packageId = "http-body"; - } - { - name = "http-body-util"; - packageId = "http-body-util"; - } - { - name = "itoa"; - packageId = "itoa"; - } - { - name = "matchit"; - packageId = "matchit 0.7.3"; - } - { - name = "memchr"; - packageId = "memchr"; - } - { - name = "mime"; - packageId = "mime"; - } - { - name = "percent-encoding"; - packageId = "percent-encoding"; - } - { - name = "pin-project-lite"; - packageId = "pin-project-lite"; - } - { - name = "rustversion"; - packageId = "rustversion"; - } - { - name = "serde"; - packageId = "serde"; - } - { - name = "sync_wrapper"; - packageId = "sync_wrapper"; - } - { - name = "tower"; - packageId = "tower 0.5.2"; - usesDefaultFeatures = false; - features = [ "util" ]; - } - { - name = "tower-layer"; - packageId = "tower-layer"; - } - { - name = "tower-service"; - packageId = "tower-service"; - } - ]; - devDependencies = [ - { - name = "serde"; - packageId = "serde"; - features = [ "derive" ]; - } - { - name = "tower"; - packageId = "tower 0.5.2"; - rename = "tower"; - features = [ "util" "timeout" "limit" "load-shed" "steer" "filter" ]; - } - ]; - features = { - "__private_docs" = [ "axum-core/__private_docs" "tower/full" "dep:tower-http" ]; - "default" = [ "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; - "form" = [ "dep:serde_urlencoded" ]; - "http1" = [ "dep:hyper" "hyper?/http1" "hyper-util?/http1" ]; - "http2" = [ "dep:hyper" "hyper?/http2" "hyper-util?/http2" ]; - "json" = [ "dep:serde_json" "dep:serde_path_to_error" ]; - "macros" = [ "dep:axum-macros" ]; - "multipart" = [ "dep:multer" ]; - "query" = [ "dep:serde_urlencoded" ]; - "tokio" = [ "dep:hyper-util" "dep:tokio" "tokio/net" "tokio/rt" "tower/make" "tokio/macros" ]; - "tower-log" = [ "tower/log" ]; - "tracing" = [ "dep:tracing" "axum-core/tracing" ]; - "ws" = [ "dep:hyper" "tokio" "dep:tokio-tungstenite" "dep:sha1" "dep:base64" ]; - }; - }; - "axum 0.8.3" = rec { + "axum" = rec { crateName = "axum"; version = "0.8.3"; edition = "2021"; @@ -640,7 +524,7 @@ rec { dependencies = [ { name = "axum-core"; - packageId = "axum-core 0.5.2"; + packageId = "axum-core"; } { name = "bytes"; @@ -686,7 +570,7 @@ rec { } { name = "matchit"; - packageId = "matchit 0.8.4"; + packageId = "matchit"; } { name = "memchr"; @@ -811,78 +695,7 @@ rec { }; resolvedDefaultFeatures = [ "default" "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; }; - "axum-core 0.4.5" = rec { - crateName = "axum-core"; - version = "0.4.5"; - edition = "2021"; - sha256 = "16b1496c4gm387q20hkv5ic3k5bd6xmnvk50kwsy6ymr8rhvvwh9"; - libName = "axum_core"; - dependencies = [ - { - name = "async-trait"; - packageId = "async-trait"; - } - { - name = "bytes"; - packageId = "bytes"; - } - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - features = [ "alloc" ]; - } - { - name = "http"; - packageId = "http"; - } - { - name = "http-body"; - packageId = "http-body"; - } - { - name = "http-body-util"; - packageId = "http-body-util"; - } - { - name = "mime"; - packageId = "mime"; - } - { - name = "pin-project-lite"; - packageId = "pin-project-lite"; - } - { - name = "rustversion"; - packageId = "rustversion"; - } - { - name = "sync_wrapper"; - packageId = "sync_wrapper"; - } - { - name = "tower-layer"; - packageId = "tower-layer"; - } - { - name = "tower-service"; - packageId = "tower-service"; - } - ]; - devDependencies = [ - { - name = "futures-util"; - packageId = "futures-util"; - usesDefaultFeatures = false; - features = [ "alloc" ]; - } - ]; - features = { - "__private_docs" = [ "dep:tower-http" ]; - "tracing" = [ "dep:tracing" ]; - }; - }; - "axum-core 0.5.2" = rec { + "axum-core" = rec { crateName = "axum-core"; version = "0.5.2"; edition = "2021"; @@ -1159,9 +972,9 @@ rec { }; "built" = rec { crateName = "built"; - version = "0.7.7"; + version = "0.8.0"; edition = "2021"; - sha256 = "0ywn0m11xm80pg6zrzq3sdj3vmzg3qs6baqnvfmkd377ly8n3van"; + sha256 = "0r5f08lpjsr6j5ajkbmd0ymfmajpq8ddbfvi8ji8rx48y88qzbgl"; authors = [ "Lukas Lueg " ]; @@ -1901,6 +1714,94 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "powerfmt" "std" ]; }; + "derive_more" = rec { + crateName = "derive_more"; + version = "2.0.1"; + edition = "2021"; + sha256 = "0y3n97cc7rsvgnj211p92y1ppzh6jzvq5kvk6340ghkhfp7l4ch9"; + authors = [ + "Jelte Fennema " + ]; + dependencies = [ + { + name = "derive_more-impl"; + packageId = "derive_more-impl"; + } + ]; + features = { + "add" = [ "derive_more-impl/add" ]; + "add_assign" = [ "derive_more-impl/add_assign" ]; + "as_ref" = [ "derive_more-impl/as_ref" ]; + "constructor" = [ "derive_more-impl/constructor" ]; + "debug" = [ "derive_more-impl/debug" ]; + "default" = [ "std" ]; + "deref" = [ "derive_more-impl/deref" ]; + "deref_mut" = [ "derive_more-impl/deref_mut" ]; + "display" = [ "derive_more-impl/display" ]; + "error" = [ "derive_more-impl/error" ]; + "from" = [ "derive_more-impl/from" ]; + "from_str" = [ "derive_more-impl/from_str" ]; + "full" = [ "add" "add_assign" "as_ref" "constructor" "debug" "deref" "deref_mut" "display" "error" "from" "from_str" "index" "index_mut" "into" "into_iterator" "is_variant" "mul" "mul_assign" "not" "sum" "try_from" "try_into" "try_unwrap" "unwrap" ]; + "index" = [ "derive_more-impl/index" ]; + "index_mut" = [ "derive_more-impl/index_mut" ]; + "into" = [ "derive_more-impl/into" ]; + "into_iterator" = [ "derive_more-impl/into_iterator" ]; + "is_variant" = [ "derive_more-impl/is_variant" ]; + "mul" = [ "derive_more-impl/mul" ]; + "mul_assign" = [ "derive_more-impl/mul_assign" ]; + "not" = [ "derive_more-impl/not" ]; + "sum" = [ "derive_more-impl/sum" ]; + "testing-helpers" = [ "derive_more-impl/testing-helpers" "dep:rustc_version" ]; + "try_from" = [ "derive_more-impl/try_from" ]; + "try_into" = [ "derive_more-impl/try_into" ]; + "try_unwrap" = [ "derive_more-impl/try_unwrap" ]; + "unwrap" = [ "derive_more-impl/unwrap" ]; + }; + resolvedDefaultFeatures = [ "default" "from" "std" ]; + }; + "derive_more-impl" = rec { + crateName = "derive_more-impl"; + version = "2.0.1"; + edition = "2021"; + sha256 = "1wqxcb7d5lzvpplz9szp4rwy1r23f5wmixz0zd2vcjscqknji9mx"; + procMacro = true; + libName = "derive_more_impl"; + authors = [ + "Jelte Fennema " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.100"; + } + ]; + features = { + "as_ref" = [ "syn/extra-traits" "syn/visit" ]; + "debug" = [ "syn/extra-traits" "dep:unicode-xid" ]; + "display" = [ "syn/extra-traits" "dep:unicode-xid" ]; + "error" = [ "syn/extra-traits" ]; + "from" = [ "syn/extra-traits" ]; + "full" = [ "add" "add_assign" "as_ref" "constructor" "debug" "deref" "deref_mut" "display" "error" "from" "from_str" "index" "index_mut" "into" "into_iterator" "is_variant" "mul" "mul_assign" "not" "sum" "try_from" "try_into" "try_unwrap" "unwrap" ]; + "into" = [ "syn/extra-traits" ]; + "is_variant" = [ "dep:convert_case" ]; + "mul" = [ "syn/extra-traits" ]; + "mul_assign" = [ "syn/extra-traits" ]; + "not" = [ "syn/extra-traits" ]; + "testing-helpers" = [ "dep:rustc_version" ]; + "try_into" = [ "syn/extra-traits" ]; + "try_unwrap" = [ "dep:convert_case" ]; + "unwrap" = [ "dep:convert_case" ]; + }; + resolvedDefaultFeatures = [ "default" "from" ]; + }; "digest" = rec { crateName = "digest"; version = "0.10.7"; @@ -3788,7 +3689,7 @@ rec { "tokio" = [ "dep:tokio" "tokio/net" "tokio/rt" "tokio/time" ]; "tracing" = [ "dep:tracing" ]; }; - resolvedDefaultFeatures = [ "client" "client-legacy" "default" "http1" "http2" "server" "server-auto" "service" "tokio" ]; + resolvedDefaultFeatures = [ "client" "client-legacy" "default" "http1" "server" "service" "tokio" "tracing" ]; }; "iana-time-zone" = rec { crateName = "iana-time-zone"; @@ -4641,10 +4542,10 @@ rec { }; "k8s-openapi" = rec { crateName = "k8s-openapi"; - version = "0.24.0"; + version = "0.25.0"; edition = "2021"; - links = "k8s-openapi-0.24.0"; - sha256 = "1m8ahw59g44kp9p4yd4ar0px15m2nyvhc5krbvqvw2ag6a8bjx9c"; + links = "k8s-openapi-0.25.0"; + sha256 = "1cphvicl9hq4nbp2pbzdcvz9r0f9kzwbqzgp383hl6mfawds8q5a"; libName = "k8s_openapi"; authors = [ "Arnav Singh " @@ -4673,11 +4574,6 @@ rec { packageId = "serde"; usesDefaultFeatures = false; } - { - name = "serde-value"; - packageId = "serde-value"; - usesDefaultFeatures = false; - } { name = "serde_json"; packageId = "serde_json"; @@ -4686,21 +4582,22 @@ rec { } ]; features = { - "earliest" = [ "v1_28" ]; - "latest" = [ "v1_32" ]; + "default" = [ "std" ]; + "earliest" = [ "v1_30" ]; + "latest" = [ "v1_33" ]; "schemars" = [ "dep:schemars" ]; }; - resolvedDefaultFeatures = [ "schemars" "v1_32" ]; + resolvedDefaultFeatures = [ "schemars" "v1_33" ]; }; "k8s-version" = rec { crateName = "k8s-version"; - version = "0.1.2"; + version = "0.1.3"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "d990019c690ed85aea29b095a03661c015676caa"; + sha256 = "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6"; }; libName = "k8s_version"; authors = [ @@ -4723,14 +4620,15 @@ rec { ]; features = { "darling" = [ "dep:darling" ]; + "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "darling" ]; }; "kube" = rec { crateName = "kube"; - version = "0.99.0"; + version = "1.0.0"; edition = "2021"; - sha256 = "0vnaqmxk40i2jgwxqsk8x75rn1j37p93gv3zx6mlhssk200b4kls"; + sha256 = "0bs31pdk7lnrza8p8x96mgdq8v60nv8r25vvpg1374h8fj8c6j8v"; authors = [ "clux " "Natalie Klestrup Röijezon " @@ -4801,9 +4699,9 @@ rec { }; "kube-client" = rec { crateName = "kube-client"; - version = "0.99.0"; + version = "1.0.0"; edition = "2021"; - sha256 = "1wfciml6xcylhlwn72dbiq8vc57cs0a9dzn2bb8j1ps242ayvhkz"; + sha256 = "17rbrvbs3m0c4lgbf2788f0hmpli3b8z1666r50m11h83dxpk6g1"; libName = "kube_client"; authors = [ "clux " @@ -4886,7 +4784,7 @@ rec { name = "hyper-util"; packageId = "hyper-util"; optional = true; - features = [ "client" "client-legacy" "http1" "tokio" ]; + features = [ "client" "client-legacy" "http1" "tokio" "tracing" ]; } { name = "jsonpath-rust"; @@ -5042,9 +4940,9 @@ rec { }; "kube-core" = rec { crateName = "kube-core"; - version = "0.99.0"; + version = "1.0.0"; edition = "2021"; - sha256 = "0xf60y07xkqqqqyl7rvk2r4amcvch61r2j49ssk0rrsqvf9hf3gz"; + sha256 = "1rwqwvwlna79dq2r1dqhzgxmwls5d76xg892m2gdk8nyi6xgpphv"; libName = "kube_core"; authors = [ "clux " @@ -5058,6 +4956,11 @@ rec { usesDefaultFeatures = false; features = [ "now" ]; } + { + name = "derive_more"; + packageId = "derive_more"; + features = [ "from" ]; + } { name = "form_urlencoded"; packageId = "form_urlencoded"; @@ -5119,9 +5022,9 @@ rec { }; "kube-derive" = rec { crateName = "kube-derive"; - version = "0.99.0"; + version = "1.0.0"; edition = "2021"; - sha256 = "1jclsj6ah0ijhzpd43ff0ipxs7i2r985ivm6r3m5zjppr66zaqn5"; + sha256 = "1gw3kymxb0w30gmhxj33g09vcqyq05pc38sjjf3516k86cv9lq4f"; procMacro = true; libName = "kube_derive"; authors = [ @@ -5168,9 +5071,9 @@ rec { }; "kube-runtime" = rec { crateName = "kube-runtime"; - version = "0.99.0"; + version = "1.0.0"; edition = "2021"; - sha256 = "1p7z4vl9l1hbqqqjx7qmkyq3rwhxp3nqa3if0qrqdgdlp7x4rww8"; + sha256 = "13lxw9fvci5h71rlfc1a21zivanvnxzrgykvm3wzi1j7anjdhjqx"; libName = "kube_runtime"; authors = [ "clux " @@ -5190,10 +5093,6 @@ rec { name = "async-stream"; packageId = "async-stream"; } - { - name = "async-trait"; - packageId = "async-trait"; - } { name = "backon"; packageId = "backon"; @@ -5488,19 +5387,7 @@ rec { ]; }; - "matchit 0.7.3" = rec { - crateName = "matchit"; - version = "0.7.3"; - edition = "2021"; - sha256 = "156bgdmmlv4crib31qhgg49nsjk88dxkdqp80ha2pk2rk6n6ax0f"; - authors = [ - "Ibraheem Ahmed " - ]; - features = { - }; - resolvedDefaultFeatures = [ "default" ]; - }; - "matchit 0.8.4" = rec { + "matchit" = rec { crateName = "matchit"; version = "0.8.4"; edition = "2021"; @@ -5855,9 +5742,9 @@ rec { }; "opentelemetry" = rec { crateName = "opentelemetry"; - version = "0.28.0"; + version = "0.29.1"; edition = "2021"; - sha256 = "09k43sgaarw3zx5j434ngq1canpcjibsbxaqqa8dyp0acxxncvi3"; + sha256 = "0v6ijlxs486yip2zbjdpgqc525q8l8k9s8ddz6b4ixvm4xz271wy"; dependencies = [ { name = "futures-core"; @@ -5893,7 +5780,8 @@ rec { } ]; features = { - "default" = [ "trace" "metrics" "logs" "internal-logs" ]; + "default" = [ "trace" "metrics" "logs" "internal-logs" "futures" ]; + "futures" = [ "futures-core" "futures-sink" "pin-project-lite" ]; "futures-core" = [ "dep:futures-core" ]; "futures-sink" = [ "dep:futures-sink" ]; "internal-logs" = [ "tracing" ]; @@ -5901,16 +5789,16 @@ rec { "spec_unstable_logs_enabled" = [ "logs" ]; "testing" = [ "trace" ]; "thiserror" = [ "dep:thiserror" ]; - "trace" = [ "pin-project-lite" "futures-sink" "futures-core" "thiserror" ]; + "trace" = [ "futures" "thiserror" ]; "tracing" = [ "dep:tracing" ]; }; - resolvedDefaultFeatures = [ "default" "futures-core" "futures-sink" "internal-logs" "logs" "metrics" "pin-project-lite" "spec_unstable_logs_enabled" "thiserror" "trace" "tracing" ]; + resolvedDefaultFeatures = [ "default" "futures" "futures-core" "futures-sink" "internal-logs" "logs" "metrics" "pin-project-lite" "spec_unstable_logs_enabled" "thiserror" "trace" "tracing" ]; }; "opentelemetry-appender-tracing" = rec { crateName = "opentelemetry-appender-tracing"; - version = "0.28.1"; + version = "0.29.1"; edition = "2021"; - sha256 = "1h6x4pwk225yi8mxl3sqkhg5ya93z57i68267lzi2c7c7fpwf4y5"; + sha256 = "0zbjp4idhprbfxk21wpcivicx8c8w60w7bn4kpfpn013xdjgh5p7"; libName = "opentelemetry_appender_tracing"; dependencies = [ { @@ -5937,11 +5825,17 @@ rec { } ]; devDependencies = [ + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } { name = "tracing-subscriber"; packageId = "tracing-subscriber"; usesDefaultFeatures = false; - features = [ "registry" "std" "env-filter" ]; + features = [ "env-filter" "registry" "std" "fmt" ]; } ]; features = { @@ -5955,9 +5849,9 @@ rec { }; "opentelemetry-http" = rec { crateName = "opentelemetry-http"; - version = "0.28.0"; + version = "0.29.0"; edition = "2021"; - sha256 = "0lv2sbsdr7b8bxnly92zzhlm1wzjbynib1xlkw9hs0qh56pkz1m8"; + sha256 = "1vf86z9d4dr9msck3k2xan9w5k35rfk9bylhpnav9d97p0rapms6"; libName = "opentelemetry_http"; dependencies = [ { @@ -6006,15 +5900,11 @@ rec { }; "opentelemetry-otlp" = rec { crateName = "opentelemetry-otlp"; - version = "0.28.0"; + version = "0.29.0"; edition = "2021"; - sha256 = "148xq13ar11bvmk7pxbslrhh5pgf40bv83n6dlysigj1dm613vsv"; + sha256 = "0mjnx260qn4x1p9pyip35m7764kkszn087f0f6xcq5k9w07p56fq"; libName = "opentelemetry_otlp"; dependencies = [ - { - name = "async-trait"; - packageId = "async-trait"; - } { name = "futures-core"; packageId = "futures-core"; @@ -6089,6 +5979,12 @@ rec { usesDefaultFeatures = false; features = [ "macros" "rt-multi-thread" ]; } + { + name = "tonic"; + packageId = "tonic"; + usesDefaultFeatures = false; + features = [ "server" ]; + } ]; features = { "default" = [ "http-proto" "reqwest-blocking-client" "trace" "metrics" "logs" "internal-logs" ]; @@ -6125,9 +6021,9 @@ rec { }; "opentelemetry-proto" = rec { crateName = "opentelemetry-proto"; - version = "0.28.0"; + version = "0.29.0"; edition = "2021"; - sha256 = "0vbl4si1mny87pmqxxg6wday45pcc8bvpcrf46cpwwi4606qgy2n"; + sha256 = "1cq96c16hxsfvcd26ip1v3sg9952mi89snqdawc5whw14cjdlh4c"; libName = "opentelemetry_proto"; dependencies = [ { @@ -6157,7 +6053,7 @@ rec { "base64" = [ "dep:base64" ]; "default" = [ "full" ]; "full" = [ "gen-tonic" "trace" "logs" "metrics" "zpages" "with-serde" "internal-logs" ]; - "gen-tonic" = [ "gen-tonic-messages" "tonic/transport" ]; + "gen-tonic" = [ "gen-tonic-messages" "tonic/channel" ]; "gen-tonic-messages" = [ "tonic" "prost" ]; "hex" = [ "dep:hex" ]; "internal-logs" = [ "tracing" ]; @@ -6178,15 +6074,10 @@ rec { }; "opentelemetry_sdk" = rec { crateName = "opentelemetry_sdk"; - version = "0.28.0"; + version = "0.29.0"; edition = "2021"; - sha256 = "0w4mycm070f4knvi1x5v199apd1fvi0712qiyv0pz70889havpw4"; + sha256 = "02r99lz30zrb8870vivww8cvwhdi78v5fv5sq6mr8wyls4hzppmg"; dependencies = [ - { - name = "async-trait"; - packageId = "async-trait"; - optional = true; - } { name = "futures-channel"; packageId = "futures-channel"; @@ -6217,10 +6108,10 @@ rec { } { name = "rand"; - packageId = "rand"; + packageId = "rand 0.9.1"; optional = true; usesDefaultFeatures = false; - features = [ "std" "std_rng" "small_rng" ]; + features = [ "std" "std_rng" "small_rng" "os_rng" "thread_rng" ]; } { name = "serde_json"; @@ -6252,10 +6143,9 @@ rec { } ]; features = { - "async-std" = [ "dep:async-std" ]; - "async-trait" = [ "dep:async-trait" ]; "default" = [ "trace" "metrics" "logs" "internal-logs" ]; "experimental_logs_batch_log_processor_with_async_runtime" = [ "logs" ]; + "experimental_logs_concurrent_log_processor" = [ "logs" ]; "experimental_metrics_disable_name_validation" = [ "metrics" ]; "experimental_metrics_periodicreader_with_async_runtime" = [ "metrics" ]; "experimental_trace_batch_span_processor_with_async_runtime" = [ "trace" ]; @@ -6264,25 +6154,24 @@ rec { "internal-logs" = [ "tracing" ]; "jaeger_remote_sampler" = [ "trace" "opentelemetry-http" "http" "serde" "serde_json" "url" ]; "logs" = [ "opentelemetry/logs" "serde_json" ]; - "metrics" = [ "opentelemetry/metrics" "glob" "async-trait" ]; + "metrics" = [ "opentelemetry/metrics" "glob" ]; "opentelemetry-http" = [ "dep:opentelemetry-http" ]; "percent-encoding" = [ "dep:percent-encoding" ]; "rand" = [ "dep:rand" ]; - "rt-async-std" = [ "async-std" "experimental_async_runtime" ]; "rt-tokio" = [ "tokio" "tokio-stream" "experimental_async_runtime" ]; "rt-tokio-current-thread" = [ "tokio" "tokio-stream" "experimental_async_runtime" ]; "serde" = [ "dep:serde" ]; "serde_json" = [ "dep:serde_json" ]; "spec_unstable_logs_enabled" = [ "logs" "opentelemetry/spec_unstable_logs_enabled" ]; "spec_unstable_metrics_views" = [ "metrics" ]; - "testing" = [ "opentelemetry/testing" "trace" "metrics" "logs" "rt-async-std" "rt-tokio" "rt-tokio-current-thread" "tokio/macros" "tokio/rt-multi-thread" ]; + "testing" = [ "opentelemetry/testing" "trace" "metrics" "logs" "rt-tokio" "rt-tokio-current-thread" "tokio/macros" "tokio/rt-multi-thread" ]; "tokio" = [ "dep:tokio" ]; "tokio-stream" = [ "dep:tokio-stream" ]; "trace" = [ "opentelemetry/trace" "rand" "percent-encoding" ]; "tracing" = [ "dep:tracing" ]; "url" = [ "dep:url" ]; }; - resolvedDefaultFeatures = [ "async-trait" "default" "experimental_async_runtime" "glob" "internal-logs" "logs" "metrics" "percent-encoding" "rand" "rt-tokio" "serde_json" "spec_unstable_logs_enabled" "tokio" "tokio-stream" "trace" "tracing" ]; + resolvedDefaultFeatures = [ "default" "experimental_async_runtime" "glob" "internal-logs" "logs" "metrics" "percent-encoding" "rand" "rt-tokio" "serde_json" "spec_unstable_logs_enabled" "tokio" "tokio-stream" "trace" "tracing" ]; }; "ordered-float" = rec { crateName = "ordered-float"; @@ -6881,7 +6770,7 @@ rec { "rustc-dep-of-std" = [ "compiler_builtins/rustc-dep-of-std" "core" ]; }; }; - "rand" = rec { + "rand 0.8.5" = rec { crateName = "rand"; version = "0.8.5"; edition = "2018"; @@ -6900,13 +6789,13 @@ rec { } { name = "rand_chacha"; - packageId = "rand_chacha"; + packageId = "rand_chacha 0.3.1"; optional = true; usesDefaultFeatures = false; } { name = "rand_core"; - packageId = "rand_core"; + packageId = "rand_core 0.6.4"; } ]; features = { @@ -6925,7 +6814,40 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "default" "getrandom" "libc" "rand_chacha" "small_rng" "std" "std_rng" ]; }; - "rand_chacha" = rec { + "rand 0.9.1" = rec { + crateName = "rand"; + version = "0.9.1"; + edition = "2021"; + sha256 = "15yxfcxbgmwba5cv7mjg9bhc1r5c9483dfcdfspg62x4jk8dkgwz"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "rand_chacha"; + packageId = "rand_chacha 0.9.0"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "rand_core"; + packageId = "rand_core 0.9.3"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" "std_rng" "os_rng" "small_rng" "thread_rng" ]; + "log" = [ "dep:log" ]; + "os_rng" = [ "rand_core/os_rng" ]; + "serde" = [ "dep:serde" "rand_core/serde" ]; + "std" = [ "rand_core/std" "rand_chacha?/std" "alloc" ]; + "std_rng" = [ "dep:rand_chacha" ]; + "thread_rng" = [ "std" "std_rng" "os_rng" ]; + }; + resolvedDefaultFeatures = [ "alloc" "os_rng" "small_rng" "std" "std_rng" "thread_rng" ]; + }; + "rand_chacha 0.3.1" = rec { crateName = "rand_chacha"; version = "0.3.1"; edition = "2018"; @@ -6944,7 +6866,7 @@ rec { } { name = "rand_core"; - packageId = "rand_core"; + packageId = "rand_core 0.6.4"; } ]; features = { @@ -6955,7 +6877,44 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; - "rand_core" = rec { + "rand_chacha 0.9.0" = rec { + crateName = "rand_chacha"; + version = "0.9.0"; + edition = "2021"; + sha256 = "1jr5ygix7r60pz0s1cv3ms1f6pd1i9pcdmnxzzhjc3zn3mgjn0nk"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + "The CryptoCorrosion Contributors" + ]; + dependencies = [ + { + name = "ppv-lite86"; + packageId = "ppv-lite86"; + usesDefaultFeatures = false; + features = [ "simd" ]; + } + { + name = "rand_core"; + packageId = "rand_core 0.9.3"; + } + ]; + devDependencies = [ + { + name = "rand_core"; + packageId = "rand_core 0.9.3"; + features = [ "os_rng" ]; + } + ]; + features = { + "default" = [ "std" ]; + "os_rng" = [ "rand_core/os_rng" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "ppv-lite86/std" "rand_core/std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "rand_core 0.6.4" = rec { crateName = "rand_core"; version = "0.6.4"; edition = "2018"; @@ -6979,6 +6938,29 @@ rec { }; resolvedDefaultFeatures = [ "alloc" "getrandom" "std" ]; }; + "rand_core 0.9.3" = rec { + crateName = "rand_core"; + version = "0.9.3"; + edition = "2021"; + sha256 = "0f3xhf16yks5ic6kmgxcpv1ngdhp48mmfy4ag82i1wnwh8ws3ncr"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.3.2"; + optional = true; + } + ]; + features = { + "os_rng" = [ "dep:getrandom" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "getrandom?/std" ]; + }; + resolvedDefaultFeatures = [ "os_rng" "std" ]; + }; "redox_syscall" = rec { crateName = "redox_syscall"; version = "0.5.11"; @@ -8723,13 +8705,13 @@ rec { }; "stackable-operator" = rec { crateName = "stackable-operator"; - version = "0.92.0"; + version = "0.93.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "d990019c690ed85aea29b095a03661c015676caa"; + sha256 = "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6"; }; libName = "stackable_operator"; authors = [ @@ -8784,7 +8766,7 @@ rec { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_32" ]; + features = [ "schemars" "v1_33" ]; } { name = "kube"; @@ -8887,8 +8869,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "d990019c690ed85aea29b095a03661c015676caa"; + sha256 = "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6"; }; procMacro = true; libName = "stackable_operator_derive"; @@ -8922,8 +8904,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "d990019c690ed85aea29b095a03661c015676caa"; + sha256 = "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6"; }; libName = "stackable_shared"; authors = [ @@ -8963,8 +8945,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "d990019c690ed85aea29b095a03661c015676caa"; + sha256 = "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6"; }; libName = "stackable_telemetry"; authors = [ @@ -8973,7 +8955,7 @@ rec { dependencies = [ { name = "axum"; - packageId = "axum 0.8.3"; + packageId = "axum"; } { name = "clap"; @@ -9173,8 +9155,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "d990019c690ed85aea29b095a03661c015676caa"; + sha256 = "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6"; }; libName = "stackable_versioned"; authors = [ @@ -9199,8 +9181,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "5fdc47a10de685e4eea49fd0a3f6c3a15a4966c1"; - sha256 = "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw"; + rev = "d990019c690ed85aea29b095a03661c015676caa"; + sha256 = "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6"; }; procMacro = true; libName = "stackable_versioned_macros"; @@ -9225,7 +9207,7 @@ rec { packageId = "k8s-openapi"; optional = true; usesDefaultFeatures = false; - features = [ "schemars" "v1_32" ]; + features = [ "schemars" "v1_33" ]; } { name = "k8s-version"; @@ -9257,7 +9239,7 @@ rec { name = "k8s-openapi"; packageId = "k8s-openapi"; usesDefaultFeatures = false; - features = [ "schemars" "v1_32" ]; + features = [ "schemars" "v1_33" ]; } ]; features = { @@ -9931,7 +9913,7 @@ rec { "time" = [ "tokio/time" ]; "tokio-util" = [ "dep:tokio-util" ]; }; - resolvedDefaultFeatures = [ "default" "net" "time" ]; + resolvedDefaultFeatures = [ "default" "time" ]; }; "tokio-util" = rec { crateName = "tokio-util"; @@ -10047,22 +10029,11 @@ rec { "Lucio Franco " ]; dependencies = [ - { - name = "async-stream"; - packageId = "async-stream"; - optional = true; - } { name = "async-trait"; packageId = "async-trait"; optional = true; } - { - name = "axum"; - packageId = "axum 0.7.9"; - optional = true; - usesDefaultFeatures = false; - } { name = "base64"; packageId = "base64 0.22.1"; @@ -10076,11 +10047,6 @@ rec { packageId = "flate2"; optional = true; } - { - name = "h2"; - packageId = "h2"; - optional = true; - } { name = "http"; packageId = "http"; @@ -10125,12 +10091,6 @@ rec { usesDefaultFeatures = false; features = [ "std" ]; } - { - name = "socket2"; - packageId = "socket2"; - optional = true; - features = [ "all" ]; - } { name = "tokio"; packageId = "tokio"; @@ -10188,7 +10148,7 @@ rec { "transport" = [ "server" "channel" ]; "zstd" = [ "dep:zstd" ]; }; - resolvedDefaultFeatures = [ "channel" "codegen" "gzip" "prost" "router" "server" "transport" ]; + resolvedDefaultFeatures = [ "channel" "codegen" "gzip" "prost" ]; }; "tower 0.4.13" = rec { crateName = "tower"; @@ -10228,7 +10188,7 @@ rec { } { name = "rand"; - packageId = "rand"; + packageId = "rand 0.8.5"; optional = true; features = [ "small_rng" ]; } @@ -10728,9 +10688,9 @@ rec { }; "tracing-opentelemetry" = rec { crateName = "tracing-opentelemetry"; - version = "0.29.0"; + version = "0.30.0"; edition = "2021"; - sha256 = "0dnca0b7bxbp6gd64skkvzy3p58yjh35kvnxpggz7sfwd4jjs7vj"; + sha256 = "0i64g7cyrdpzkc2zixz8bd0v1icha63ifcdwpvc3z0gmsr5pd3px"; libName = "tracing_opentelemetry"; dependencies = [ { diff --git a/Cargo.toml b/Cargo.toml index 6340f5b8..662b6d0d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,11 +11,11 @@ repository = "https://github.com/stackabletech/trino-operator" [workspace.dependencies] product-config = { git = "https://github.com/stackabletech/product-config.git", tag = "0.7.0" } -stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", features = ["telemetry", "versioned"], tag = "stackable-operator-0.92.0" } +stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", features = ["telemetry", "versioned"], tag = "stackable-operator-0.93.1" } anyhow = "1.0" async-trait = "0.1" -built = { version = "0.7", features = ["chrono", "git2"] } +built = { version = "0.8", features = ["chrono", "git2"] } clap = "4.5" const_format = "0.2" futures = { version = "0.3", features = ["compat"] } diff --git a/crate-hashes.json b/crate-hashes.json index 9dcf61ef..81f487ff 100644 --- a/crate-hashes.json +++ b/crate-hashes.json @@ -1,10 +1,10 @@ { - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#k8s-version@0.1.2": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-operator-derive@0.3.1": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-operator@0.92.0": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-shared@0.0.1": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-telemetry@0.6.0": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-versioned-macros@0.7.1": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.92.0#stackable-versioned@0.7.1": "0li9smdrz7danqz17lfkl0j9zl2i84csgc7d01lxs5qi8jcs9fzw", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#k8s-version@0.1.3": "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#stackable-operator-derive@0.3.1": "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#stackable-operator@0.93.1": "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#stackable-shared@0.0.1": "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#stackable-telemetry@0.6.0": "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#stackable-versioned-macros@0.7.1": "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.93.1#stackable-versioned@0.7.1": "16faz0f3dsv095hk94kmb7mk3pr6lban1v3k0g6yawak6gk5xln6", "git+https://github.com/stackabletech/product-config.git?tag=0.7.0#product-config@0.7.0": "0gjsm80g6r75pm3824dcyiz4ysq1ka4c1if6k1mjm9cnd5ym0gny" } \ No newline at end of file diff --git a/deploy/helm/trino-operator/crds/crds.yaml b/deploy/helm/trino-operator/crds/crds.yaml index 698a2ea4..fcc5d1f3 100644 --- a/deploy/helm/trino-operator/crds/crds.yaml +++ b/deploy/helm/trino-operator/crds/crds.yaml @@ -34,7 +34,7 @@ spec: items: properties: authenticationClass: - description: Name of the [AuthenticationClass](https://docs.stackable.tech/home/nightly/concepts/authentication) used to authenticate users. + description: Name of the [AuthenticationClass](https://docs.stackable.tech/home/nightly/concepts/authentication) used to authenticate users type: string oidc: description: This field contains OIDC-specific configuration. It is only required in case OIDC is used. @@ -45,7 +45,7 @@ spec: type: string extraScopes: default: [] - description: An optional list of extra scopes which get merged with the scopes defined in the [`AuthenticationClass`]. + description: An optional list of extra scopes which get merged with the scopes defined in the `AuthenticationClass`. items: type: string type: array diff --git a/rust/operator-binary/src/authentication/mod.rs b/rust/operator-binary/src/authentication/mod.rs index 32f219b6..137cf592 100644 --- a/rust/operator-binary/src/authentication/mod.rs +++ b/rust/operator-binary/src/authentication/mod.rs @@ -15,10 +15,8 @@ use stackable_operator::{ self, pod::{PodBuilder, container::ContainerBuilder}, }, - commons::{ - authentication::{AuthenticationClass, AuthenticationClassProvider}, - product_image_selection::ResolvedProductImage, - }, + commons::product_image_selection::ResolvedProductImage, + crd::authentication::core, k8s_openapi::api::core::v1::{Container, EnvVar, Volume, VolumeMount}, kube::{ResourceExt, runtime::reflector::ObjectRef}, }; @@ -49,7 +47,7 @@ pub enum Error { ))] AuthenticationClassProviderNotSupported { authentication_class_provider: String, - authentication_class: ObjectRef, + authentication_class: ObjectRef, }, #[snafu(display("Failed to format trino authentication java properties"))] @@ -483,7 +481,7 @@ impl TryFrom> for TrinoAuthenticationTypes { for resolved_auth_class in resolved_auth_classes { let auth_class_name = resolved_auth_class.authentication_class.name_any(); match resolved_auth_class.authentication_class.spec.provider { - AuthenticationClassProvider::Static(provider) => { + core::v1alpha1::AuthenticationClassProvider::Static(provider) => { password_authenticators.push(TrinoPasswordAuthenticator::File( FileAuthenticator::new(auth_class_name, provider), )); @@ -493,7 +491,7 @@ impl TryFrom> for TrinoAuthenticationTypes { TrinoAuthenticationTypeDiscriminants::Password, ); } - AuthenticationClassProvider::Ldap(provider) => { + core::v1alpha1::AuthenticationClassProvider::Ldap(provider) => { password_authenticators.push(TrinoPasswordAuthenticator::Ldap( LdapAuthenticator::new(auth_class_name, provider), )); @@ -503,7 +501,7 @@ impl TryFrom> for TrinoAuthenticationTypes { TrinoAuthenticationTypeDiscriminants::Password, ); } - AuthenticationClassProvider::Oidc(provider) => { + core::v1alpha1::AuthenticationClassProvider::Oidc(provider) => { let oidc = resolved_auth_class.client_auth_options.context( OidcAuthenticationDetailsNotSpecifiedSnafu { auth_class_name: auth_class_name.clone(), @@ -527,9 +525,10 @@ impl TryFrom> for TrinoAuthenticationTypes { .spec .provider .to_string(), - authentication_class: ObjectRef::::from_obj( - &resolved_auth_class.authentication_class, - ), + authentication_class: + ObjectRef::::from_obj( + &resolved_auth_class.authentication_class, + ), } .fail()?, } @@ -560,7 +559,7 @@ impl TryFrom> for TrinoAuthenticationTypes { #[cfg(test)] mod tests { - use stackable_operator::commons::authentication::oidc::ClientAuthenticationOptions; + use stackable_operator::crd::authentication::oidc; use super::*; use crate::crd::RW_CONFIG_DIR_NAME; @@ -660,7 +659,7 @@ mod tests { deserializer, ) .unwrap(), - client_auth_options: Some(ClientAuthenticationOptions { + client_auth_options: Some(oidc::v1alpha1::ClientAuthenticationOptions { client_credentials_secret_ref: "my-oidc-secret".to_string(), extra_scopes: Vec::new(), product_specific_fields: (), diff --git a/rust/operator-binary/src/authentication/oidc/mod.rs b/rust/operator-binary/src/authentication/oidc/mod.rs index 27a41b84..181a9358 100644 --- a/rust/operator-binary/src/authentication/oidc/mod.rs +++ b/rust/operator-binary/src/authentication/oidc/mod.rs @@ -2,7 +2,9 @@ //! use snafu::{ResultExt, Snafu}; -use stackable_operator::commons::{authentication::oidc, tls_verification::TlsClientDetailsError}; +use stackable_operator::{ + commons::tls_verification::TlsClientDetailsError, crd::authentication::oidc, +}; use crate::{ authentication::TrinoAuthenticationConfig, @@ -41,7 +43,7 @@ pub enum Error { #[snafu(display("Failed to create OAuth2 issuer endpoint url."))] FailedToCreateIssuerEndpointUrl { - source: stackable_operator::commons::authentication::oidc::Error, + source: stackable_operator::crd::authentication::oidc::v1alpha1::Error, }, #[snafu(display("Trino does not support unverified TLS connections to OIDC"))] @@ -59,7 +61,7 @@ pub struct TrinoOidcAuthentication { #[derive(Clone, Debug)] pub struct OidcAuthenticator { name: String, - oidc: oidc::AuthenticationProvider, + oidc: oidc::v1alpha1::AuthenticationProvider, client_credentials_secret: String, extra_scopes: Vec, } @@ -67,7 +69,7 @@ pub struct OidcAuthenticator { impl OidcAuthenticator { pub fn new( name: String, - provider: oidc::AuthenticationProvider, + provider: oidc::v1alpha1::AuthenticationProvider, client_credentials_secret: String, extra_scopes: Vec, ) -> Self { @@ -112,14 +114,14 @@ impl TrinoOidcAuthentication { ); let (client_id_env, client_secret_env) = - oidc::AuthenticationProvider::client_credentials_env_names( + oidc::v1alpha1::AuthenticationProvider::client_credentials_env_names( &authenticator.client_credentials_secret, ); oauth2_authentication_config.add_env_vars( TrinoRole::Coordinator, crate::crd::Container::Trino, - oidc::AuthenticationProvider::client_credentials_env_var_mounts( + oidc::v1alpha1::AuthenticationProvider::client_credentials_env_var_mounts( authenticator.client_credentials_secret, ), ); @@ -240,7 +242,7 @@ mod tests { "# ); let deserializer = serde_yaml::Deserializer::from_str(&input); - let oidc_auth_provider: oidc::AuthenticationProvider = + let oidc_auth_provider: oidc::v1alpha1::AuthenticationProvider = serde_yaml::with::singleton_map_recursive::deserialize(deserializer).unwrap(); OidcAuthenticator::new( diff --git a/rust/operator-binary/src/authentication/password/file.rs b/rust/operator-binary/src/authentication/password/file.rs index 924be944..aac04c2f 100644 --- a/rust/operator-binary/src/authentication/password/file.rs +++ b/rust/operator-binary/src/authentication/password/file.rs @@ -10,7 +10,8 @@ use stackable_operator::{ volume::{VolumeBuilder, VolumeMountBuilder}, }, }, - commons::{authentication::static_, product_image_selection::ResolvedProductImage}, + commons::product_image_selection::ResolvedProductImage, + crd::authentication::r#static, k8s_openapi::api::core::v1::{Container, Volume, VolumeMount}, product_logging::{self, spec::AutomaticContainerLogConfig}, utils::COMMON_BASH_TRAP_FUNCTIONS, @@ -37,11 +38,11 @@ pub enum Error { #[derive(Clone, Debug)] pub struct FileAuthenticator { name: String, - file: static_::AuthenticationProvider, + file: r#static::v1alpha1::AuthenticationProvider, } impl FileAuthenticator { - pub fn new(name: String, provider: static_::AuthenticationProvider) -> Self { + pub fn new(name: String, provider: r#static::v1alpha1::AuthenticationProvider) -> Self { Self { name, file: provider, @@ -204,7 +205,7 @@ wait_for_termination $! #[cfg(test)] mod tests { - use stackable_operator::commons::authentication::static_::UserCredentialsSecretRef; + use stackable_operator::crd::authentication::r#static; use super::*; @@ -214,8 +215,8 @@ mod tests { fn test_file_authenticator() { let authenticator = FileAuthenticator::new( AUTH_CLASS_NAME.to_string(), - static_::AuthenticationProvider { - user_credentials_secret: UserCredentialsSecretRef { + r#static::v1alpha1::AuthenticationProvider { + user_credentials_secret: r#static::v1alpha1::UserCredentialsSecretRef { name: "user_credentials".to_string(), }, }, diff --git a/rust/operator-binary/src/authentication/password/ldap.rs b/rust/operator-binary/src/authentication/password/ldap.rs index 1fa2b2d2..84a31a1a 100644 --- a/rust/operator-binary/src/authentication/password/ldap.rs +++ b/rust/operator-binary/src/authentication/password/ldap.rs @@ -2,7 +2,7 @@ use std::collections::BTreeMap; use snafu::{ResultExt, Snafu}; use stackable_operator::{ - commons::authentication::ldap, + crd::authentication::ldap, k8s_openapi::api::core::v1::{Volume, VolumeMount}, }; @@ -27,23 +27,23 @@ pub enum Error { #[snafu(display("Failed to construct LDAP endpoint URL"))] LdapEndpoint { - source: stackable_operator::commons::authentication::ldap::Error, + source: stackable_operator::crd::authentication::ldap::v1alpha1::Error, }, #[snafu(display("Failed to construct LDAP Volumes and VolumeMounts"))] LdapVolumeAndVolumeMounts { - source: stackable_operator::commons::authentication::ldap::Error, + source: stackable_operator::crd::authentication::ldap::v1alpha1::Error, }, } #[derive(Clone, Debug)] pub struct LdapAuthenticator { name: String, - ldap: ldap::AuthenticationProvider, + ldap: ldap::v1alpha1::AuthenticationProvider, } impl LdapAuthenticator { - pub fn new(name: String, provider: ldap::AuthenticationProvider) -> Self { + pub fn new(name: String, provider: ldap::v1alpha1::AuthenticationProvider) -> Self { Self { name, ldap: provider, @@ -161,8 +161,9 @@ mod tests { const LDAP_SEARCH_BASE: &str = "ou=users,dc=example,dc=org"; fn setup_test_authenticator() -> LdapAuthenticator { - let auth_provider = serde_yaml::from_str::(&format!( - r#" + let auth_provider = + serde_yaml::from_str::(&format!( + r#" hostname: {LDAP_HOST_NAME} searchBase: {LDAP_SEARCH_BASE} bindCredentials: @@ -173,8 +174,8 @@ mod tests { caCert: secretClass: {TLS_SECRET_CLASS_NAME} "# - )) - .unwrap(); + )) + .unwrap(); LdapAuthenticator::new(AUTH_CLASS_NAME.to_string(), auth_provider) } diff --git a/rust/operator-binary/src/authentication/password/mod.rs b/rust/operator-binary/src/authentication/password/mod.rs index c9291af0..fe65011c 100644 --- a/rust/operator-binary/src/authentication/password/mod.rs +++ b/rust/operator-binary/src/authentication/password/mod.rs @@ -203,9 +203,7 @@ impl TrinoPasswordAuthentication { #[cfg(test)] mod tests { - use stackable_operator::commons::authentication::{ - ldap, static_, static_::UserCredentialsSecretRef, - }; + use stackable_operator::crd::authentication::{ldap, r#static}; use super::*; @@ -214,8 +212,8 @@ mod tests { const LDAP_AUTH_CLASS_1: &str = "ldap-auth-1"; const LDAP_AUTH_CLASS_2: &str = "ldap-auth-2"; - fn ldap_provider() -> ldap::AuthenticationProvider { - serde_yaml::from_str::( + fn ldap_provider() -> ldap::v1alpha1::AuthenticationProvider { + serde_yaml::from_str::( " hostname: my-ldap ", @@ -227,16 +225,16 @@ mod tests { let authenticators = vec![ TrinoPasswordAuthenticator::File(FileAuthenticator::new( FILE_AUTH_CLASS_1.to_string(), - static_::AuthenticationProvider { - user_credentials_secret: UserCredentialsSecretRef { + r#static::v1alpha1::AuthenticationProvider { + user_credentials_secret: r#static::v1alpha1::UserCredentialsSecretRef { name: FILE_AUTH_CLASS_1.to_string(), }, }, )), TrinoPasswordAuthenticator::File(FileAuthenticator::new( FILE_AUTH_CLASS_2.to_string(), - static_::AuthenticationProvider { - user_credentials_secret: UserCredentialsSecretRef { + r#static::v1alpha1::AuthenticationProvider { + user_credentials_secret: r#static::v1alpha1::UserCredentialsSecretRef { name: FILE_AUTH_CLASS_2.to_string(), }, }, @@ -283,8 +281,8 @@ mod tests { fn test_password_authentication_config_files() { let file_auth_1 = FileAuthenticator::new( FILE_AUTH_CLASS_1.to_string(), - static_::AuthenticationProvider { - user_credentials_secret: UserCredentialsSecretRef { + r#static::v1alpha1::AuthenticationProvider { + user_credentials_secret: r#static::v1alpha1::UserCredentialsSecretRef { name: FILE_AUTH_CLASS_1.to_string(), }, }, diff --git a/rust/operator-binary/src/catalog/commons.rs b/rust/operator-binary/src/catalog/commons.rs index fa02e23a..86cda6c5 100644 --- a/rust/operator-binary/src/catalog/commons.rs +++ b/rust/operator-binary/src/catalog/commons.rs @@ -3,10 +3,8 @@ use snafu::{OptionExt, ResultExt, ensure}; use stackable_operator::{ builder::pod::volume::{VolumeBuilder, VolumeMountBuilder}, client::Client, - commons::{ - s3::{S3AccessStyle, S3ConnectionInlineOrReference}, - tls_verification::{CaCert, TlsServerVerification, TlsVerification}, - }, + commons::tls_verification::{CaCert, TlsServerVerification, TlsVerification}, + crd::s3, k8s_openapi::api::core::v1::ConfigMap, }; @@ -75,7 +73,7 @@ impl ExtendCatalogConfig for MetastoreConnection { } #[async_trait] -impl ExtendCatalogConfig for S3ConnectionInlineOrReference { +impl ExtendCatalogConfig for s3::v1alpha1::InlineConnectionOrReference { async fn extend_catalog_config( &self, catalog_config: &mut CatalogConfig, @@ -117,7 +115,7 @@ impl ExtendCatalogConfig for S3ConnectionInlineOrReference { catalog_config.add_property(region_prop, &s3.region.name); catalog_config.add_property( path_style_prop, - (s3.access_style == S3AccessStyle::Path).to_string(), + (s3.access_style == s3::v1alpha1::S3AccessStyle::Path).to_string(), ); if let Some((access_key, secret_key)) = s3.credentials_mount_paths() { diff --git a/rust/operator-binary/src/catalog/mod.rs b/rust/operator-binary/src/catalog/mod.rs index 3e024187..0087c0c4 100644 --- a/rust/operator-binary/src/catalog/mod.rs +++ b/rust/operator-binary/src/catalog/mod.rs @@ -11,10 +11,7 @@ pub mod tpch; use async_trait::async_trait; use snafu::Snafu; -use stackable_operator::{ - client::Client, - commons::{s3::S3Error, tls_verification::TlsClientDetailsError}, -}; +use stackable_operator::{client::Client, commons::tls_verification::TlsClientDetailsError}; use self::config::CatalogConfig; @@ -25,7 +22,9 @@ pub enum FromTrinoCatalogError { ObjectHasNoNamespace, #[snafu(display("failed to configure S3 connection"))] - ConfigureS3 { source: S3Error }, + ConfigureS3 { + source: stackable_operator::crd::s3::v1alpha1::ConnectionError, + }, #[snafu(display("failed to configure S3 TLS client details"))] ConfigureS3TlsClientDetails { source: TlsClientDetailsError }, diff --git a/rust/operator-binary/src/controller.rs b/rust/operator-binary/src/controller.rs index 36e76313..212fb7e9 100644 --- a/rust/operator-binary/src/controller.rs +++ b/rust/operator-binary/src/controller.rs @@ -1183,7 +1183,7 @@ fn build_rolegroup_statefulset( ), ..LabelSelector::default() }, - service_name: rolegroup_ref.object_name(), + service_name: Some(rolegroup_ref.object_name()), template: pod_template, volume_claim_templates: Some(vec![ merged_config diff --git a/rust/operator-binary/src/crd/authentication.rs b/rust/operator-binary/src/crd/authentication.rs index 9b05b8e0..8c6fd227 100644 --- a/rust/operator-binary/src/crd/authentication.rs +++ b/rust/operator-binary/src/crd/authentication.rs @@ -1,9 +1,7 @@ use snafu::{ResultExt, Snafu}; use stackable_operator::{ client::Client, - commons::authentication::{ - AuthenticationClass, AuthenticationClassProvider, ClientAuthenticationDetails, oidc, - }, + crd::authentication::{core, oidc}, kube::ResourceExt, }; @@ -16,7 +14,7 @@ pub enum Error { #[snafu(display("Invalid OIDC configuration"))] InvalidOidcConfiguration { - source: stackable_operator::commons::authentication::Error, + source: stackable_operator::crd::authentication::core::v1alpha1::Error, }, } @@ -24,14 +22,14 @@ type Result = std::result::Result; pub struct ResolvedAuthenticationClassRef { /// An [AuthenticationClass](DOCS_BASE_URL_PLACEHOLDER/concepts/authentication) to use. - pub authentication_class: AuthenticationClass, - pub client_auth_options: Option, + pub authentication_class: core::v1alpha1::AuthenticationClass, + pub client_auth_options: Option, } /// Retrieve all provided AuthenticationClass references. pub async fn resolve_authentication_classes( client: &Client, - client_authentication_details: &Vec, + client_authentication_details: &Vec, ) -> Result> { let mut resolved_auth_classes = vec![]; @@ -44,7 +42,7 @@ pub async fn resolve_authentication_classes( resolved_auth_classes.push(ResolvedAuthenticationClassRef { client_auth_options: match &resolved_auth_class.spec.provider { - AuthenticationClassProvider::Oidc(_) => Some( + core::v1alpha1::AuthenticationClassProvider::Oidc(_) => Some( client_authentication_detail .oidc_or_error(&auth_class_name) .context(InvalidOidcConfigurationSnafu)? diff --git a/rust/operator-binary/src/crd/catalog/delta_lake.rs b/rust/operator-binary/src/crd/catalog/delta_lake.rs index 2bc99be6..1d200c0a 100644 --- a/rust/operator-binary/src/crd/catalog/delta_lake.rs +++ b/rust/operator-binary/src/crd/catalog/delta_lake.rs @@ -1,6 +1,6 @@ use serde::{Deserialize, Serialize}; use stackable_operator::{ - commons::s3::S3ConnectionInlineOrReference, + crd::s3, schemars::{self, JsonSchema}, }; @@ -17,7 +17,7 @@ pub struct DeltaLakeConnector { /// Connection to an S3 store. /// Please make sure that the underlying Hive metastore also has access to the S3 store. /// Learn more about S3 configuration in the [S3 concept docs](DOCS_BASE_URL_PLACEHOLDER/concepts/s3). - pub s3: Option, + pub s3: Option, /// Connection to an HDFS cluster. /// Please make sure that the underlying Hive metastore also has access to the HDFS. diff --git a/rust/operator-binary/src/crd/catalog/hive.rs b/rust/operator-binary/src/crd/catalog/hive.rs index be1c2fee..edd5cf71 100644 --- a/rust/operator-binary/src/crd/catalog/hive.rs +++ b/rust/operator-binary/src/crd/catalog/hive.rs @@ -1,6 +1,6 @@ use serde::{Deserialize, Serialize}; use stackable_operator::{ - commons::s3::S3ConnectionInlineOrReference, + crd::s3, schemars::{self, JsonSchema}, }; @@ -15,7 +15,7 @@ pub struct HiveConnector { /// Connection to an S3 store. /// Please make sure that the underlying Hive metastore also has access to the S3 store. /// Learn more about S3 configuration in the [S3 concept docs](DOCS_BASE_URL_PLACEHOLDER/concepts/s3). - pub s3: Option, + pub s3: Option, /// Connection to an HDFS cluster. /// Please make sure that the underlying Hive metastore also has access to the HDFS. diff --git a/rust/operator-binary/src/crd/catalog/iceberg.rs b/rust/operator-binary/src/crd/catalog/iceberg.rs index ea22cfe9..56e7f333 100644 --- a/rust/operator-binary/src/crd/catalog/iceberg.rs +++ b/rust/operator-binary/src/crd/catalog/iceberg.rs @@ -1,6 +1,6 @@ use serde::{Deserialize, Serialize}; use stackable_operator::{ - commons::s3::S3ConnectionInlineOrReference, + crd::s3, schemars::{self, JsonSchema}, }; @@ -17,7 +17,7 @@ pub struct IcebergConnector { /// Connection to an S3 store. /// Please make sure that the underlying Hive metastore also has access to the S3 store. /// Learn more about S3 configuration in the [S3 concept docs](DOCS_BASE_URL_PLACEHOLDER/concepts/s3). - pub s3: Option, + pub s3: Option, /// Connection to an HDFS cluster. /// Please make sure that the underlying Hive metastore also has access to the HDFS. diff --git a/rust/operator-binary/src/crd/mod.rs b/rust/operator-binary/src/crd/mod.rs index 04f80660..2465b086 100644 --- a/rust/operator-binary/src/crd/mod.rs +++ b/rust/operator-binary/src/crd/mod.rs @@ -11,7 +11,6 @@ use snafu::{OptionExt, ResultExt, Snafu}; use stackable_operator::{ commons::{ affinity::StackableAffinity, - authentication::ClientAuthenticationDetails, cluster_operation::ClusterOperation, opa::OpaConfig, product_image_selection::ProductImage, @@ -24,6 +23,7 @@ use stackable_operator::{ fragment::{self, Fragment, ValidationError}, merge::Merge, }, + crd::authentication::core, k8s_openapi::apimachinery::pkg::{api::resource::Quantity, apis::meta::v1::LabelSelector}, kube::{CustomResource, ResourceExt, runtime::reflector::ObjectRef}, memory::{BinaryMultiple, MemoryQuantity}, @@ -240,7 +240,7 @@ pub mod versioned { /// Authentication options for Trino. /// Learn more in the [Trino authentication usage guide](DOCS_BASE_URL_PLACEHOLDER/trino/usage-guide/security#authentication). #[serde(default)] - pub authentication: Vec, + pub authentication: Vec, /// Authorization options for Trino. /// Learn more in the [Trino authorization usage guide](DOCS_BASE_URL_PLACEHOLDER/trino/usage-guide/security#authorization). @@ -827,7 +827,7 @@ impl v1alpha1::TrinoCluster { } /// Returns user provided authentication settings - pub fn get_authentication(&self) -> &Vec { + pub fn get_authentication(&self) -> &Vec { &self.spec.cluster_config.authentication } diff --git a/rust/operator-binary/src/main.rs b/rust/operator-binary/src/main.rs index 37ffd228..97e1611b 100644 --- a/rust/operator-binary/src/main.rs +++ b/rust/operator-binary/src/main.rs @@ -15,7 +15,7 @@ use futures::stream::StreamExt; use stackable_operator::{ YamlSchema, cli::{Command, ProductOperatorRun}, - commons::authentication::AuthenticationClass, + crd::authentication::core, k8s_openapi::api::{ apps::v1::StatefulSet, core::v1::{ConfigMap, Service}, @@ -135,7 +135,7 @@ async fn main() -> anyhow::Result<()> { }, ) .watches( - client.get_api::>(&()), + client.get_api::>(&()), watcher::Config::default(), move |authentication_class| { authentication_class_cluster_store @@ -192,7 +192,7 @@ async fn main() -> anyhow::Result<()> { fn references_authentication_class( trino: &DeserializeGuard, - authentication_class: &DeserializeGuard, + authentication_class: &DeserializeGuard, ) -> bool { let Ok(trino) = &trino.0 else { return false; From 763059a8f5864933382f5fcc7a1173e9e3879ecd Mon Sep 17 00:00:00 2001 From: Nick Larsen Date: Wed, 21 May 2025 14:54:55 +0200 Subject: [PATCH 2/2] chore: Update changelog --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 59341976..c3560755 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ All notable changes to this project will be documented in this file. - test: Bump HDFS to `3.4.1` ([#741]). - test: Bump to Vector `0.46.1` ([#743]). - test: Bump OPA `1.4.2` ([#745]). +- Use versioned common structs ([#748]). ### Fixed @@ -38,6 +39,7 @@ All notable changes to this project will be documented in this file. [#741]: https://github.com/stackabletech/trino-operator/pull/741 [#743]: https://github.com/stackabletech/trino-operator/pull/743 [#745]: https://github.com/stackabletech/trino-operator/pull/745 +[#748]: https://github.com/stackabletech/trino-operator/pull/748 ## [25.3.0] - 2025-03-21