Skip to content

Commit b10052c

Browse files
feat!(stackable-operator): Add EoS checker (#1096)
* refactor!(stackable-operator): Split/move CLI args/options * refactor!(stackable-operator): Gate KubernetesClusterInfoOptions' clap integration * feat(stackable-shared): Support Duration to std Duration conversion * feat(stackable-operator): Add EoS checker * docs: Remove outdated and long winded doc comments * test: Fix various doc tests * feat(stackable-operator): Default EoS interval based on debug/release build * docs(stackable-operator): Add more detail on how to run EoS checker * feat(stackable-operator): Add instrumentation to EoS checker * chore(stackable-operator): Add changelog entry * chore: Apply suggestion Co-authored-by: Nick <[email protected]> * chore: Apply formatting to previous code suggestion * ci(fix): Install Rust toolchain for cargo-deny * chore: Adjust changelog --------- Co-authored-by: Nick <[email protected]>
1 parent b018f1d commit b10052c

File tree

14 files changed

+529
-452
lines changed

14 files changed

+529
-452
lines changed

.github/workflows/build.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,9 @@ jobs:
6060
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
6161
with:
6262
persist-credentials: false
63+
- uses: dtolnay/rust-toolchain@master
64+
with:
65+
toolchain: ${{ env.RUST_TOOLCHAIN_VERSION }}
6366
- uses: EmbarkStudios/cargo-deny-action@30f817c6f72275c6d54dc744fbca09ebc958599f # v2.0.12
6467
with:
6568
command: check ${{ matrix.checks }}

crates/stackable-operator/CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,25 @@ All notable changes to this project will be documented in this file.
44

55
## [Unreleased]
66

7+
### Added
8+
9+
- Add end-of-support checker ([#1096]).
10+
- The EoS checker can be constructed using `EndOfSupportChecker::new()`.
11+
- Add new `MaintenanceOptions` and `EndOfSupportOptions` structs.
12+
- Add new CLI arguments and env vars:
13+
- `EOS_CHECK_MODE` (`--eos-check-mode`) to set the EoS check mode. Currently, only "offline" is supported.
14+
- `EOS_INTERVAL` (`--eos-interval`) to set the interval in which the operator checks if it is EoS.
15+
16+
### Changed
17+
18+
- BREAKING: `ProductOperatorRun` was renamed to `RunArguments` ([#1096]).
19+
- BREAKING: The `disable_crd_maintenance` field was moved from `RunArguments` into `MaintenanceOptions`.
20+
The CLI interface is unchanged ([#1096]).
21+
- BREAKING: Integration of `KubernetesClusterInfoOptions` with `clap` is now gated behind the `clap` feature flag.
22+
This is only breaking if default features for `stackable-operator` are disabled ([#1096]).
23+
24+
[#1096]: https://github.com/stackabletech/operator-rs/pull/1096
25+
726
## [0.98.0] - 2025-09-22
827

928
### Added

crates/stackable-operator/Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@ edition.workspace = true
88
repository.workspace = true
99

1010
[features]
11-
full = ["certs", "telemetry", "versioned", "time", "webhook"]
12-
default = ["telemetry", "versioned"]
11+
full = ["certs", "telemetry", "versioned", "time", "webhook", "clap"]
12+
default = ["telemetry", "versioned", "clap"]
1313

14+
clap = []
1415
certs = ["dep:stackable-certs"]
1516
telemetry = ["dep:stackable-telemetry"]
1617
time = ["stackable-shared/time"]

0 commit comments

Comments
 (0)