diff --git a/Cargo.lock b/Cargo.lock index 042b1895..5d8d57b3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -500,8 +500,18 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08440b3dd222c3d0433e63e097463969485f112baff337dfdaca043a0d760570" +dependencies = [ + "darling_core 0.21.2", + "darling_macro 0.21.2", ] [[package]] @@ -518,13 +528,38 @@ dependencies = [ "syn 2.0.104", ] +[[package]] +name = "darling_core" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25b7912bc28a04ab1b7715a68ea03aaa15662b43a1a4b2c480531fd19f8bf7e" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.104", +] + [[package]] name = "darling_macro" version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core", + "darling_core 0.20.11", + "quote", + "syn 2.0.104", +] + +[[package]] +name = "darling_macro" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce154b9bea7fb0c8e8326e62d00354000c36e79770ff21b8c84e3aa267d9d531" +dependencies = [ + "darling_core 0.21.2", "quote", "syn 2.0.104", ] @@ -1424,9 +1459,9 @@ dependencies = [ [[package]] name = "k8s-version" version = "0.1.3" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#958f62f2befdd984ad9fcd272d0214055c3a7601" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#20659fe864c643fe48c7ff70ed417f0ed05ccf45" dependencies = [ - "darling", + "darling 0.21.2", "regex", "snafu 0.8.6", ] @@ -1506,7 +1541,7 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "079fc8c1c397538628309cfdee20696ebdcc26745f9fb17f89b78782205bd995" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", "serde", @@ -2168,21 +2203,20 @@ dependencies = [ [[package]] name = "rstest" -version = "0.25.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fc39292f8613e913f7df8fa892b8944ceb47c247b78e1b1ae2f09e019be789d" +checksum = "f5a3193c063baaa2a95a33f03035c8a72b83d97a54916055ba22d35ed3839d49" dependencies = [ "futures-timer", "futures-util", "rstest_macros", - "rustc_version", ] [[package]] name = "rstest_macros" -version = "0.25.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f168d99749d307be9de54d23fd226628d99768225ef08f6ffb52e0182a27746" +checksum = "9c845311f0ff7951c5506121a9ad75aec44d083c31583b2ea5a30bcb0b0abba0" dependencies = [ "cfg-if", "glob", @@ -2589,8 +2623,8 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "stackable-operator" -version = "0.94.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#958f62f2befdd984ad9fcd272d0214055c3a7601" +version = "0.95.0" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#20659fe864c643fe48c7ff70ed417f0ed05ccf45" dependencies = [ "chrono", "clap", @@ -2628,9 +2662,9 @@ dependencies = [ [[package]] name = "stackable-operator-derive" version = "0.3.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#958f62f2befdd984ad9fcd272d0214055c3a7601" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#20659fe864c643fe48c7ff70ed417f0ed05ccf45" dependencies = [ - "darling", + "darling 0.21.2", "proc-macro2", "quote", "syn 2.0.104", @@ -2638,14 +2672,18 @@ dependencies = [ [[package]] name = "stackable-shared" -version = "0.0.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#958f62f2befdd984ad9fcd272d0214055c3a7601" +version = "0.0.2" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#20659fe864c643fe48c7ff70ed417f0ed05ccf45" dependencies = [ + "k8s-openapi", "kube", + "schemars", "semver", "serde", "serde_yaml", "snafu 0.8.6", + "strum", + "time", ] [[package]] @@ -2674,7 +2712,7 @@ dependencies = [ [[package]] name = "stackable-telemetry" version = "0.6.1" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#958f62f2befdd984ad9fcd272d0214055c3a7601" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#20659fe864c643fe48c7ff70ed417f0ed05ccf45" dependencies = [ "axum", "clap", @@ -2697,8 +2735,8 @@ dependencies = [ [[package]] name = "stackable-versioned" -version = "0.8.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#958f62f2befdd984ad9fcd272d0214055c3a7601" +version = "0.8.1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#20659fe864c643fe48c7ff70ed417f0ed05ccf45" dependencies = [ "schemars", "serde", @@ -2710,11 +2748,11 @@ dependencies = [ [[package]] name = "stackable-versioned-macros" -version = "0.8.0" -source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#958f62f2befdd984ad9fcd272d0214055c3a7601" +version = "0.8.1" +source = "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#20659fe864c643fe48c7ff70ed417f0ed05ccf45" dependencies = [ "convert_case", - "darling", + "darling 0.21.2", "indoc", "itertools", "k8s-openapi", diff --git a/Cargo.nix b/Cargo.nix index a2f7b186..2c747c81 100644 --- a/Cargo.nix +++ b/Cargo.nix @@ -1549,7 +1549,7 @@ rec { }; resolvedDefaultFeatures = [ "std" ]; }; - "darling" = rec { + "darling 0.20.11" = rec { crateName = "darling"; version = "0.20.11"; edition = "2021"; @@ -1560,11 +1560,11 @@ rec { dependencies = [ { name = "darling_core"; - packageId = "darling_core"; + packageId = "darling_core 0.20.11"; } { name = "darling_macro"; - packageId = "darling_macro"; + packageId = "darling_macro 0.20.11"; } ]; features = { @@ -1574,7 +1574,33 @@ rec { }; resolvedDefaultFeatures = [ "default" "suggestions" ]; }; - "darling_core" = rec { + "darling 0.21.2" = rec { + crateName = "darling"; + version = "0.21.2"; + edition = "2021"; + sha256 = "0w05fq6kl16avbgkgwxg5c8myj397539gq337r1x1hr2s8yhni08"; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling_core"; + packageId = "darling_core 0.21.2"; + } + { + name = "darling_macro"; + packageId = "darling_macro 0.21.2"; + } + ]; + features = { + "default" = [ "suggestions" ]; + "diagnostics" = [ "darling_core/diagnostics" ]; + "serde" = [ "darling_core/serde" ]; + "suggestions" = [ "darling_core/suggestions" ]; + }; + resolvedDefaultFeatures = [ "default" "suggestions" ]; + }; + "darling_core 0.20.11" = rec { crateName = "darling_core"; version = "0.20.11"; edition = "2021"; @@ -1616,7 +1642,50 @@ rec { }; resolvedDefaultFeatures = [ "strsim" "suggestions" ]; }; - "darling_macro" = rec { + "darling_core 0.21.2" = rec { + crateName = "darling_core"; + version = "0.21.2"; + edition = "2021"; + sha256 = "0zmzz0czsc8590n4n6isnii5d8da0gm6hnkinyqlm818ph97jnyj"; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "ident_case"; + packageId = "ident_case"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "strsim"; + packageId = "strsim"; + optional = true; + } + { + name = "syn"; + packageId = "syn 2.0.104"; + features = [ "full" "extra-traits" ]; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + "strsim" = [ "dep:strsim" ]; + "suggestions" = [ "strsim" ]; + }; + resolvedDefaultFeatures = [ "strsim" "suggestions" ]; + }; + "darling_macro 0.20.11" = rec { crateName = "darling_macro"; version = "0.20.11"; edition = "2021"; @@ -1628,7 +1697,32 @@ rec { dependencies = [ { name = "darling_core"; - packageId = "darling_core"; + packageId = "darling_core 0.20.11"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.104"; + } + ]; + + }; + "darling_macro 0.21.2" = rec { + crateName = "darling_macro"; + version = "0.21.2"; + edition = "2021"; + sha256 = "0cfmv5ks4fjfr2w23zvhjzkkc300ah1x0qkf6blcic3zxadln5ff"; + procMacro = true; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling_core"; + packageId = "darling_core 0.21.2"; } { name = "quote"; @@ -4490,8 +4584,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; - sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; + rev = "20659fe864c643fe48c7ff70ed417f0ed05ccf45"; + sha256 = "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0"; }; libName = "k8s_version"; authors = [ @@ -4500,7 +4594,7 @@ rec { dependencies = [ { name = "darling"; - packageId = "darling"; + packageId = "darling 0.21.2"; optional = true; } { @@ -4929,7 +5023,7 @@ rec { dependencies = [ { name = "darling"; - packageId = "darling"; + packageId = "darling 0.20.11"; } { name = "proc-macro2"; @@ -7165,9 +7259,9 @@ rec { }; "rstest" = rec { crateName = "rstest"; - version = "0.25.0"; + version = "0.26.1"; edition = "2021"; - sha256 = "17bqpqcy029gmsqy2y3v4iyb9kj4i4mqkypqglzr2gk1z2995hvg"; + sha256 = "0jcxhg9mxlr2p9an14algbcq6ax7r0sk1w1kbals5aiv0qy1k8zm"; authors = [ "Michele d'Amico " ]; @@ -7188,12 +7282,6 @@ rec { usesDefaultFeatures = false; } ]; - buildDependencies = [ - { - name = "rustc_version"; - packageId = "rustc_version"; - } - ]; features = { "async-timeout" = [ "dep:futures-timer" "dep:futures-util" "rstest_macros/async-timeout" ]; "crate-name" = [ "rstest_macros/crate-name" ]; @@ -7203,9 +7291,9 @@ rec { }; "rstest_macros" = rec { crateName = "rstest_macros"; - version = "0.25.0"; + version = "0.26.1"; edition = "2021"; - sha256 = "0ikpla102bmmzzv0ivr5h9v9k3b24v93zljlvvlpnc4xfjcqs5hz"; + sha256 = "185v185wn2x3llp3nn1i7h44vi5ffnnsj8b1a32m2ygzy08m714w"; procMacro = true; authors = [ "Michele d'Amico " @@ -8393,13 +8481,13 @@ rec { }; "stackable-operator" = rec { crateName = "stackable-operator"; - version = "0.94.0"; + version = "0.95.0"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; - sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; + rev = "20659fe864c643fe48c7ff70ed417f0ed05ccf45"; + sha256 = "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0"; }; libName = "stackable_operator"; authors = [ @@ -8511,11 +8599,13 @@ rec { { name = "stackable-telemetry"; packageId = "stackable-telemetry"; + optional = true; features = [ "clap" ]; } { name = "stackable-versioned"; packageId = "stackable-versioned"; + optional = true; } { name = "strum"; @@ -8547,9 +8637,13 @@ rec { } ]; features = { + "certs" = [ "dep:stackable-certs" ]; "default" = [ "telemetry" "versioned" ]; - "full" = [ "time" "telemetry" "versioned" ]; - "time" = [ "dep:time" ]; + "full" = [ "certs" "telemetry" "versioned" "time" "webhook" ]; + "telemetry" = [ "dep:stackable-telemetry" ]; + "time" = [ "stackable-shared/time" ]; + "versioned" = [ "dep:stackable-versioned" ]; + "webhook" = [ "dep:stackable-webhook" ]; }; resolvedDefaultFeatures = [ "default" "telemetry" "versioned" ]; }; @@ -8560,8 +8654,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; - sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; + rev = "20659fe864c643fe48c7ff70ed417f0ed05ccf45"; + sha256 = "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0"; }; procMacro = true; libName = "stackable_operator_derive"; @@ -8571,7 +8665,7 @@ rec { dependencies = [ { name = "darling"; - packageId = "darling"; + packageId = "darling 0.21.2"; } { name = "proc-macro2"; @@ -8590,25 +8684,36 @@ rec { }; "stackable-shared" = rec { crateName = "stackable-shared"; - version = "0.0.1"; + version = "0.0.2"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; - sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; + rev = "20659fe864c643fe48c7ff70ed417f0ed05ccf45"; + sha256 = "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0"; }; libName = "stackable_shared"; authors = [ "Stackable GmbH " ]; dependencies = [ + { + name = "k8s-openapi"; + packageId = "k8s-openapi"; + usesDefaultFeatures = false; + features = [ "schemars" "v1_33" ]; + } { name = "kube"; packageId = "kube"; usesDefaultFeatures = false; features = [ "client" "jsonpatch" "runtime" "derive" "rustls-tls" "ring" ]; } + { + name = "schemars"; + packageId = "schemars"; + features = [ "url" ]; + } { name = "semver"; packageId = "semver"; @@ -8626,8 +8731,31 @@ rec { name = "snafu"; packageId = "snafu 0.8.6"; } + { + name = "strum"; + packageId = "strum"; + features = [ "derive" ]; + } + { + name = "time"; + packageId = "time"; + optional = true; + } ]; - + devDependencies = [ + { + name = "k8s-openapi"; + packageId = "k8s-openapi"; + usesDefaultFeatures = false; + features = [ "schemars" "v1_33" ]; + } + ]; + features = { + "default" = [ "time" ]; + "full" = [ "time" ]; + "time" = [ "dep:time" ]; + }; + resolvedDefaultFeatures = [ "default" "time" ]; }; "stackable-superset-operator" = rec { crateName = "stackable-superset-operator"; @@ -8742,8 +8870,8 @@ rec { workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; - sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; + rev = "20659fe864c643fe48c7ff70ed417f0ed05ccf45"; + sha256 = "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0"; }; libName = "stackable_telemetry"; authors = [ @@ -8847,13 +8975,13 @@ rec { }; "stackable-versioned" = rec { crateName = "stackable-versioned"; - version = "0.8.0"; + version = "0.8.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; - sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; + rev = "20659fe864c643fe48c7ff70ed417f0ed05ccf45"; + sha256 = "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0"; }; libName = "stackable_versioned"; authors = [ @@ -8891,13 +9019,13 @@ rec { }; "stackable-versioned-macros" = rec { crateName = "stackable-versioned-macros"; - version = "0.8.0"; + version = "0.8.1"; edition = "2024"; workspace_member = null; src = pkgs.fetchgit { url = "https://github.com/stackabletech/operator-rs.git"; - rev = "958f62f2befdd984ad9fcd272d0214055c3a7601"; - sha256 = "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd"; + rev = "20659fe864c643fe48c7ff70ed417f0ed05ccf45"; + sha256 = "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0"; }; procMacro = true; libName = "stackable_versioned_macros"; @@ -8911,7 +9039,7 @@ rec { } { name = "darling"; - packageId = "darling"; + packageId = "darling 0.21.2"; } { name = "indoc"; @@ -9337,7 +9465,7 @@ rec { "std" = [ "alloc" "deranged/std" ]; "wasm-bindgen" = [ "dep:js-sys" ]; }; - resolvedDefaultFeatures = [ "alloc" "formatting" "parsing" "std" ]; + resolvedDefaultFeatures = [ "alloc" "default" "formatting" "parsing" "std" ]; }; "time-core" = rec { crateName = "time-core"; diff --git a/Cargo.toml b/Cargo.toml index 947a606a..76c40874 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,7 +11,7 @@ repository = "https://github.com/stackabletech/superset-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.94.0" } +stackable-operator = { git = "https://github.com/stackabletech/operator-rs.git", features = ["telemetry", "versioned"], tag = "stackable-operator-0.95.0" } anyhow = "1.0" built = { version = "0.8", features = ["chrono", "git2"] } @@ -20,7 +20,7 @@ const_format = "0.2" fnv = "1.0" futures = { version = "0.3", features = ["compat"] } indoc = "2.0" -rstest = "0.25" +rstest = "0.26" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" serde_yaml = "0.9" diff --git a/crate-hashes.json b/crate-hashes.json index 96482789..12db6439 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.94.0#k8s-version@0.1.3": "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#stackable-operator-derive@0.3.1": "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#stackable-operator@0.94.0": "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#stackable-shared@0.0.1": "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#stackable-telemetry@0.6.1": "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#stackable-versioned-macros@0.8.0": "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd", - "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.94.0#stackable-versioned@0.8.0": "0hiymhr40ix4jv9dmvp5d009xs6v0frvllr2xkf5mw43rcg44mgd", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#k8s-version@0.1.3": "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#stackable-operator-derive@0.3.1": "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#stackable-operator@0.95.0": "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#stackable-shared@0.0.2": "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#stackable-telemetry@0.6.1": "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#stackable-versioned-macros@0.8.1": "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0", + "git+https://github.com/stackabletech/operator-rs.git?tag=stackable-operator-0.95.0#stackable-versioned@0.8.1": "0db745j2nz5kz5mp8sh8af26gh9wx3cdad7ggl9f9jki1ms534z0", "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/rust/operator-binary/src/authorization/opa.rs b/rust/operator-binary/src/authorization/opa.rs index ee46c248..a7fea85b 100644 --- a/rust/operator-binary/src/authorization/opa.rs +++ b/rust/operator-binary/src/authorization/opa.rs @@ -1,6 +1,6 @@ use std::collections::BTreeMap; -use stackable_operator::{client::Client, commons::opa::OpaApiVersion, time::Duration}; +use stackable_operator::{client::Client, commons::opa::OpaApiVersion, shared::time::Duration}; use crate::crd::v1alpha1; diff --git a/rust/operator-binary/src/crd/mod.rs b/rust/operator-binary/src/crd/mod.rs index 8633a2bc..ea44d00c 100644 --- a/rust/operator-binary/src/crd/mod.rs +++ b/rust/operator-binary/src/crd/mod.rs @@ -26,8 +26,8 @@ use stackable_operator::{ product_logging::{self, spec::Logging}, role_utils::{GenericRoleConfig, Role, RoleGroupRef}, schemars::{self, JsonSchema}, + shared::time::Duration, status::condition::{ClusterCondition, HasStatusCondition}, - time::Duration, versioned::versioned, }; use strum::{Display, EnumIter, EnumString, IntoEnumIterator}; diff --git a/rust/operator-binary/src/druid_connection_controller.rs b/rust/operator-binary/src/druid_connection_controller.rs index 3e86e4d7..26322a3f 100644 --- a/rust/operator-binary/src/druid_connection_controller.rs +++ b/rust/operator-binary/src/druid_connection_controller.rs @@ -8,7 +8,7 @@ use stackable_operator::{ pod::{container::ContainerBuilder, security::PodSecurityContextBuilder}, }, client::Client, - commons::product_image_selection::ResolvedProductImage, + commons::product_image_selection::{self, ResolvedProductImage}, k8s_openapi::api::{ batch::v1::{Job, JobSpec}, core::v1::{ConfigMap, PodSpec, PodTemplateSpec}, @@ -19,8 +19,8 @@ use stackable_operator::{ runtime::{controller::Action, reflector::ObjectRef}, }, logging::controller::ReconcilerError, + shared::time::Duration, status::condition::{ClusterConditionStatus, ClusterConditionType}, - time::Duration, }; use strum::{EnumDiscriminants, IntoStaticStr}; @@ -94,6 +94,11 @@ pub enum Error { InvalidDruidConnection { source: error_boundary::InvalidObject, }, + + #[snafu(display("failed to resolve product image"))] + ResolveProductImage { + source: product_image_selection::Error, + }, } type Result = std::result::Result; @@ -121,6 +126,7 @@ impl ReconcilerError for Error { Error::ApplyRoleBinding { .. } => None, Error::SupersetClusterRetrieval { .. } => None, Error::InvalidDruidConnection { .. } => None, + Error::ResolveProductImage { .. } => None, } } } @@ -204,10 +210,11 @@ pub async fn reconcile_druid_connection( client, ) .await?; - let resolved_product_image: ResolvedProductImage = superset_cluster + let resolved_product_image = superset_cluster .spec .image - .resolve(DOCKER_IMAGE_BASE_NAME, crate::built_info::PKG_VERSION); + .resolve(DOCKER_IMAGE_BASE_NAME, crate::built_info::PKG_VERSION) + .context(ResolveProductImageSnafu)?; let job = build_import_job( &superset_cluster, druid_connection, diff --git a/rust/operator-binary/src/main.rs b/rust/operator-binary/src/main.rs index 3c98f87f..9b2eb238 100644 --- a/rust/operator-binary/src/main.rs +++ b/rust/operator-binary/src/main.rs @@ -79,15 +79,15 @@ async fn main() -> anyhow::Result<()> { Command::Run(ProductOperatorRun { product_config, watch_namespace, - telemetry_arguments, - cluster_info_opts, + operator_environment: _, + telemetry, + cluster_info, }) => { // NOTE (@NickLarsenNZ): Before stackable-telemetry was used: // - The console log level was set by `SUPERSET_OPERATOR_LOG`, and is now `CONSOLE_LOG` (when using Tracing::pre_configured). // - The file log level was set by `SUPERSET_OPERATOR_LOG`, and is now set via `FILE_LOG` (when using Tracing::pre_configured). // - The file log directory was set by `SUPERSET_OPERATOR_LOG_DIRECTORY`, and is now set by `ROLLING_LOGS_DIR` (or via `--rolling-logs `). - let _tracing_guard = - Tracing::pre_configured(built_info::PKG_NAME, telemetry_arguments).init()?; + let _tracing_guard = Tracing::pre_configured(built_info::PKG_NAME, telemetry).init()?; tracing::info!( built_info.pkg_version = built_info::PKG_VERSION, @@ -106,7 +106,7 @@ async fn main() -> anyhow::Result<()> { let client = stackable_operator::client::initialize_operator( Some(OPERATOR_NAME.to_string()), - &cluster_info_opts, + &cluster_info, ) .await?; diff --git a/rust/operator-binary/src/service.rs b/rust/operator-binary/src/service.rs index 6c635bd3..c89296cd 100644 --- a/rust/operator-binary/src/service.rs +++ b/rust/operator-binary/src/service.rs @@ -45,7 +45,7 @@ pub fn build_node_rolegroup_headless_service( .with_recommended_labels(build_recommended_labels( superset, SUPERSET_CONTROLLER_NAME, - &resolved_product_image.app_version_label, + &resolved_product_image.app_version_label_value, &rolegroup.role, &rolegroup.role_group, )) @@ -89,7 +89,7 @@ pub fn build_node_rolegroup_metrics_service( .with_recommended_labels(build_recommended_labels( superset, SUPERSET_CONTROLLER_NAME, - &resolved_product_image.app_version_label, + &resolved_product_image.app_version_label_value, &rolegroup.role, &rolegroup.role_group, )) diff --git a/rust/operator-binary/src/superset_controller.rs b/rust/operator-binary/src/superset_controller.rs index 8e58aa8a..102ba19d 100644 --- a/rust/operator-binary/src/superset_controller.rs +++ b/rust/operator-binary/src/superset_controller.rs @@ -31,7 +31,10 @@ use stackable_operator::{ }, }, cluster_resources::{ClusterResourceApplyStrategy, ClusterResources}, - commons::{product_image_selection::ResolvedProductImage, rbac::build_rbac_resources}, + commons::{ + product_image_selection::{self, ResolvedProductImage}, + rbac::build_rbac_resources, + }, crd::authentication::oidc, k8s_openapi::{ DeepMerge, @@ -60,11 +63,11 @@ use stackable_operator::{ spec::Logging, }, role_utils::{GenericRoleConfig, RoleGroupRef}, + shared::time::Duration, status::condition::{ compute_conditions, operations::ClusterOperationsConditionBuilder, statefulset::StatefulSetConditionBuilder, }, - time::Duration, utils::COMMON_BASH_TRAP_FUNCTIONS, }; use strum::{EnumDiscriminants, IntoStaticStr}; @@ -301,10 +304,17 @@ pub enum Error { ApplyGroupListener { source: stackable_operator::cluster_resources::Error, }, + #[snafu(display("failed to configure listener"))] ListenerConfiguration { source: crate::listener::Error }, - #[snafu(display("faild to configure service"))] + + #[snafu(display("failed to configure service"))] ServiceConfiguration { source: crate::service::Error }, + + #[snafu(display("failed to resolve product image"))] + ResolveProductImage { + source: product_image_selection::Error, + }, } type Result = std::result::Result; @@ -331,7 +341,8 @@ pub async fn reconcile_superset( let resolved_product_image: ResolvedProductImage = superset .spec .image - .resolve(DOCKER_IMAGE_BASE_NAME, crate::built_info::PKG_VERSION); + .resolve(DOCKER_IMAGE_BASE_NAME, crate::built_info::PKG_VERSION) + .context(ResolveProductImageSnafu)?; let superset_role = SupersetRole::Node; let cluster_operation_cond_builder = @@ -608,7 +619,7 @@ fn build_rolegroup_config_map( .with_recommended_labels(build_recommended_labels( superset, SUPERSET_CONTROLLER_NAME, - &resolved_product_image.app_version_label, + &resolved_product_image.app_version_label_value, &rolegroup.role, &rolegroup.role_group, )) @@ -662,7 +673,7 @@ fn build_server_rolegroup_statefulset( let recommended_object_labels = build_recommended_labels( superset, SUPERSET_CONTROLLER_NAME, - &resolved_product_image.app_version_label, + &resolved_product_image.app_version_label_value, &rolegroup_ref.role, &rolegroup_ref.role_group, );