Skip to content

Commit d846d68

Browse files
committed
Merge remote-tracking branch 'origin/main' into chore/format-rustdoc
2 parents eee1929 + 70a891c commit d846d68

File tree

14 files changed

+842
-506
lines changed

14 files changed

+842
-506
lines changed

.github/workflows/build.yml

Lines changed: 0 additions & 116 deletions
This file was deleted.
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
---
2+
name: Security Checks
3+
4+
on:
5+
pull_request:
6+
7+
env:
8+
CARGO_TERM_COLOR: always
9+
CARGO_INCREMENTAL: "0"
10+
CARGO_PROFILE_DEV_DEBUG: "0"
11+
RUST_TOOLCHAIN_VERSION: "1.89.0"
12+
RUSTFLAGS: "-D warnings"
13+
RUSTDOCFLAGS: "-D warnings"
14+
RUST_LOG: "info"
15+
16+
permissions: {}
17+
18+
jobs:
19+
# Identify unused dependencies
20+
cargo-udeps:
21+
name: Run Cargo Udeps
22+
runs-on: ubuntu-latest
23+
env:
24+
RUSTC_BOOTSTRAP: 1
25+
steps:
26+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
27+
with:
28+
persist-credentials: false
29+
- uses: dtolnay/rust-toolchain@master
30+
with:
31+
toolchain: ${{ env.RUST_TOOLCHAIN_VERSION }}
32+
- uses: Swatinem/rust-cache@f13886b937689c021905a6b90929199931d60db1 # v2.8.1
33+
with:
34+
key: udeps
35+
- run: cargo install --locked [email protected]
36+
- run: cargo udeps --all-targets --all-features
37+
38+
cargo-deny:
39+
name: Run Cargo Deny
40+
runs-on: ubuntu-latest
41+
strategy:
42+
matrix:
43+
checks:
44+
- advisories
45+
- bans licenses sources
46+
47+
# Prevent sudden announcement of a new advisory from failing ci:
48+
continue-on-error: ${{ matrix.checks == 'advisories' }}
49+
50+
steps:
51+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
52+
with:
53+
persist-credentials: false
54+
- uses: dtolnay/rust-toolchain@master
55+
with:
56+
toolchain: ${{ env.RUST_TOOLCHAIN_VERSION }}
57+
- uses: EmbarkStudios/cargo-deny-action@76cd80eb775d7bbbd2d80292136d74d39e1b4918 # v2.0.14
58+
with:
59+
command: check ${{ matrix.checks }}

.pre-commit-config.yaml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,30 @@ repos:
4747
stages: [pre-commit, pre-merge-commit, manual]
4848
pass_filenames: false
4949

50+
- id: cargo-doc
51+
name: cargo-doc
52+
language: system
53+
entry: cargo doc --document-private-items
54+
stages: [pre-commit, pre-merge-commit]
55+
pass_filenames: false
56+
files: \.rs$|Cargo\.(toml|lock)
57+
58+
- id: cargo-test-no-default-features
59+
name: cargo-test-no-default-features
60+
language: system
61+
entry: cargo test --no-default-features --workspace
62+
stages: [pre-commit, pre-merge-commit]
63+
pass_filenames: false
64+
files: \.rs$|Cargo\.(toml|lock)
65+
66+
- id: cargo-test-all-features
67+
name: cargo-test-all-features
68+
language: system
69+
entry: cargo test --all-features --workspace
70+
stages: [pre-commit, pre-merge-commit]
71+
pass_filenames: false
72+
files: \.rs$|Cargo\.(toml|lock)
73+
5074
- id: cargo-rustfmt
5175
name: cargo-rustfmt
5276
language: system

Cargo.lock

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

Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ repository = "https://github.com/stackabletech/operator-rs"
1111
[workspace.dependencies]
1212
product-config = { git = "https://github.com/stackabletech/product-config.git", tag = "0.8.0" }
1313

14-
arc-swap = "1.7"
14+
arc-swap = "1.7.0"
15+
async-trait = "0.1.89"
1516
axum = { version = "0.8.1", features = ["http2"] }
1617
chrono = { version = "0.4.38", default-features = false }
1718
clap = { version = "4.5.17", features = ["derive", "cargo", "env"] }
@@ -38,7 +39,7 @@ k8s-openapi = { version = "0.26.0", default-features = false, features = ["schem
3839
# We use rustls instead of openssl for easier portability, e.g. so that we can build stackablectl without the need to vendor (build from source) openssl
3940
# We use ring instead of aws-lc-rs, as this currently fails to build in "make run-dev"
4041
# We pin the kube version, as we use a patch for 2.0.1
41-
kube = { git = "https://github.com/stackabletech/kube-rs", branch = "2.0.1-fix-schema-hoisting", version = "=2.0.1", default-features = false, features = ["client", "jsonpatch", "runtime", "derive", "rustls-tls", "ring"] }
42+
kube = { git = "https://github.com/stackabletech/kube-rs", branch = "2.0.1-fix-schema-hoisting", version = "=2.0.1", default-features = false, features = ["client", "jsonpatch", "runtime", "derive", "admission", "rustls-tls", "ring"] }
4243
opentelemetry = "0.31.0"
4344
opentelemetry_sdk = { version = "0.31.0", features = ["rt-tokio"] }
4445
opentelemetry-appender-tracing = "0.31.0"

crates/stackable-webhook/CHANGELOG.md

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

55
## [Unreleased]
66

7+
### Added
8+
9+
- Add support for mutating webhooks ([#1119]).
10+
11+
### Changed
12+
13+
- BREAKING: Refactor the entire `WebhookServer` mechanism, so multiple webhooks can run in parallel.
14+
Put individual webhooks (currently `ConversionWebhook` and `MutatingWebhook`) behind the `Webhook` trait ([#1119]).
15+
16+
[#1119]: https://github.com/stackabletech/operator-rs/pull/1119
17+
718
## [0.7.1] - 2025-10-31
819

920
### Fixed

crates/stackable-webhook/Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ stackable-shared = { path = "../stackable-shared" }
1212
stackable-telemetry = { path = "../stackable-telemetry" }
1313

1414
arc-swap.workspace = true
15+
async-trait.workspace = true
1516
axum.workspace = true
1617
futures-util.workspace = true
1718
hyper-util.workspace = true
@@ -21,6 +22,7 @@ kube.workspace = true
2122
opentelemetry.workspace = true
2223
opentelemetry-semantic-conventions.workspace = true
2324
rand.workspace = true
25+
serde.workspace = true
2426
serde_json.workspace = true
2527
snafu.workspace = true
2628
tokio-rustls.workspace = true

0 commit comments

Comments
 (0)