Skip to content

Commit b3b5f4b

Browse files
authored
Merge branch 'main' into feat/roundtrip-tests
2 parents 4b8637b + 380e4fb commit b3b5f4b

35 files changed

Lines changed: 299 additions & 135 deletions

File tree

Cargo.lock

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

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ either = "1.13.0"
2929
futures = "0.3.30"
3030
futures-util = "0.3.30"
3131
http = "1.3.1"
32+
humantime = "2.1.0"
3233
indexmap = "2.5.0"
3334
indoc = "2.0.6"
3435
jiff = "0.2.18"

crates/k8s-version/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
//!
2424
//! ### Constructing
2525
//!
26-
//! Alternatively, they can be constructed programatically using the
26+
//! Alternatively, they can be constructed programmatically using the
2727
//! [`ApiVersion::new()`] and [`ApiVersion::try_new()`] functions.
2828
//!
2929
//! ```

crates/stackable-certs/CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ All notable changes to this project will be documented in this file.
1414

1515
- BREAKING: The functions `generate_leaf_certificate`, `generate_rsa_leaf_certificate` and
1616
`generate_ecdsa_leaf_certificate` of `CertificateAuthority` accept an additional parameter
17-
`subject_alterative_dns_names` ([#1057]).
17+
`subject_alternative_dns_names` ([#1057]).
1818
- The passed SANs are added to the generated certificate, this is needed when the HTTPS server is
1919
accessible on multiple DNS names and/or IPs.
2020
- Pass an empty list (`[]`) to keep the existing behavior.

crates/stackable-certs/src/ca/mod.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ where
163163
}
164164

165165
/// A certificate authority (CA) which is used to generate and sign
166-
/// intermidiate or leaf certificates.
166+
/// intermediate or leaf certificates.
167167
#[derive(Debug)]
168168
pub struct CertificateAuthority<S>
169169
where
@@ -298,7 +298,7 @@ where
298298
key_pair: T,
299299
name: &str,
300300
scope: &str,
301-
subject_alterative_dns_names: impl IntoIterator<Item = &'a str> + Debug,
301+
subject_alternative_dns_names: impl IntoIterator<Item = &'a str> + Debug,
302302
validity: Duration,
303303
) -> Result<CertificatePair<T>>
304304
where
@@ -353,7 +353,7 @@ where
353353
]))
354354
.context(AddCertificateExtensionSnafu)?;
355355

356-
let sans = subject_alterative_dns_names
356+
let sans = subject_alternative_dns_names
357357
.into_iter()
358358
.map(|dns_name| {
359359
let ia5_dns_name =
@@ -385,11 +385,11 @@ where
385385
&mut self,
386386
name: &str,
387387
scope: &str,
388-
subject_alterative_dns_names: impl IntoIterator<Item = &'a str> + Debug,
388+
subject_alternative_dns_names: impl IntoIterator<Item = &'a str> + Debug,
389389
validity: Duration,
390390
) -> Result<CertificatePair<rsa::SigningKey>> {
391391
let key = rsa::SigningKey::new().context(GenerateRsaSigningKeySnafu)?;
392-
self.generate_leaf_certificate(key, name, scope, subject_alterative_dns_names, validity)
392+
self.generate_leaf_certificate(key, name, scope, subject_alternative_dns_names, validity)
393393
}
394394

395395
/// Generates an ECDSAasync -based leaf certificate which is signed by this CA.
@@ -401,11 +401,11 @@ where
401401
&mut self,
402402
name: &str,
403403
scope: &str,
404-
subject_alterative_dns_names: impl IntoIterator<Item = &'a str> + Debug,
404+
subject_alternative_dns_names: impl IntoIterator<Item = &'a str> + Debug,
405405
validity: Duration,
406406
) -> Result<CertificatePair<ecdsa::SigningKey>> {
407407
let key = ecdsa::SigningKey::new().context(GenerateEcdsaSigningKeySnafu)?;
408-
self.generate_leaf_certificate(key, name, scope, subject_alterative_dns_names, validity)
408+
self.generate_leaf_certificate(key, name, scope, subject_alternative_dns_names, validity)
409409
}
410410

411411
/// Create a [`CertificateAuthority`] from a Kubernetes [`Secret`].

crates/stackable-certs/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ pub enum CertificatePairError<E>
4343
where
4444
E: std::error::Error + 'static,
4545
{
46-
#[snafu(display("failed to seralize certificate as {key_encoding}"))]
46+
#[snafu(display("failed to serialize certificate as {key_encoding}"))]
4747
SerializeCertificate {
4848
source: x509_cert::der::Error,
4949
key_encoding: KeyEncoding,

crates/stackable-operator/CHANGELOG.md

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

55
## [Unreleased]
66

7+
### Added
8+
9+
- Implement `Deref` for `kvp::Key` to be more ergonomic to use ([#1182]).
10+
- Add support for specifying a `clientAuthenticationMethod` for OIDC ([#1178]).
11+
This was originally done in [#1158] and had been reverted in [#1170].
12+
13+
### Removed
14+
15+
- BREAKING: Remove unused `add_prefix`, `try_add_prefix`, `set_name`, and `try_set_name` associated
16+
functions from `kvp::Key` to disallow mutable access to inner values ([#1182]).
17+
18+
[#1178]: https://github.com/stackabletech/operator-rs/pull/1178
19+
[#1182]: https://github.com/stackabletech/operator-rs/pull/1182
20+
721
## [0.108.0] - 2026-03-10
822

923
### Removed
@@ -1494,7 +1508,7 @@ Only rust documentation was changed.
14941508
- status::condition module to compute the cluster resource status ([#571]).
14951509
- Helper function to build RBAC resources ([#572]).
14961510
- Add `ClusterResourceApplyStrategy` to `ClusterResource` ([#573]).
1497-
- Add `ClusterOperation` common struct with `reconcilation_paused` and `stopped` flags ([#573]).
1511+
- Add `ClusterOperation` common struct with `reconciliation_paused` and `stopped` flags ([#573]).
14981512

14991513
[#571]: https://github.com/stackabletech/operator-rs/pull/571
15001514
[#572]: https://github.com/stackabletech/operator-rs/pull/572
@@ -1839,7 +1853,7 @@ This is a rerelease of 0.25.1 which some last-minute incompatible API changes to
18391853

18401854
### Changed
18411855

1842-
- BREAKING: Removed `commons::s3::S3ConnectionImplementation`. `commons::s3::InlinedBucketSpec::endpoint()` doesn't take arguments since the protocol decision is now based on the existance of TLS configuration ([#390]).
1856+
- BREAKING: Removed `commons::s3::S3ConnectionImplementation`. `commons::s3::InlinedBucketSpec::endpoint()` doesn't take arguments since the protocol decision is now based on the existence of TLS configuration ([#390]).
18431857
- BREAKING: Changes to resource requirements structs to enable deep merging ([#392])
18441858
- Changed fields in `Resources` to no longer be optional
18451859
- Changed atomic fields in `MemoryLimits`, `JvmHeapLimits`, `CpuLimits` and `PvcConfig` to be optional
@@ -1875,7 +1889,7 @@ This is a rerelease of 0.25.1 which some last-minute incompatible API changes to
18751889
### Added
18761890

18771891
- Export logs to Jaeger ([#360]).
1878-
- Added common datastructures shared between all operators like `Tls` oder `AuthenticationClass` ([#366]).
1892+
- Added common datastructures shared between all operators like `Tls` or `AuthenticationClass` ([#366]).
18791893
- Added helpers for env variables from Secrets or ConfigMaps ([#370]).
18801894

18811895
### Changed
@@ -2089,7 +2103,7 @@ This is a rerelease of 0.25.1 which some last-minute incompatible API changes to
20892103
### Changed
20902104

20912105
- BREAKING: In builder: `add_stackable_agent_tolerations` to `add_tolerations` ([#255]).
2092-
- Generic `VALUE` paramters to `impl Into<_>` arguments for consistency ([#253]).
2106+
- Generic `VALUE` parameters to `impl Into<_>` arguments for consistency ([#253]).
20932107

20942108
### Removed
20952109

crates/stackable-operator/crds/DummyCluster.yaml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,16 @@ spec:
3030
description: This field contains OIDC-specific configuration. It is only required in case OIDC is used.
3131
nullable: true
3232
properties:
33+
clientAuthenticationMethod:
34+
default: client_secret_basic
35+
description: 'The client authentication method used when communicating with the token endpoint. Defaults to `client_secret_basic`. The required contents of `clientCredentialsSecret` depend on the chosen method: secret-based methods (`client_secret_basic`, `client_secret_post`, `client_secret_jwt`) expect a client secret, while `private_key_jwt` expects a private key.'
36+
enum:
37+
- client_secret_basic
38+
- client_secret_post
39+
- client_secret_jwt
40+
- private_key_jwt
41+
- none
42+
type: string
3343
clientCredentialsSecret:
3444
description: |-
3545
A reference to the OIDC client credentials secret. The secret contains
@@ -587,7 +597,7 @@ spec:
587597
type: object
588598
type: object
589599
enableVectorAgent:
590-
description: Wether or not to deploy a container with the Vector log agent.
600+
description: Whether or not to deploy a container with the Vector log agent.
591601
nullable: true
592602
type: boolean
593603
type: object
@@ -1199,7 +1209,7 @@ spec:
11991209
type: object
12001210
type: object
12011211
enableVectorAgent:
1202-
description: Wether or not to deploy a container with the Vector log agent.
1212+
description: Whether or not to deploy a container with the Vector log agent.
12031213
nullable: true
12041214
type: boolean
12051215
type: object

crates/stackable-operator/src/builder/pdb.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ pub enum Error {
4545
pub struct PodDisruptionBudgetBuilder<ObjectMeta, LabelSelector, PodDisruptionBudgetConstraint> {
4646
metadata: ObjectMeta,
4747
selector: LabelSelector,
48-
/// Tracks wether either `maxUnavailable` or `minAvailable` is set.
48+
/// Tracks whether either `maxUnavailable` or `minAvailable` is set.
4949
constraint: Option<PodDisruptionBudgetConstraint>,
5050
}
5151

crates/stackable-operator/src/builder/pod/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -667,7 +667,7 @@ mod tests {
667667
.build()
668668
}
669669

670-
/// A [`PodBuilder`] that already contains the minum setup to build a Pod (name and container).
670+
/// A [`PodBuilder`] that already contains the minimum setup to build a Pod (name and container).
671671
#[fixture]
672672
fn pod_builder_with_name_and_container(dummy_container: Container) -> PodBuilder {
673673
let mut builder = PodBuilder::new();

0 commit comments

Comments
 (0)