Feat/k8s kms plugin#999
Open
p0wline wants to merge 27 commits into
Open
Conversation
c5e3675 to
2317356
Compare
Contributor
Author
|
@copilot resolve the merge conflicts in this pull request |
Contributor
Done — merged |
10eef1b to
dc6f4ba
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a new Kubernetes KMS v2 provider plugin binary (cosmian-kms-plugin) to let kube-apiserver delegate Encrypt/Decrypt operations to Cosmian KMS (via KMIP), along with documentation, test vectors, and Nix vendor-hash updates.
Changes:
- Introduces
cosmian_kms_k8s_plugincrate (gRPC service, YAML config, build-time proto generation). - Adds integration docs + MkDocs navigation entry for the Kubernetes plugin.
- Adds a KMS test vector runner entry for the plugin flow and updates Nix expected vendor hashes /
Cargo.lock.
Reviewed changes
Copilot reviewed 18 out of 19 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
nix/expected-hashes/ui.vendor.non-fips.sha256 |
Updates UI vendor hash for Nix builds. |
nix/expected-hashes/ui.vendor.fips.sha256 |
Updates UI vendor hash for Nix builds. |
nix/expected-hashes/server.vendor.static.sha256 |
Updates server vendor hash for Nix builds. |
nix/expected-hashes/cli.vendor.linux.sha256 |
Updates CLI vendor hash for Nix builds. |
documentation/mkdocs.yml |
Adds the Kubernetes plugin page to site navigation. |
documentation/docs/integrations/kubernetes_kms_plugin.md |
New integration documentation for the Kubernetes KMS v2 plugin. |
crate/test_kms_server/src/vector_runner.rs |
Registers a new test vector for the plugin wrap/unwrap flow. |
crate/clients/k8s_plugin/src/service.rs |
Implements the KMS v2 gRPC service delegating to KmsClient KMIP Encrypt/Decrypt. |
crate/clients/k8s_plugin/src/main.rs |
Adds CLI entrypoint: loads config, binds Unix socket, serves tonic gRPC. |
crate/clients/k8s_plugin/src/kmsv2.proto |
Adds the Kubernetes KMS v2 proto definition (Apache 2.0 source). |
crate/clients/k8s_plugin/src/integration_tests.rs |
New end-to-end test: spins up test KMS + plugin and checks Status/Encrypt/Decrypt. |
crate/clients/k8s_plugin/src/error.rs |
Introduces plugin error type and maps it to tonic::Status. |
crate/clients/k8s_plugin/src/config.rs |
Adds YAML config schema + loader for the plugin. |
crate/clients/k8s_plugin/Cargo.toml |
New crate manifest (deps: tonic/prost/protox, serde_yaml, etc.). |
crate/clients/k8s_plugin/build.rs |
Generates tonic bindings from the proto at build time (protox-based). |
Cargo.toml |
Adds the new crate to the workspace members list. |
Cargo.lock |
Locks new dependencies pulled in by the plugin (tonic-build/protox/etc.). |
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
…HEL, macOS, Windows/WSL2, k3s, kind)
2bbd24f to
10119df
Compare
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
…ng deps to operator, fix machete false positives
# Conflicts: # .github/workflows/packaging.yml # .github/workflows/test_all.yml # Cargo.lock # nix/expected-hashes/cli.vendor.linux.sha256 # test_data
Fixes WASM build failure on wasm32-unknown-unknown caused by tracing-appender 0.2.5 depending on the symlink crate (not available on wasm32). Resolves #1002.
Use cosmian_logger (already a workspace dependency) with features=["full"] in the k8s plugin and operator, reading standard OpenTelemetry env vars: - OTEL_EXPORTER_OTLP_ENDPOINT: enables OTLP export when set - OTEL_SERVICE_NAME: service name reported to the collector (operator only) - RUST_LOG / --log-level: log verbosity (plugin) Avoids introducing a git dependency with a rust-version constraint incompatible with the workspace toolchain (1.91.0 vs 1.94.1). A cosmian_logger 0.7.3 release adding init_tracing() is tracked in Cosmian/http_client_server#21. Closes #1002
# Conflicts: # nix/expected-hashes/server.vendor.static.sha256 # nix/expected-hashes/ui.vendor.non-fips.sha256
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.