Commit Graph

138 Commits

Author SHA1 Message Date
Alex Zenla
e450ebd2a2
feat: oci tar format, bit-perfect disk storage for config and manifest, concurrent image pulls (#88)
* oci: retain bit-perfect copies of manifest and config on disk

* feat: oci tar format support

* feat: concurrent image pulls
2024-04-16 08:53:44 +00:00
edera-cultivation[bot]
218f848170
chore: release (#41)
Signed-off-by: edera-cultivation[bot] <165992271+edera-cultivation[bot]@users.noreply.github.com>
Co-authored-by: edera-cultivation[bot] <165992271+edera-cultivation[bot]@users.noreply.github.com>
2024-04-15 19:15:00 +00:00
Alex Zenla
89055ef77c
feat: oci compliance work (#85)
* chore: rework oci crate to be more composable

* feat: image pull is now internally explicit

* feat: utilize vfs for assembling oci images

* feat: rework oci to preserve permissions via a vfs
2024-04-15 17:24:14 +00:00
Alex Zenla
24c71e9725
feat: oci packer can now use mksquashfs if available (#70)
* feat: oci packer can now use mksquashfs if available

* fix: use nproc in kernel build script for default jobs, and fix DEV.md guide

* feat: working erofs backend
2024-04-15 00:19:38 +00:00
Alex Zenla
0a6a112133
feat: basic kratactl top command (#72)
* feat: basic kratactl top command

* fix: use magic bytes 0xff 0xff in idm to improve reliability
2024-04-14 22:32:34 +00:00
Alex Zenla
1627cbcdd7
feat: idm snooping (#71)
Implement IDM snooping, a new feature that lets you snoop on messages between guests and the host. The feature exposes the IDM packets send and receives
to the API, allowing kratactl to now listen for messages and feed them to a user for debugging purposes.
2024-04-14 11:54:21 +00:00
Alex Zenla
6d07112e3d
feat: implement oci image progress (#64)
* feat: oci progress events

* feat: oci progress bars on launch
2024-04-12 18:09:26 +00:00
Ariadne Conill
73fd95dbe2
guest: init: default to xterm if TERM is not set (#52)
Most terminal emulators support the xterm control codes more faithfully than the
vt100 ones.

Fixes #51.

Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2024-04-12 08:52:18 +00:00
Alex Zenla
5e16f3149f
feat: guest metrics support (#46)
* feat: initial support for idm send in daemon

* feat: implement IdmClient backend support

* feat: daemon idm now uses IdmClient

* fix: implement channel destruction propagation

* feat: implement request response idm system

* feat: implement metrics support

* proto: move metrics into GuestMetrics for reusability

* fix: log level of guest agent was trace

* feat: metrics tree with process information
2024-04-12 07:34:46 +00:00
edera-cultivation[bot]
6050e99aa7
chore: release (#39)
Co-authored-by: edera-cultivation[bot] <165992271+edera-cultivation[bot]@users.noreply.github.com>
2024-04-09 11:47:58 +00:00
edera-cultivation[bot]
87c4d7b0c3
chore: release (#37)
Co-authored-by: edera-cultivation[bot] <165992271+edera-cultivation[bot]@users.noreply.github.com>
2024-04-09 11:06:22 +00:00
edera-cultivation[bot]
dedc514944
chore: release (#33)
Signed-off-by: edera-cultivation[bot] <165992271+edera-cultivation[bot]@users.noreply.github.com>
Co-authored-by: edera-cultivation[bot] <165992271+edera-cultivation[bot]@users.noreply.github.com>
2024-04-09 02:50:52 -07:00
Alex Zenla
9c0597157b
fix: increase channel acquisition timeout to support lower performance hosts (#36) 2024-04-09 02:36:22 -07:00
edera-cultivation[bot]
a509f69398
chore: release (#24)
Signed-off-by: edera-cultivation[bot] <165992271+edera-cultivation[bot]@users.noreply.github.com>
Co-authored-by: edera-cultivation[bot] <165992271+edera-cultivation[bot]@users.noreply.github.com>
2024-04-08 22:12:38 -07:00
Alex Zenla
f2ab03711e
feat(ctl): add help and about to commands and arguments (#25) 2024-04-06 00:00:02 +00:00
github-actions[bot]
f59976eb80
chore: release (#16)
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-03 00:27:16 +00:00
Alex Zenla
7c55e63f24
chore: implement automatic releases 2024-04-02 23:50:45 +00:00
Alex Zenla
5ad2e40a7b
krata: reimplement console to utilize channels, and provide logs support 2024-04-02 08:57:34 +00:00
Alex Zenla
0fd6318c5f
xenstore: use read thread to avoid need for non-blocking I/O 2024-04-02 03:02:00 +00:00
Alex Zenla
8dd3cc7692
krata: work on parallel reconciliation 2024-04-02 00:56:18 +00:00
Alex Zenla
6bf1d3f88c
krata: implement parallel guest reconciliation 2024-03-31 10:10:06 +00:00
Alex Zenla
377b837db9
guest: set hostname from launch config 2024-03-31 03:18:56 +00:00
Alex Zenla
6cd8cc12db
guest: remove device restriction 2024-03-31 02:33:58 +00:00
Alex Zenla
c68f367e4a
krata: log when a guest start failures occurs 2024-03-31 01:44:28 +00:00
Alex Zenla
15d5ed5a45
krata: implement event stream retries 2024-03-31 01:11:50 +00:00
Alex Zenla
693d62a41a
guest: setup loopback interface 2024-03-30 23:46:01 +00:00
Alex Zenla
8ec7042ea4
guest: place running tasks in cgroup 2024-03-30 23:25:00 +00:00
Alex Zenla
7e9bc4b910
krata: release v0.0.3 2024-03-30 09:37:54 +00:00
Alex Zenla
71dcaa7b77
daemon: rework to not use protobuf inside the crate 2024-03-30 09:29:03 +00:00
Alex Zenla
660b555be7
krata: bump to v0.0.2 2024-03-30 08:42:48 +00:00
Alex Zenla
03294f2ecd
Revert "Release krata v0.0.1, krata-oci v0.0.1, krata-xenstore v0.0.1, krata-guest v0.0.1, krata-xencall v0.0.1, krata-xenclient v0.0.1, krata-xenevtchn v0.0.1, krata-xengnt v0.0.1, krata-runtime v0.0.1, krata-daemon v0.0.1, krata-network v0.0.1, krata-ctl v0.0.1"
This reverts commit efba8b1316.
2024-03-30 08:32:35 +00:00
Alex Zenla
efba8b1316
Release krata v0.0.1, krata-oci v0.0.1, krata-xenstore v0.0.1, krata-guest v0.0.1, krata-xencall v0.0.1, krata-xenclient v0.0.1, krata-xenevtchn v0.0.1, krata-xengnt v0.0.1, krata-runtime v0.0.1, krata-daemon v0.0.1, krata-network v0.0.1, krata-ctl v0.0.1 2024-03-30 08:27:20 +00:00
Alex Zenla
ee639af2ed
krata: fix workspace version references and feature discrepancies 2024-03-30 07:56:22 +00:00
Alex Zenla
2d5d819290
daemon: fix build 2024-03-30 07:33:47 +00:00
Alex Zenla
6ff5a1e62f
krata: move protos back into crate directory 2024-03-30 07:20:43 +00:00
Alex Zenla
b9d2dc54ea
krata: specify descriptions, licenses, repository, and homepage for crates 2024-03-30 07:11:14 +00:00
Alex Zenla
eb20a4c60c
krata: use krata-advmac fork 2024-03-30 06:51:16 +00:00
Alex Zenla
a9c6fa2c6a
oci: switch to krata-tokio-tar 2024-03-30 06:31:22 +00:00
Alex Zenla
bdb91a6cb3
krata: restructure packages for cleanliness 2024-03-30 06:21:34 +00:00
Alex Zenla
da9e6cac14
krata: fix guest destruction 2024-03-30 03:49:13 +00:00
Alex Zenla
d659b3aa55
network: performance tuning using tear off buffers 2024-03-29 03:09:41 +00:00
Alex Zenla
7d7da1f9ee
krata: implement idm support for guest <-> host messages 2024-03-28 22:38:21 +00:00
Alex Zenla
567fcc296e
kratart: fix channels after u32::MAX worth of data 2024-03-28 08:55:59 +00:00
Alex Zenla
f7267e4f5d
krata: begin work on idm channel 2024-03-28 07:36:48 +00:00
Alex Zenla
63f7db6cf4
kratart: support for krata channels for two-way byte communication 2024-03-28 05:31:57 +00:00
Alex Zenla
d4f1ee5521
krata: begin work on guest message channel 2024-03-27 06:28:47 +00:00
Alex Zenla
66465793cd
krata: event-based network backend startup and api enhancements 2024-03-27 02:54:39 +00:00
Alex Zenla
63c0feb053
krataoci: improve performance of squashify 2024-03-25 09:39:06 +00:00
Alex Zenla
162579f100
xengnt: implement memory mapping support 2024-03-25 07:24:25 +00:00
Alex Zenla
0a5948aa50
xen: begin work on xen grant mappings 2024-03-25 04:49:57 +00:00
Alex Zenla
001409378e
chore: move kratart::image to krataoci and cleanup dependencies 2024-03-25 02:37:02 +00:00
Alex Zenla
655b8029cb
krata: move api proto to /proto and version api 2024-03-24 05:52:25 +00:00
Alex Zenla
cb6839b0f6
krata: api cleanup and improvements 2024-03-24 05:25:48 +00:00
Alex Zenla
7543fccfaf
kratactl: make things nicer to use from a scripting standpoint 2024-03-23 10:09:00 +00:00
Alex Zenla
e25cbf087d
kratactl: implement guest resolution and rename console to attach 2024-03-23 09:48:53 +00:00
Alex Zenla
7b2de22320
krata: rework xenstore watch for reliability 2024-03-23 08:46:20 +00:00
Alex Zenla
3d5095c78b
krata: reconcile improvements and better kratactl error experience 2024-03-23 07:00:12 +00:00
Alex Zenla
df90a4d03f
kratad: filter out backhand info logging 2024-03-23 04:36:21 +00:00
Alex Zenla
f679781545
krata: default log level is now info 2024-03-23 04:31:35 +00:00
Alex Zenla
6c0e14da6a
kratactl: implement output formats 2024-03-23 04:07:48 +00:00
Alex Zenla
3b5e3a077a
krata: improve guest reconciliation 2024-03-23 02:10:30 +00:00
Alex Zenla
8b57c16f0a
krata: fix conformance to container startup 2024-03-22 23:59:02 +00:00
Alex Zenla
6d6610ca2f
krata: fix support for registries with anonymous authentication 2024-03-22 19:57:56 +00:00
Alex Zenla
1a6287893e
kratart: fix multiple oci layer compiler issues 2024-03-22 19:14:27 +00:00
Alex Zenla
79ceb4851b
krata: fix console restoration 2024-03-21 22:49:37 -07:00
Alex Zenla
a3a2148002
kratactl: initial windows bringup 2024-03-21 19:54:14 -07:00
Alex Zenla
597a1433b3
krata: build kratactl for darwin 2024-03-21 18:16:04 -07:00
Alex Zenla
ba00889efb
kratanet: fix unused value warning 2024-03-21 22:14:43 +00:00
Alex Zenla
0191e5b2c1
krata: rework cross-compilation 2024-03-21 21:31:10 +00:00
Alex Zenla
332a1bba26
krata: fix x86 after arm64 work 2024-03-21 18:03:47 +00:00
Alex Zenla
da17805824
Merge remote-tracking branch 'origin/arm64' 2024-03-21 17:58:12 +00:00
Alex Zenla
48123166fe
krata: implement fast exit code notification 2024-03-15 17:36:26 +00:00
Alex Zenla
e3aa54edea
krata: fix exit status when guest exit happens during attach 2024-03-15 16:11:35 +00:00
Alex Zenla
d66b6f80b9
kratactl: rework to separate commands 2024-03-15 15:59:18 +00:00
Alex Zenla
31a43f9108
krata: improvements to event handling during reconciliation 2024-03-14 23:29:07 +00:00
Alex Zenla
9bbf8420f2
krata: implement guest reconciliation 2024-03-14 14:03:11 +00:00
Alex Zenla
32a1a36ad4
krata: fix support for oci-archive style tars in image seeding 2024-03-13 15:13:20 +00:00
Alex Zenla
5c7f81a261
krata: more work on arm64 support 2024-03-13 07:48:20 -07:00
Alex Zenla
7d65f9d24c
krata: implement image seeding backend 2024-03-13 14:20:22 +00:00
Alex Zenla
f23d84c415
krata: implement guest tab for automatic guest startup 2024-03-13 13:05:17 +00:00
Alex Zenla
f4af71cb2f
krata: begin working on arm64 support 2024-03-13 04:47:28 -07:00
Alex Zenla
13bea70c0d
krata: implement auto-exit handling 2024-03-13 11:35:21 +00:00
Alex Zenla
4894bd9d1c
os: build bootable images 2024-03-10 00:22:24 +00:00
Alex Zenla
817509bcef
kratart: async image extraction 2024-03-08 14:44:45 +00:00
Alex Zenla
b0bd931f0e
xenstore: use AsRef<str> for path and restructure 2024-03-08 13:08:59 +00:00
Alex Zenla
7507f17d99
control: introduce protocol for alternative image specs 2024-03-08 08:47:18 +00:00
Alex Zenla
277c57a938
krata: remove unused dependencies 2024-03-07 18:26:28 +00:00
Alex Zenla
7bc0c95f00
krata: reorganize crates 2024-03-07 18:12:47 +00:00