chore: Standardize Cargo.toml files, enable more workspace dependencies
This commit is contained in:
parent
d3088c42ee
commit
5e1b7760a1
31
Cargo.toml
31
Cargo.toml
|
|
@ -2,11 +2,11 @@
|
||||||
members = [
|
members = [
|
||||||
"crates/client",
|
"crates/client",
|
||||||
"crates/logging",
|
"crates/logging",
|
||||||
"crates/shim-protos",
|
|
||||||
"crates/shim",
|
|
||||||
"crates/snapshots",
|
|
||||||
"crates/runc",
|
"crates/runc",
|
||||||
"crates/runc-shim",
|
"crates/runc-shim",
|
||||||
|
"crates/shim",
|
||||||
|
"crates/shim-protos",
|
||||||
|
"crates/snapshots",
|
||||||
]
|
]
|
||||||
|
|
||||||
[profile.release]
|
[profile.release]
|
||||||
|
|
@ -24,14 +24,21 @@ edition = "2021"
|
||||||
|
|
||||||
# Common dependencies for all crates
|
# Common dependencies for all crates
|
||||||
[workspace.dependencies]
|
[workspace.dependencies]
|
||||||
tokio = "1.26"
|
|
||||||
tower = "0.4"
|
|
||||||
|
|
||||||
tonic = "0.10"
|
|
||||||
tonic-build = "0.10"
|
|
||||||
|
|
||||||
prost = "0.12"
|
|
||||||
prost-types = "0.12"
|
|
||||||
|
|
||||||
async-trait = "0.1.52"
|
async-trait = "0.1.52"
|
||||||
futures = "0.3.19"
|
futures = "0.3.19"
|
||||||
|
libc = "0.2.112"
|
||||||
|
log = "0.4"
|
||||||
|
nix = "0.26"
|
||||||
|
oci-spec = "0.6"
|
||||||
|
os_pipe = "1.1"
|
||||||
|
prost = "0.12"
|
||||||
|
prost-types = "0.12"
|
||||||
|
serde = { version = "1.0", features = ["derive"] }
|
||||||
|
serde_json = "1.0"
|
||||||
|
thiserror = "1.0"
|
||||||
|
time = { version = "0.3.7", features = ["serde", "std"] }
|
||||||
|
tokio = "1.26"
|
||||||
|
tonic = "0.10"
|
||||||
|
tonic-build = "0.10"
|
||||||
|
tower = "0.4"
|
||||||
|
uuid = { version = "1.0", features = ["v4"] }
|
||||||
|
|
|
||||||
|
|
@ -14,11 +14,19 @@ license.workspace = true
|
||||||
repository.workspace = true
|
repository.workspace = true
|
||||||
homepage.workspace = true
|
homepage.workspace = true
|
||||||
|
|
||||||
|
[[example]]
|
||||||
|
name = "container"
|
||||||
|
path = "examples/container.rs"
|
||||||
|
|
||||||
|
[[example]]
|
||||||
|
name = "version"
|
||||||
|
path = "examples/version.rs"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
tonic.workspace = true
|
|
||||||
prost.workspace = true
|
prost.workspace = true
|
||||||
prost-types.workspace = true
|
prost-types.workspace = true
|
||||||
tokio = { workspace = true, optional = true }
|
tokio = { workspace = true, optional = true }
|
||||||
|
tonic.workspace = true
|
||||||
tower = { workspace = true, optional = true }
|
tower = { workspace = true, optional = true }
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,13 @@
|
||||||
[package]
|
[package]
|
||||||
name = "containerd-shim-logging"
|
name = "containerd-shim-logging"
|
||||||
version = "0.1.1"
|
version = "0.1.1"
|
||||||
authors = ["Maksym Pavlenko <pavlenko.maksym@gmail.com>", "The containerd Authors"]
|
authors = [
|
||||||
|
"Maksym Pavlenko <pavlenko.maksym@gmail.com>",
|
||||||
|
"The containerd Authors"
|
||||||
|
]
|
||||||
description = "Logger extension for containerd v2 runtime"
|
description = "Logger extension for containerd v2 runtime"
|
||||||
keywords = ["containerd", "shim", "containers"]
|
keywords = ["containerd", "shim", "containers"]
|
||||||
|
categories = ["api-bindings", "asynchronous"]
|
||||||
|
|
||||||
edition.workspace = true
|
edition.workspace = true
|
||||||
license.workspace = true
|
license.workspace = true
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,9 @@ authors = [
|
||||||
"Tianyang Zhang <burning9699@gmail.com>",
|
"Tianyang Zhang <burning9699@gmail.com>",
|
||||||
"The containerd Authors",
|
"The containerd Authors",
|
||||||
]
|
]
|
||||||
keywords = ["containerd", "shim", "containers"]
|
|
||||||
description = "Rust implementation of containerd's runc v2 shim runtime"
|
description = "Rust implementation of containerd's runc v2 shim runtime"
|
||||||
|
keywords = ["containerd", "shim", "containers"]
|
||||||
|
categories = ["api-bindings", "asynchronous"]
|
||||||
|
|
||||||
edition.workspace = true
|
edition.workspace = true
|
||||||
license.workspace = true
|
license.workspace = true
|
||||||
|
|
@ -24,20 +25,19 @@ path = "src/main.rs"
|
||||||
doc = false
|
doc = false
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
log = "0.4"
|
containerd-shim = { path = "../shim", version = "0.5.0", features = ["async"] }
|
||||||
nix = "0.26"
|
|
||||||
libc = "0.2.95"
|
|
||||||
time = { version = "0.3.7", features = ["serde", "std"] }
|
|
||||||
serde = { version = "1.0.133", features = ["derive"] }
|
|
||||||
serde_json = "1.0.74"
|
|
||||||
oci-spec = "0.6.0"
|
|
||||||
crossbeam = "0.8.1"
|
crossbeam = "0.8.1"
|
||||||
uuid = { version = "1.0.0", features = ["v4"] }
|
libc.workspace = true
|
||||||
|
log.workspace = true
|
||||||
|
nix.workspace = true
|
||||||
|
oci-spec.workspace = true
|
||||||
|
runc = { path = "../runc", version = "0.2.0", features = ["async"] }
|
||||||
|
serde.workspace = true
|
||||||
|
serde_json.workspace = true
|
||||||
|
time.workspace = true
|
||||||
|
uuid.workspace = true
|
||||||
|
|
||||||
# Async dependencies
|
# Async dependencies
|
||||||
async-trait = { workspace = true }
|
async-trait.workspace = true
|
||||||
|
futures.workspace = true
|
||||||
tokio = { workspace = true, features = ["full"] }
|
tokio = { workspace = true, features = ["full"] }
|
||||||
futures = { workspace = true }
|
|
||||||
|
|
||||||
containerd-shim = { path = "../shim", version = "0.5.0", features = ["async"] }
|
|
||||||
runc = { path = "../runc", version = "0.2.0", features = ["async"] }
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,13 @@
|
||||||
[package]
|
[package]
|
||||||
name = "runc"
|
name = "runc"
|
||||||
version = "0.2.0"
|
version = "0.2.0"
|
||||||
authors = ["Yuna Tomida <ytomida.mmm@gmail.com>", "The containerd Authors"]
|
authors = [
|
||||||
keywords = ["containerd", "containers", "runc"]
|
"Yuna Tomida <ytomida.mmm@gmail.com>",
|
||||||
|
"The containerd Authors",
|
||||||
|
]
|
||||||
description = "A crate for consuming the runc binary in your Rust applications"
|
description = "A crate for consuming the runc binary in your Rust applications"
|
||||||
|
keywords = ["containerd", "containers", "runc"]
|
||||||
|
categories = ["api-bindings", "asynchronous"]
|
||||||
|
|
||||||
edition.workspace = true
|
edition.workspace = true
|
||||||
license.workspace = true
|
license.workspace = true
|
||||||
|
|
@ -13,24 +17,23 @@ homepage.workspace = true
|
||||||
[features]
|
[features]
|
||||||
async = ["tokio", "async-trait", "futures", "tokio-pipe"]
|
async = ["tokio", "async-trait", "futures", "tokio-pipe"]
|
||||||
|
|
||||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
libc = "0.2.112"
|
libc.workspace = true
|
||||||
log = "0.4.14"
|
log.workspace = true
|
||||||
nix = "0.26"
|
nix.workspace = true
|
||||||
oci-spec = "0.6.0"
|
oci-spec.workspace = true
|
||||||
|
os_pipe.workspace = true
|
||||||
path-absolutize = "3.0.11"
|
path-absolutize = "3.0.11"
|
||||||
rand = "0.8.4"
|
rand = "0.8.4"
|
||||||
serde = { version = "1.0.133", features = ["derive"] }
|
serde.workspace = true
|
||||||
serde_json = "1.0.74"
|
serde_json.workspace = true
|
||||||
tempfile = "3.6.0"
|
tempfile = "3.6.0"
|
||||||
thiserror = "1.0.30"
|
thiserror.workspace = true
|
||||||
time = { version = "0.3.7", features = ["serde", "std"] }
|
time.workspace = true
|
||||||
uuid = { version = "1.0.0", features = ["v4"] }
|
uuid.workspace = true
|
||||||
os_pipe = "1.0.0"
|
|
||||||
|
|
||||||
# Async dependencies
|
# Async dependencies
|
||||||
tokio = { workspace = true, features = ["full"], optional = true }
|
|
||||||
async-trait = { workspace = true, optional = true }
|
async-trait = { workspace = true, optional = true }
|
||||||
futures = { workspace = true, optional = true }
|
futures = { workspace = true, optional = true }
|
||||||
|
tokio = { workspace = true, features = ["full"], optional = true }
|
||||||
tokio-pipe = { version="0.2.10", optional = true }
|
tokio-pipe = { version="0.2.10", optional = true }
|
||||||
|
|
|
||||||
|
|
@ -7,34 +7,13 @@ authors = [
|
||||||
]
|
]
|
||||||
description = "TTRPC bindings for containerd shim interfaces"
|
description = "TTRPC bindings for containerd shim interfaces"
|
||||||
keywords = ["containerd", "shim", "containers", "ttrpc", "client"]
|
keywords = ["containerd", "shim", "containers", "ttrpc", "client"]
|
||||||
categories = ["api-bindings"]
|
categories = ["api-bindings", "asynchronous"]
|
||||||
|
|
||||||
edition.workspace = true
|
edition.workspace = true
|
||||||
license.workspace = true
|
license.workspace = true
|
||||||
repository.workspace = true
|
repository.workspace = true
|
||||||
homepage.workspace = true
|
homepage.workspace = true
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
protobuf = "3.1"
|
|
||||||
|
|
||||||
# Quickfix to make CI green.
|
|
||||||
# 0.8.1 introduces a breaking change in the API.
|
|
||||||
# https://github.com/containerd/ttrpc-rust/pull/197
|
|
||||||
# https://github.com/containerd/ttrpc-rust/pull/209
|
|
||||||
ttrpc = "=0.8.0"
|
|
||||||
async-trait = { version = "0.1.48", optional = true }
|
|
||||||
|
|
||||||
[build-dependencies]
|
|
||||||
ttrpc-codegen = "0.4"
|
|
||||||
|
|
||||||
[dev-dependencies]
|
|
||||||
ctrlc = { version = "3.0", features = ["termination"] }
|
|
||||||
log = "0.4"
|
|
||||||
simple_logger = { version = "4.0", default-features = false, features = [
|
|
||||||
"stderr",
|
|
||||||
] }
|
|
||||||
tokio = { workspace = true, features = ["full"] }
|
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = []
|
default = []
|
||||||
async = ["ttrpc/async", "async-trait"]
|
async = ["ttrpc/async", "async-trait"]
|
||||||
|
|
@ -66,3 +45,21 @@ required-features = ["async"]
|
||||||
name = "shim-proto-connect-async"
|
name = "shim-proto-connect-async"
|
||||||
path = "examples/connect-async.rs"
|
path = "examples/connect-async.rs"
|
||||||
required-features = ["async"]
|
required-features = ["async"]
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
async-trait = { version = "0.1.48", optional = true }
|
||||||
|
protobuf = "3.1"
|
||||||
|
# Quickfix to make CI green.
|
||||||
|
# 0.8.1 introduces a breaking change in the API.
|
||||||
|
# https://github.com/containerd/ttrpc-rust/pull/197
|
||||||
|
# https://github.com/containerd/ttrpc-rust/pull/209
|
||||||
|
ttrpc = "=0.8.0"
|
||||||
|
|
||||||
|
[build-dependencies]
|
||||||
|
ttrpc-codegen = "0.4"
|
||||||
|
|
||||||
|
[dev-dependencies]
|
||||||
|
ctrlc = { version = "3.0", features = ["termination"] }
|
||||||
|
log.workspace = true
|
||||||
|
simple_logger = { version = "4.0", default-features = false, features = ["stderr"]}
|
||||||
|
tokio = { workspace = true, features = ["full"] }
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,13 @@
|
||||||
[package]
|
[package]
|
||||||
name = "containerd-shim"
|
name = "containerd-shim"
|
||||||
version = "0.5.0"
|
version = "0.5.0"
|
||||||
authors = ["Maksym Pavlenko <pavlenko.maksym@gmail.com>", "The containerd Authors"]
|
authors = [
|
||||||
keywords = ["containerd", "shim", "containers"]
|
"Maksym Pavlenko <pavlenko.maksym@gmail.com>",
|
||||||
|
"The containerd Authors",
|
||||||
|
]
|
||||||
description = "containerd shim extension"
|
description = "containerd shim extension"
|
||||||
|
keywords = ["containerd", "shim", "containers"]
|
||||||
|
categories = ["api-bindings", "asynchronous"]
|
||||||
|
|
||||||
edition.workspace = true
|
edition.workspace = true
|
||||||
license.workspace = true
|
license.workspace = true
|
||||||
|
|
@ -11,7 +15,13 @@ repository.workspace = true
|
||||||
homepage.workspace = true
|
homepage.workspace = true
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
async = ["tokio", "containerd-shim-protos/async", "async-trait", "futures", "signal-hook-tokio"]
|
async = [
|
||||||
|
"async-trait",
|
||||||
|
"containerd-shim-protos/async",
|
||||||
|
"futures",
|
||||||
|
"signal-hook-tokio",
|
||||||
|
"tokio",
|
||||||
|
]
|
||||||
|
|
||||||
[[example]]
|
[[example]]
|
||||||
name = "skeleton_async"
|
name = "skeleton_async"
|
||||||
|
|
@ -22,27 +32,26 @@ name = "windows-log-reader"
|
||||||
path = "examples/windows_log_reader.rs"
|
path = "examples/windows_log_reader.rs"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
go-flag = "0.1.0"
|
|
||||||
thiserror = "1.0"
|
|
||||||
log = { version = "0.4", features = ["std"] }
|
|
||||||
libc = "0.2.95"
|
|
||||||
nix = "0.26"
|
|
||||||
lazy_static = "1.4.0"
|
|
||||||
time = { version = "0.3.7", features = ["serde", "std"] }
|
|
||||||
serde_json = "1.0.78"
|
|
||||||
serde_derive = "1.0.136"
|
|
||||||
serde = "1.0.136"
|
|
||||||
signal-hook = "0.3.13"
|
|
||||||
oci-spec = "0.6.0"
|
|
||||||
prctl = "1.0.0"
|
|
||||||
page_size = "0.6.0"
|
|
||||||
|
|
||||||
containerd-shim-protos = { path = "../shim-protos", version = "0.5.0" }
|
containerd-shim-protos = { path = "../shim-protos", version = "0.5.0" }
|
||||||
|
go-flag = "0.1.0"
|
||||||
|
lazy_static = "1.4.0"
|
||||||
|
libc.workspace = true
|
||||||
|
log = { workspace = true, features = ["std"]}
|
||||||
|
nix.workspace = true
|
||||||
|
oci-spec.workspace = true
|
||||||
|
page_size = "0.6.0"
|
||||||
|
prctl = "1.0.0"
|
||||||
|
signal-hook = "0.3.13"
|
||||||
|
serde.workspace = true
|
||||||
|
serde_json.workspace = true
|
||||||
|
thiserror.workspace = true
|
||||||
|
time.workspace = true
|
||||||
|
|
||||||
|
# Async dependencies
|
||||||
async-trait = { workspace = true, optional = true }
|
async-trait = { workspace = true, optional = true }
|
||||||
tokio = { workspace = true, features = ["full"], optional = true }
|
|
||||||
futures = { workspace = true, optional = true}
|
futures = { workspace = true, optional = true}
|
||||||
signal-hook-tokio = { version = "0.3.1", optional = true, features = ["futures-v0_3"]}
|
signal-hook-tokio = { version = "0.3.1", optional = true, features = ["futures-v0_3"]}
|
||||||
|
tokio = { workspace = true, features = ["full"], optional = true }
|
||||||
|
|
||||||
[target.'cfg(target_os = "linux")'.dependencies]
|
[target.'cfg(target_os = "linux")'.dependencies]
|
||||||
cgroups-rs = "0.2.9"
|
cgroups-rs = "0.2.9"
|
||||||
|
|
@ -51,9 +60,17 @@ cgroups-rs = "0.2.9"
|
||||||
command-fds = "0.2.1"
|
command-fds = "0.2.1"
|
||||||
|
|
||||||
[target.'cfg(windows)'.dependencies]
|
[target.'cfg(windows)'.dependencies]
|
||||||
windows-sys = {version = "0.48.0", features = ["Win32_Foundation","Win32_System_WindowsProgramming","Win32_System_Console", "Win32_System_Pipes","Win32_Security", "Win32_Storage_FileSystem", "Win32_System_Threading"]}
|
|
||||||
mio = { version = "0.8", features = ["os-ext", "os-poll"] }
|
mio = { version = "0.8", features = ["os-ext", "os-poll"] }
|
||||||
os_pipe = "1.1.3"
|
os_pipe.workspace = true
|
||||||
|
windows-sys = {version = "0.48.0", features = [
|
||||||
|
"Win32_Foundation",
|
||||||
|
"Win32_System_WindowsProgramming",
|
||||||
|
"Win32_System_Console",
|
||||||
|
"Win32_System_Pipes",
|
||||||
|
"Win32_Security",
|
||||||
|
"Win32_Storage_FileSystem",
|
||||||
|
"Win32_System_Threading",
|
||||||
|
]}
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
tempfile = "3.0"
|
tempfile = "3.6"
|
||||||
|
|
|
||||||
|
|
@ -5,9 +5,9 @@ authors = [
|
||||||
"Maksym Pavlenko <pavlenko.maksym@gmail.com>",
|
"Maksym Pavlenko <pavlenko.maksym@gmail.com>",
|
||||||
"The containerd Authors",
|
"The containerd Authors",
|
||||||
]
|
]
|
||||||
|
description = "Remote snapshotter extension for containerd"
|
||||||
keywords = ["containerd", "server", "grpc", "containers"]
|
keywords = ["containerd", "server", "grpc", "containers"]
|
||||||
categories = ["api-bindings", "asynchronous"]
|
categories = ["api-bindings", "asynchronous"]
|
||||||
description = "Remote snapshotter extension for containerd"
|
|
||||||
|
|
||||||
edition.workspace = true
|
edition.workspace = true
|
||||||
license.workspace = true
|
license.workspace = true
|
||||||
|
|
@ -15,21 +15,21 @@ repository.workspace = true
|
||||||
homepage.workspace = true
|
homepage.workspace = true
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
thiserror = "1.0"
|
|
||||||
tonic.workspace = true
|
|
||||||
prost.workspace = true
|
|
||||||
prost-types.workspace = true
|
|
||||||
tokio = { workspace = true, features = ["sync"] }
|
|
||||||
tokio-stream = "0.1.8"
|
|
||||||
serde = { version = "1.0", features = ["derive"] }
|
|
||||||
async-stream = "0.3.3"
|
async-stream = "0.3.3"
|
||||||
futures.workspace = true
|
futures.workspace = true
|
||||||
pin-utils = "0.1.0"
|
pin-utils = "0.1.0"
|
||||||
|
prost.workspace = true
|
||||||
|
prost-types.workspace = true
|
||||||
|
serde.workspace = true
|
||||||
|
thiserror.workspace = true
|
||||||
|
tonic.workspace = true
|
||||||
|
tokio = { workspace = true, features = ["sync"] }
|
||||||
|
tokio-stream = "0.1.8"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
log = "0.4"
|
|
||||||
async-stream = "0.3.2"
|
async-stream = "0.3.2"
|
||||||
futures.workspace = true
|
futures.workspace = true
|
||||||
|
log.workspace = true
|
||||||
simple_logger = { version = "4.0", default-features = false }
|
simple_logger = { version = "4.0", default-features = false }
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue