Commit Graph

392 Commits

Author SHA1 Message Date
Phil Estes 2d47d88f13 Add a to_any helper in the containerd client crate
This provides a solution to Any->type matching that happens on
the containerd Go-based server side where the Any types in prost
use typeurl as defined in the protobuf spec and the server side
is matching on the fullname property of the type.

Signed-off-by: Phil Estes <estesp@amazon.com>
2025-01-16 20:44:01 +00:00
Maksym Pavlenko 2cb7714e76 Fix CI
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2025-01-16 19:22:09 +00:00
jokemanfire a345bac309 OpenOptions in blocking mod is a time-consuming operation.
1.Prevent it from blocking a tokio thread. Change sync to async.
2.Add pipe unit test which I found error in Pipe new.

Signed-off-by: jokemanfire <hu.dingyang@zte.com.cn>
2025-01-09 02:57:43 +00:00
Phil Estes 41d2ded16a Add mod for transfer types
Makes the transfer types available in containerd_client imports

Signed-off-by: Phil Estes <estesp@amazon.com>
2025-01-08 19:50:56 +00:00
Maksym Pavlenko 95964f295e
Bump containerd client to 0.7.0
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2025-01-08 10:43:30 -08:00
Maksym Pavlenko ce05587af2 Update vendor
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2025-01-08 18:31:52 +00:00
Maksym Pavlenko bd5dd4fcbd
Remove unused fields
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2025-01-06 10:58:59 -08:00
jokemanfire feac9615e1 Fix publisher debug info is not correct
In the containerd log, it is not print correct
2025-01-06 10:52:50 -08:00
Maksym Pavlenko 314e384806
Fix unused fields on MacOS
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2025-01-06 10:50:54 -08:00
Maksym Pavlenko 346b82e673
Fix unused fields on Mac
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-12-31 15:09:58 -08:00
Maksym Pavlenko e27decc5ba
Fix clippy
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-12-31 14:33:44 -08:00
jokemanfire 4133fef4c0 Optimize: refine the scope of the lock.
We can discard the lock before reporting the incident.According to Goshim.

Signed-off-by: jokemanfire <hu.dingyang@zte.com.cn>
2024-12-15 03:25:25 +00:00
jokemanfire a0f3bf13a1 Attemp to resolve fifo open deadlock
If long time no read side , may cause shim lock.
Avoid fifo open deadlock,use a easy timeout

Signed-off-by: jokemanfire <hu.dingyang@zte.com.cn>
2024-12-13 20:04:38 +00:00
jokemanfire 6526c28e87 Prevent the init process from exiting and continuing with start
No need to wait for runc return an error

Signed-off-by: jokemanfire <hu.dingyang@zte.com.cn>
2024-12-13 20:02:50 +00:00
jokemanfire eef8806871 fix process exit (not init) event not publish
1.add get id interface in process
2.add process event publish in service

Signed-off-by: jokemanfire <hu.dingyang@zte.com.cn>
2024-12-11 20:10:31 +00:00
fengwei0328 1e17e1495e The task_dir successfully cleans when the file is absent
Signed-off-by: fengwei0328 <feng.wei8@zte.com.cn>
2024-12-06 18:54:16 +00:00
zzzzzzzzzy9 7051e312f5 if init is paused/pausing, exec state should be the same 2024-12-04 21:57:39 +00:00
ningmingxiao 8029a61a2b fix leftover shim processes 2024-12-03 23:34:03 +00:00
jokemanfire c6b623cb8b Attempt to change mutex to rwlock
In high concurrency environments, some operations are read-only and do not require mutex write locks.

Signed-off-by: jokemanfire <hu.dingyang@zte.com.cn>
2024-12-03 23:33:04 +00:00
adsick 3044a44363 `with_namespace!`: fix formatting and accept `expr` instead of `ident` 2024-12-03 22:40:50 +00:00
Jiaxiao Zhou (Mossaka) f87972b9b0 runc/src/io: added the missing imports to unit tests
Signed-off-by: Jiaxiao Zhou (Mossaka) <duibao55328@gmail.com>
2024-12-03 17:58:52 +00:00
Jiaxiao Zhou (Mossaka) 474db59c81 runc/src/io: expose Io as a public API
Signed-off-by: Jiaxiao Zhou (Mossaka) <duibao55328@gmail.com>
2024-12-03 17:58:52 +00:00
Jiaxiao Zhou (Mossaka) b7de553f9e runc/Cargo: add the missing os_pipe dependency
Signed-off-by: Jiaxiao Zhou (Mossaka) <duibao55328@gmail.com>
2024-12-03 17:58:52 +00:00
jiaxiao zhou 7efe8d8390 runc: split Pipe, Io, and PipedIo to async and sync modules
Signed-off-by: jiaxiao zhou <duibao55328@gmail.com>
2024-12-03 17:58:52 +00:00
jokemanfire 6d496ef7fa In delete: Process not found should not return ok
Compatible with goshim

Signed-off-by: jokemanfire <hu.dingyang@zte.com.cn>
2024-11-19 19:31:22 +00:00
Christos Katsakioris ac89daa9b1 snapshots: Add handy `Clone`, `Copy` derivations
Derive `Clone` for `Info`, as well as both `Clone` and `Copy` for `Kind`
and `Usage`, which allows for convenient manipulation of these types.

Signed-off-by: Christos Katsakioris <ckatsak@gmail.com>
2024-11-13 21:41:08 +00:00
jiaxiao zhou 857ace0e3f crates/runc: removed unused dep
Signed-off-by: jiaxiao zhou <duibao55328@gmail.com>
2024-11-06 18:26:42 +00:00
jiaxiao zhou a665cfcfc0 client, snapshots/Cargo.toml: Ignore `prost` in cargo-machete metadata
Signed-off-by: jiaxiao zhou <duibao55328@gmail.com>
2024-11-06 18:26:42 +00:00
Lei Liu 2689bbf250 Ignore notFound error when collect from pid cgroup
When `pids.current` or `pids.max` not exist in cgroup root
(/sys/fs/cgroup/pids/) collect_metrics will print out error level
log "...unable to read a control group file /sys/fs/cgroup/pids/./
pids.current..." continually, this commit will ignore these not
found errors.

As a supplement,if or not set pids.current file in cgroup controller
root directory decided by `CFTYPE_NOT_ON_ROOT` flag, in many commen
environment it is default to enabled. And as a contrast, go version
code will ignore all not found error when collect cgroupv1 metrics:
b67a788072/runtime/v2/runc/task/service.go (L625)

Co-authored-by: Yukiteru <wfly1998@gmail.com>

Signed-off-by: Lei Liu <liulei.pt@bytedance.com>
2024-11-05 19:33:58 +00:00
yummyMax 7c01662306 change socket path
Some containerd test use shim.SocketAddress directly.
So for Goshim-compatible socket path

Signed-off-by: yummyMax <yu.sihui@zte.com.cn>
2024-10-30 23:15:24 +00:00
jokemanfire 6cb625da04 <rshim>Improve the events report
1.add timeout in ctx
2.add queue in publisher report
3.add reconnect client method
2024-10-30 23:14:55 +00:00
zzzzzzzzzy9 792c2e619e shim: Implement the pause and resume interfaces 2024-10-30 16:53:26 +00:00
Lei Liu c22dba6201 fix: remove meaningless input from other_error macro
Signed-off-by: Lei Liu <liulei.pt@bytedance.com>
2024-10-30 00:05:16 +00:00
ningmingxiao a6b4286542 fix os_pipe doesn't work with async IO 2024-10-21 23:04:57 +00:00
Maksym Pavlenko 304d67069b Bump client to 0.6.0
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-10-07 11:35:55 -07:00
Bryant Biggs 3f541b9454 fix: All unused re-export to pass clippy 2024-10-05 14:55:48 +00:00
Bryant Biggs da4d1f48bf fix: Replace `tonic` deprecated methods to fix clippy warnings 2024-10-05 14:55:48 +00:00
Bryant Biggs ece6516da5 fix: Switch `write` to `write_all` to consume 2024-10-05 14:55:48 +00:00
Bryant Biggs 6f2812f4b8 fix: Correct lint warnings, bump toolchain version due to `cargo::key=value` build directive which is reserved for future use 2024-10-05 14:55:48 +00:00
Bryant Biggs fb4cb85d66 chore: Run `cargo fmt` 2024-10-05 14:55:48 +00:00
Bryant Biggs 2265428508 Update lib.rs
Co-authored-by: James Sturtevant <jsturtevant@gmail.com>
Signed-off-by: Bryant Biggs <bryantbiggs@gmail.com>
2024-10-05 14:55:48 +00:00
Bryant Biggs 81f51386f0 chore: Revert change to windows target 2024-10-05 14:55:48 +00:00
Bryant Biggs ece15e9275 fix: Windows client is not awaitable 2024-10-05 14:55:48 +00:00
Bryant Biggs 2050c857d6 chore: Update `tonic` and `prost` dependencies to latest 2024-10-05 14:55:48 +00:00
Maksym Pavlenko 4b8bd82ea9 Bump shim protos and fix dependencies
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-10-04 11:57:47 -07:00
Maksym Pavlenko 4e60e8a6fa Bump containerd shim to 0.7.4
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-10-04 11:30:19 -07:00
jiaxiao zhou 15f51b0899 crates/shim-protos/Cargo: relex version requirement for protobuf
Signed-off-by: jiaxiao zhou <duibao55328@gmail.com>
2024-10-04 17:40:53 +00:00
Maksym Pavlenko 202c756d26 Fix shim dependency to shim-protos and bump to 0.7.3
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-10-03 11:50:13 -07:00
Maksym Pavlenko 32f8deb6e4 Bump shim-protos to 0.7.1 and shim to 0.7.2
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-10-03 11:26:35 -07:00
Maksym Pavlenko 06156f88c8 Pin ttrpc version
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-10-03 18:11:07 +00:00