|
| 1 | +# SPDX-FileCopyrightText: Copyright (c) 2025-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. |
| 2 | +# SPDX-License-Identifier: Apache-2.0 |
| 3 | + |
| 4 | +[package] |
| 5 | +name = "openshell-operator" |
| 6 | +description = "Kubernetes operator for SandboxRuntime CRD lifecycle management" |
| 7 | +version.workspace = true |
| 8 | +edition.workspace = true |
| 9 | +rust-version.workspace = true |
| 10 | +license.workspace = true |
| 11 | +repository.workspace = true |
| 12 | + |
| 13 | +[[bin]] |
| 14 | +name = "openshell-operator" |
| 15 | +path = "src/main.rs" |
| 16 | + |
| 17 | +[[bin]] |
| 18 | +name = "openshell-crd-gen" |
| 19 | +path = "src/bin/crd_gen.rs" |
| 20 | + |
| 21 | +[lib] |
| 22 | +name = "openshell_operator" |
| 23 | +path = "src/lib.rs" |
| 24 | + |
| 25 | +[dependencies] |
| 26 | +# Kubernetes (inherits workspace features: runtime, derive) |
| 27 | +# Additional "admission" feature for webhook support |
| 28 | +kube = { workspace = true, features = ["admission"] } |
| 29 | +k8s-openapi = { workspace = true } |
| 30 | + |
| 31 | +# CRD schema generation |
| 32 | +schemars = { workspace = true } |
| 33 | + |
| 34 | +# Webhook JSON patches |
| 35 | +json-patch = { workspace = true } |
| 36 | + |
| 37 | +# gRPC / Protobuf (for bridge service types) |
| 38 | +tonic = { workspace = true } |
| 39 | +prost = { workspace = true } |
| 40 | + |
| 41 | +# HTTP server (webhook endpoints) |
| 42 | +axum = { workspace = true } |
| 43 | +tower = { workspace = true } |
| 44 | +hyper = { workspace = true } |
| 45 | +hyper-util = { workspace = true } |
| 46 | + |
| 47 | +# TLS (webhook HTTPS) |
| 48 | +tokio-rustls = { workspace = true } |
| 49 | +rustls = { workspace = true } |
| 50 | +rustls-pemfile = { workspace = true } |
| 51 | + |
| 52 | +# Async runtime |
| 53 | +tokio = { workspace = true } |
| 54 | +tokio-stream = { workspace = true } |
| 55 | +futures = { workspace = true } |
| 56 | + |
| 57 | +# Serialization |
| 58 | +serde = { workspace = true } |
| 59 | +serde_json = { workspace = true } |
| 60 | +serde_yml = { workspace = true } |
| 61 | + |
| 62 | +# Error handling |
| 63 | +thiserror = { workspace = true } |
| 64 | +anyhow = { workspace = true } |
| 65 | + |
| 66 | +# Logging |
| 67 | +tracing = { workspace = true } |
| 68 | +tracing-subscriber = { workspace = true } |
| 69 | + |
| 70 | +# CLI (operator binary args) |
| 71 | +clap = { workspace = true } |
| 72 | + |
| 73 | +[dev-dependencies] |
| 74 | +tokio = { workspace = true, features = ["full", "test-util"] } |
| 75 | + |
| 76 | +[lints] |
| 77 | +workspace = true |
0 commit comments