diff --git a/CHANGELOG.md b/CHANGELOG.md index 85226fbf..a8de145f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ All notable changes to this project will be documented in this file. ### Changed -- Bump stackable-operator to 0.106.2, strum to 0.28, snafu to 0.9, and ldap3 to 0.12 ([#685]). +- Bump stackable-operator to 0.108.0, strum to 0.28, snafu to 0.9, and ldap3 to 0.12 ([#685], [#688]). - Gracefully shutdown all concurrent tasks by forwarding the SIGTERM signal ([#674]). - OLM deployer doesn't add owner references to cluster scoped objects anymore ([#667]). Owner references ensure that objects are garbage collected by OpenShift upon operator removal but they cause problems when the operator is updated. @@ -16,7 +16,7 @@ All notable changes to this project will be documented in this file. ### Fixed -- Fix "404 page not found" error for the initial object list ([#687]). +- Fix "404 page not found" error for the initial object list ([#687], [#688]). ### Removed @@ -45,6 +45,7 @@ All notable changes to this project will be documented in this file. [#674]: https://github.com/stackabletech/secret-operator/pull/674 [#685]: https://github.com/stackabletech/secret-operator/pull/685 [#687]: https://github.com/stackabletech/secret-operator/pull/687 +[#688]: https://github.com/stackabletech/secret-operator/pull/688 ## [25.11.0] - 2025-11-07 diff --git a/Cargo.lock b/Cargo.lock index e7f798dd..1392b60b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -366,7 +366,7 @@ dependencies = [ "openssl", "snafu 0.9.0", "stackable-secret-operator-utils", - "stackable-telemetry 0.6.1 (git+https://github.com/stackabletech/operator-rs.git?tag=stackable-telemetry-0.6.1)", + "stackable-telemetry 0.6.1", "tracing", "tracing-subscriber", ] @@ -1706,7 +1706,7 @@ dependencies = [ [[package]] name = "k8s-version" version = "0.1.3" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "darling", "regex", @@ -2686,7 +2686,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "343d3bd7056eda839b03204e68deff7d1b13aba7af2b2fd16890697274262ee7" dependencies = [ "heck", - "itertools 0.14.0", + "itertools 0.13.0", "log", "multimap", "petgraph", @@ -2707,7 +2707,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" dependencies = [ "anyhow", - "itertools 0.14.0", + "itertools 0.13.0", "proc-macro2", "quote", "syn 2.0.117", @@ -2720,7 +2720,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "27c6023962132f4b30eb4c172c91ce92d933da334c59c23cddee82358ddafb0b" dependencies = [ "anyhow", - "itertools 0.14.0", + "itertools 0.13.0", "proc-macro2", "quote", "syn 2.0.117", @@ -3453,7 +3453,7 @@ checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "stackable-certs" version = "0.4.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "const-oid", "ecdsa", @@ -3496,8 +3496,8 @@ dependencies = [ [[package]] name = "stackable-operator" -version = "0.106.2" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +version = "0.108.0" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "clap", "const_format", @@ -3522,7 +3522,7 @@ dependencies = [ "snafu 0.8.9", "stackable-operator-derive", "stackable-shared", - "stackable-telemetry 0.6.1 (git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2)", + "stackable-telemetry 0.6.2", "stackable-versioned", "stackable-webhook", "strum 0.28.0", @@ -3536,7 +3536,7 @@ dependencies = [ [[package]] name = "stackable-operator-derive" version = "0.3.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "darling", "proc-macro2", @@ -3618,7 +3618,7 @@ dependencies = [ [[package]] name = "stackable-shared" version = "0.1.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "jiff", "k8s-openapi", @@ -3635,55 +3635,55 @@ dependencies = [ [[package]] name = "stackable-telemetry" version = "0.6.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-telemetry-0.6.1#958f62f2befdd984ad9fcd272d0214055c3a7601" dependencies = [ "axum", "clap", "futures-util", - "opentelemetry 0.31.0", - "opentelemetry-appender-tracing 0.31.1", - "opentelemetry-otlp 0.31.0", - "opentelemetry-semantic-conventions 0.31.0", - "opentelemetry_sdk 0.31.0", + "opentelemetry 0.30.0", + "opentelemetry-appender-tracing 0.30.1", + "opentelemetry-otlp 0.30.0", + "opentelemetry-semantic-conventions 0.30.0", + "opentelemetry_sdk 0.30.0", "pin-project", "snafu 0.8.9", - "strum 0.28.0", + "strum 0.27.2", "tokio", "tower", "tracing", "tracing-appender", - "tracing-opentelemetry 0.32.1", + "tracing-opentelemetry 0.31.0", "tracing-subscriber", ] [[package]] name = "stackable-telemetry" -version = "0.6.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-telemetry-0.6.1#958f62f2befdd984ad9fcd272d0214055c3a7601" +version = "0.6.2" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "axum", "clap", "futures-util", - "opentelemetry 0.30.0", - "opentelemetry-appender-tracing 0.30.1", - "opentelemetry-otlp 0.30.0", - "opentelemetry-semantic-conventions 0.30.0", - "opentelemetry_sdk 0.30.0", + "opentelemetry 0.31.0", + "opentelemetry-appender-tracing 0.31.1", + "opentelemetry-otlp 0.31.0", + "opentelemetry-semantic-conventions 0.31.0", + "opentelemetry_sdk 0.31.0", "pin-project", "snafu 0.8.9", - "strum 0.27.2", + "strum 0.28.0", "tokio", "tower", "tracing", "tracing-appender", - "tracing-opentelemetry 0.31.0", + "tracing-opentelemetry 0.32.1", "tracing-subscriber", ] [[package]] name = "stackable-versioned" version = "0.8.3" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "schemars", "serde", @@ -3696,7 +3696,7 @@ dependencies = [ [[package]] name = "stackable-versioned-macros" version = "0.8.3" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "convert_case", "convert_case_extras", @@ -3714,7 +3714,7 @@ dependencies = [ [[package]] name = "stackable-webhook" version = "0.9.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#f9b117c8c08557e9774f33145bb009fb74cb2437" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#7486017f60827d1d769d7bf17bf56adb21f8bb02" dependencies = [ "arc-swap", "async-trait", @@ -3732,7 +3732,7 @@ dependencies = [ "snafu 0.8.9", "stackable-certs", "stackable-shared", - "stackable-telemetry 0.6.1 (git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2)", + "stackable-telemetry 0.6.2", "tokio", "tokio-rustls", "tower", diff --git a/Cargo.nix b/Cargo.nix index 831f44d0..41fb7218 100644 --- a/Cargo.nix +++ b/Cargo.nix @@ -1198,11 +1198,6 @@ rec { packageId = "clap"; features = [ "derive" ]; } - { - name = "stackable-telemetry"; - packageId = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-telemetry-0.6.1#stackable-telemetry@0.6.1"; - features = [ "clap" ]; - } { name = "hex"; packageId = "hex"; @@ -1219,6 +1214,11 @@ rec { name = "stackable-secret-operator-utils"; packageId = "stackable-secret-operator-utils"; } + { + name = "stackable-telemetry"; + packageId = "stackable-telemetry 0.6.1"; + features = [ "clap" ]; + } { name = "tracing"; packageId = "tracing"; @@ -3635,226 +3635,6 @@ rec { "wasm_js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; }; }; - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-telemetry@0.6.1" = rec { - crateName = "stackable-telemetry"; - version = "0.6.1"; - edition = "2024"; - workspace_member = null; - src = pkgs.fetchgit { - url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; - sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; - }; - libName = "stackable_telemetry"; - authors = [ - "Stackable GmbH " - ]; - dependencies = [ - { - name = "axum"; - packageId = "axum"; - features = [ "http2" ]; - } - { - name = "clap"; - packageId = "clap"; - optional = true; - features = [ "derive" "cargo" "env" ]; - } - { - name = "futures-util"; - packageId = "futures-util"; - } - { - name = "opentelemetry"; - packageId = "opentelemetry 0.31.0"; - features = [ "logs" ]; - } - { - name = "opentelemetry-appender-tracing"; - packageId = "opentelemetry-appender-tracing 0.31.1"; - } - { - name = "opentelemetry-otlp"; - packageId = "opentelemetry-otlp 0.31.0"; - features = [ "grpc-tonic" "gzip-tonic" "logs" ]; - } - { - name = "opentelemetry-semantic-conventions"; - packageId = "opentelemetry-semantic-conventions 0.31.0"; - } - { - name = "opentelemetry_sdk"; - packageId = "opentelemetry_sdk 0.31.0"; - features = [ "rt-tokio" "logs" "rt-tokio" "spec_unstable_logs_enabled" ]; - } - { - name = "pin-project"; - packageId = "pin-project"; - } - { - name = "snafu"; - packageId = "snafu 0.8.9"; - } - { - name = "strum"; - packageId = "strum 0.28.0"; - features = [ "derive" ]; - } - { - name = "tokio"; - packageId = "tokio"; - features = [ "macros" "rt-multi-thread" "fs" ]; - } - { - name = "tower"; - packageId = "tower"; - features = [ "util" ]; - } - { - name = "tracing"; - packageId = "tracing"; - } - { - name = "tracing-appender"; - packageId = "tracing-appender"; - } - { - name = "tracing-opentelemetry"; - packageId = "tracing-opentelemetry 0.32.1"; - } - { - name = "tracing-subscriber"; - packageId = "tracing-subscriber"; - features = [ "env-filter" "json" "env-filter" ]; - } - ]; - devDependencies = [ - { - name = "tokio"; - packageId = "tokio"; - features = [ "macros" "rt-multi-thread" "fs" ]; - } - { - name = "tracing-opentelemetry"; - packageId = "tracing-opentelemetry 0.32.1"; - } - ]; - features = { - "clap" = [ "dep:clap" ]; - }; - resolvedDefaultFeatures = [ "clap" ]; - }; - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-telemetry-0.6.1#stackable-telemetry@0.6.1" = rec { - crateName = "stackable-telemetry"; - version = "0.6.1"; - edition = "2024"; - workspace_member = null; - src = pkgs.fetchgit { - url = "https://github.com/stackabletech/operator-rs.git"; - rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; - sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; - }; - libName = "stackable_telemetry"; - authors = [ - "Stackable GmbH " - ]; - dependencies = [ - { - name = "axum"; - packageId = "axum"; - features = [ "http2" ]; - } - { - name = "clap"; - packageId = "clap"; - optional = true; - features = [ "derive" "cargo" "env" ]; - } - { - name = "futures-util"; - packageId = "futures-util"; - } - { - name = "opentelemetry"; - packageId = "opentelemetry 0.30.0"; - features = [ "logs" ]; - } - { - name = "opentelemetry-appender-tracing"; - packageId = "opentelemetry-appender-tracing 0.30.1"; - } - { - name = "opentelemetry-otlp"; - packageId = "opentelemetry-otlp 0.30.0"; - features = [ "grpc-tonic" "gzip-tonic" "logs" ]; - } - { - name = "opentelemetry-semantic-conventions"; - packageId = "opentelemetry-semantic-conventions 0.30.0"; - } - { - name = "opentelemetry_sdk"; - packageId = "opentelemetry_sdk 0.30.0"; - features = [ "rt-tokio" "logs" "rt-tokio" "spec_unstable_logs_enabled" ]; - } - { - name = "pin-project"; - packageId = "pin-project"; - } - { - name = "snafu"; - packageId = "snafu 0.8.9"; - } - { - name = "strum"; - packageId = "strum 0.27.2"; - features = [ "derive" ]; - } - { - name = "tokio"; - packageId = "tokio"; - features = [ "macros" "rt-multi-thread" "fs" ]; - } - { - name = "tower"; - packageId = "tower"; - features = [ "util" ]; - } - { - name = "tracing"; - packageId = "tracing"; - } - { - name = "tracing-appender"; - packageId = "tracing-appender"; - } - { - name = "tracing-opentelemetry"; - packageId = "tracing-opentelemetry 0.31.0"; - } - { - name = "tracing-subscriber"; - packageId = "tracing-subscriber"; - features = [ "env-filter" "json" "env-filter" ]; - } - ]; - devDependencies = [ - { - name = "tokio"; - packageId = "tokio"; - features = [ "macros" "rt-multi-thread" "fs" ]; - } - { - name = "tracing-opentelemetry"; - packageId = "tracing-opentelemetry 0.31.0"; - } - ]; - features = { - "clap" = [ "dep:clap" ]; - }; - resolvedDefaultFeatures = [ "clap" ]; - }; "git2" = rec { crateName = "git2"; version = "0.20.4"; @@ -5308,6 +5088,7 @@ rec { "default" = [ "use_std" ]; "use_std" = [ "use_alloc" "either/use_std" ]; }; + resolvedDefaultFeatures = [ "default" "use_alloc" "use_std" ]; }; "itertools 0.14.0" = rec { crateName = "itertools"; @@ -5725,7 +5506,7 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; }; libName = "k8s_version"; @@ -9212,7 +8993,7 @@ rec { } { name = "itertools"; - packageId = "itertools 0.14.0"; + packageId = "itertools 0.13.0"; usesDefaultFeatures = false; features = [ "use_alloc" ]; } @@ -9301,7 +9082,7 @@ rec { } { name = "itertools"; - packageId = "itertools 0.14.0"; + packageId = "itertools 0.13.0"; } { name = "proc-macro2"; @@ -9339,7 +9120,7 @@ rec { } { name = "itertools"; - packageId = "itertools 0.14.0"; + packageId = "itertools 0.13.0"; } { name = "proc-macro2"; @@ -11797,7 +11578,7 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; }; libName = "stackable_certs"; @@ -11953,7 +11734,7 @@ rec { { name = "stackable-operator"; packageId = "stackable-operator"; - features = [ "time" "telemetry" "versioned" "webhook" ]; + features = [ "time" "crds" "webhook" ]; } { name = "stackable-secret-operator-utils"; @@ -11978,12 +11759,12 @@ rec { }; "stackable-operator" = rec { crateName = "stackable-operator"; - version = "0.106.2"; + version = "0.108.0"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; }; libName = "stackable_operator"; @@ -12022,12 +11803,6 @@ rec { name = "futures"; packageId = "futures 0.3.32"; } - { - name = "stackable-telemetry"; - packageId = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-telemetry@0.6.1"; - optional = true; - features = [ "clap" ]; - } { name = "http"; packageId = "http"; @@ -12097,7 +11872,12 @@ rec { { name = "stackable-shared"; packageId = "stackable-shared"; - features = [ "time" "jiff" ]; + features = [ "jiff" ]; + } + { + name = "stackable-telemetry"; + packageId = "stackable-telemetry 0.6.2"; + features = [ "clap" ]; } { name = "stackable-versioned"; @@ -12140,14 +11920,14 @@ rec { ]; features = { "certs" = [ "dep:stackable-certs" ]; - "default" = [ "telemetry" "versioned" "clap" ]; - "full" = [ "certs" "telemetry" "versioned" "time" "webhook" "clap" ]; - "telemetry" = [ "dep:stackable-telemetry" ]; + "crds" = [ "dep:stackable-versioned" ]; + "default" = [ "crds" ]; + "full" = [ "crds" "certs" "time" "webhook" "kube-ws" ]; + "kube-ws" = [ "kube/ws" ]; "time" = [ "stackable-shared/time" ]; - "versioned" = [ "dep:stackable-versioned" ]; "webhook" = [ "dep:stackable-webhook" ]; }; - resolvedDefaultFeatures = [ "clap" "default" "telemetry" "time" "versioned" "webhook" ]; + resolvedDefaultFeatures = [ "crds" "default" "time" "webhook" ]; }; "stackable-operator-derive" = rec { crateName = "stackable-operator-derive"; @@ -12156,7 +11936,7 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; }; procMacro = true; @@ -12292,7 +12072,7 @@ rec { { name = "stackable-operator"; packageId = "stackable-operator"; - features = [ "time" "telemetry" "versioned" "webhook" ]; + features = [ "time" "crds" "webhook" ]; } { name = "stackable-secret-operator-utils"; @@ -12409,7 +12189,7 @@ rec { { name = "stackable-operator"; packageId = "stackable-operator"; - features = [ "time" "telemetry" "versioned" "webhook" ]; + features = [ "time" "crds" "webhook" ]; } { name = "tokio"; @@ -12466,7 +12246,7 @@ rec { name = "stackable-operator"; packageId = "stackable-operator"; optional = true; - features = [ "time" "telemetry" "versioned" "webhook" ]; + features = [ "time" "crds" "webhook" ]; } { name = "yasna"; @@ -12491,7 +12271,7 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; }; libName = "stackable_shared"; @@ -12565,6 +12345,226 @@ rec { }; resolvedDefaultFeatures = [ "default" "jiff" "time" ]; }; + "stackable-telemetry 0.6.1" = rec { + crateName = "stackable-telemetry"; + version = "0.6.1"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/stackabletech/operator-rs.git"; + rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; + sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; + }; + libName = "stackable_telemetry"; + authors = [ + "Stackable GmbH " + ]; + dependencies = [ + { + name = "axum"; + packageId = "axum"; + features = [ "http2" ]; + } + { + name = "clap"; + packageId = "clap"; + optional = true; + features = [ "derive" "cargo" "env" ]; + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "opentelemetry"; + packageId = "opentelemetry 0.30.0"; + features = [ "logs" ]; + } + { + name = "opentelemetry-appender-tracing"; + packageId = "opentelemetry-appender-tracing 0.30.1"; + } + { + name = "opentelemetry-otlp"; + packageId = "opentelemetry-otlp 0.30.0"; + features = [ "grpc-tonic" "gzip-tonic" "logs" ]; + } + { + name = "opentelemetry-semantic-conventions"; + packageId = "opentelemetry-semantic-conventions 0.30.0"; + } + { + name = "opentelemetry_sdk"; + packageId = "opentelemetry_sdk 0.30.0"; + features = [ "rt-tokio" "logs" "rt-tokio" "spec_unstable_logs_enabled" ]; + } + { + name = "pin-project"; + packageId = "pin-project"; + } + { + name = "snafu"; + packageId = "snafu 0.8.9"; + } + { + name = "strum"; + packageId = "strum 0.27.2"; + features = [ "derive" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "rt-multi-thread" "fs" ]; + } + { + name = "tower"; + packageId = "tower"; + features = [ "util" ]; + } + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "tracing-appender"; + packageId = "tracing-appender"; + } + { + name = "tracing-opentelemetry"; + packageId = "tracing-opentelemetry 0.31.0"; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "env-filter" "json" "env-filter" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "rt-multi-thread" "fs" ]; + } + { + name = "tracing-opentelemetry"; + packageId = "tracing-opentelemetry 0.31.0"; + } + ]; + features = { + "clap" = [ "dep:clap" ]; + }; + resolvedDefaultFeatures = [ "clap" ]; + }; + "stackable-telemetry 0.6.2" = rec { + crateName = "stackable-telemetry"; + version = "0.6.2"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/stackabletech/operator-rs.git"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; + sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; + }; + libName = "stackable_telemetry"; + authors = [ + "Stackable GmbH " + ]; + dependencies = [ + { + name = "axum"; + packageId = "axum"; + features = [ "http2" ]; + } + { + name = "clap"; + packageId = "clap"; + optional = true; + features = [ "derive" "cargo" "env" ]; + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "opentelemetry"; + packageId = "opentelemetry 0.31.0"; + features = [ "logs" ]; + } + { + name = "opentelemetry-appender-tracing"; + packageId = "opentelemetry-appender-tracing 0.31.1"; + } + { + name = "opentelemetry-otlp"; + packageId = "opentelemetry-otlp 0.31.0"; + features = [ "grpc-tonic" "gzip-tonic" "logs" ]; + } + { + name = "opentelemetry-semantic-conventions"; + packageId = "opentelemetry-semantic-conventions 0.31.0"; + } + { + name = "opentelemetry_sdk"; + packageId = "opentelemetry_sdk 0.31.0"; + features = [ "rt-tokio" "logs" "rt-tokio" "spec_unstable_logs_enabled" ]; + } + { + name = "pin-project"; + packageId = "pin-project"; + } + { + name = "snafu"; + packageId = "snafu 0.8.9"; + } + { + name = "strum"; + packageId = "strum 0.28.0"; + features = [ "derive" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "rt-multi-thread" "fs" ]; + } + { + name = "tower"; + packageId = "tower"; + features = [ "util" ]; + } + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "tracing-appender"; + packageId = "tracing-appender"; + } + { + name = "tracing-opentelemetry"; + packageId = "tracing-opentelemetry 0.32.1"; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "env-filter" "json" "env-filter" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "rt-multi-thread" "fs" ]; + } + { + name = "tracing-opentelemetry"; + packageId = "tracing-opentelemetry 0.32.1"; + } + ]; + features = { + "clap" = [ "dep:clap" ]; + }; + resolvedDefaultFeatures = [ "clap" ]; + }; "stackable-versioned" = rec { crateName = "stackable-versioned"; version = "0.8.3"; @@ -12572,7 +12572,7 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; }; libName = "stackable_versioned"; @@ -12616,7 +12616,7 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; }; procMacro = true; @@ -12684,7 +12684,7 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "f9b117c8c08557e9774f33145bb009fb74cb2437"; + rev = "7486017f60827d1d769d7bf17bf56adb21f8bb02"; sha256 = "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c"; }; libName = "stackable_webhook"; @@ -12709,10 +12709,6 @@ rec { name = "futures-util"; packageId = "futures-util"; } - { - name = "stackable-telemetry"; - packageId = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-telemetry@0.6.1"; - } { name = "hyper"; packageId = "hyper"; @@ -12768,6 +12764,10 @@ rec { name = "stackable-shared"; packageId = "stackable-shared"; } + { + name = "stackable-telemetry"; + packageId = "stackable-telemetry 0.6.2"; + } { name = "tokio"; packageId = "tokio"; diff --git a/Cargo.toml b/Cargo.toml index bc757948..ebeba896 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,7 +11,7 @@ edition = "2021" repository = "https://github.com/stackabletech/secret-operator" [workspace.dependencies] -stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.106.2", features = ["time", "telemetry", "versioned", "webhook"] } +stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", tag = "stackable-operator-0.108.0", features = ["time", "crds", "webhook"] } krb5 = { git = "https://github.com/stackabletech/krb5-rs.git", tag = "v0.1.0" } anyhow = "1.0" diff --git a/crate-hashes.json b/crate-hashes.json index 57385259..4285dcd3 100644 --- a/crate-hashes.json +++ b/crate-hashes.json @@ -6,15 +6,15 @@ "git+https://github.com/kube-rs/kube-rs?rev=fe69cc486ff8e62a7da61d64ec3ebbd9e64c43b5#kube@3.0.1": "1irm4g79crlxjm3iqrgvx0f6wxdcj394ky84q89pk9i36y2mlw3n", "git+https://github.com/stackabletech/krb5-rs.git?tag=v0.1.0#krb5-sys@0.1.0": "148zr0q04163hpirkrff5q7cbxqgwzzxh0091zr4g23x7l64jh39", "git+https://github.com/stackabletech/krb5-rs.git?tag=v0.1.0#krb5@0.1.0": "148zr0q04163hpirkrff5q7cbxqgwzzxh0091zr4g23x7l64jh39", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#k8s-version@0.1.3": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-certs@0.4.0": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-operator-derive@0.3.1": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-operator@0.106.2": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-shared@0.1.0": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-telemetry@0.6.1": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-versioned-macros@0.8.3": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-versioned@0.8.3": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.106.2#stackable-webhook@0.9.0": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#k8s-version@0.1.3": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#stackable-certs@0.4.0": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#stackable-operator-derive@0.3.1": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#stackable-operator@0.108.0": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#stackable-shared@0.1.0": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#stackable-telemetry@0.6.2": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#stackable-versioned-macros@0.8.3": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#stackable-versioned@0.8.3": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.108.0#stackable-webhook@0.9.0": "1yg7hbpgclp1zvfnhi4qkrwbgsa19v86plh77vqvwxzdxxxvxr4c", "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-telemetry-0.6.1#stackable-telemetry@0.6.1": "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd", "git+https://github.com/stackabletech/product-config.git?tag=0.8.0#product-config@0.8.0": "1dz70kapm2wdqcr7ndyjji0lhsl98bsq95gnb2lw487wf6yr7987" } \ No newline at end of file diff --git a/deploy/helm/secret-operator/templates/roles.yaml b/deploy/helm/secret-operator/templates/roles.yaml index b585326e..14970b11 100644 --- a/deploy/helm/secret-operator/templates/roles.yaml +++ b/deploy/helm/secret-operator/templates/roles.yaml @@ -51,6 +51,9 @@ rules: verbs: - create - patch + # Required for startup condition + - list + - watch {{- end }} - apiGroups: - "" diff --git a/rust/operator-binary/src/main.rs b/rust/operator-binary/src/main.rs index fc82ecf6..d9847694 100644 --- a/rust/operator-binary/src/main.rs +++ b/rust/operator-binary/src/main.rs @@ -19,17 +19,18 @@ use stackable_operator::{ cli::{Command, CommonOptions, RunArguments}, client::Client, eos::EndOfSupportChecker, + kube::CustomResourceExt, kvp::{Label, LabelExt}, shared::yaml::SerializeOptions, telemetry::Tracing, - utils::signal::SignalWatcher, + utils::signal::{self, SignalWatcher}, }; use tokio_stream::wrappers::UnixListenerStream; use tonic::transport::Server; use utils::{TonicUnixStream, uds_bind_private}; use crate::{ - crd::{SecretClass, SecretClassVersion, TrustStore, TrustStoreVersion, v1alpha2}, + crd::{SecretClass, SecretClassVersion, TrustStore, TrustStoreVersion, v1alpha1, v1alpha2}, webhooks::conversion::create_webhook_server, }; @@ -231,14 +232,15 @@ async fn main() -> anyhow::Result<()> { }); let truststore_controller = truststore_controller::start( - client, + client.clone(), &watch_namespace, sigterm_watcher.handle(), ) .map(anyhow::Ok); let delayed_truststore_controller = async { - let _ = initial_reconcile_signal.handle().await; + signal::crd_established(&client, v1alpha1::TrustStore::crd_name(), None) + .await?; truststore_controller.await };