Commit Graph

38 Commits

Author SHA1 Message Date
Alex Zenla
67652a5e1b
krata xen control-plane 2024-09-16 02:03:43 -04:00
Alex Zenla
b6c726e7aa
feature(kernel): switch to linux-kernel-oci images (#364) 2024-08-26 06:18:56 +00:00
Alex Zenla
d1b910f5c4
fix(workflows): upgrade rustup on darwin as best-effort fix for homebrew regression (#284) 2024-07-25 02:15:03 -07:00
Alex Zenla
5ee1035896
feature(krata): rename guest to zone (#266) 2024-07-19 03:47:18 +00:00
Alex Zenla
9bd8d1bb1d
chore(workflows): make builds faster by only installing necessary tools (#265) 2024-07-19 02:26:26 +00:00
Alex Zenla
28d63d7d70
chore(cleanup): remove legacy OS technology demo (#256) 2024-07-17 02:02:47 +00:00
Alex Zenla
1126f1ffc9
fix(install): use /usr/sbin as install path and fix systemd dependency (#245) 2024-07-12 06:49:02 +00:00
Khionu Sybiern
88a62441b1
Initial fluentd support (#205)
* fix(hack): use sudo -E when running Rust binaries

This makes it possible to pass envvars to the Krata runtime

* feat(o11y): add fluent sink to logs

This change adds fluent logging as an opt-in feature. Setting
`KRATA_LOG_FLUENT` with an address:port will start a TCP connection,
sending logs.

A later changes will respect a URI scheme and use structured logging.
2024-06-25 19:10:57 +00:00
Alex Zenla
9a45d754bf
chore(xenplatform): elf loader should async load the file (#197)
* fix(build): remove unused environment variables

* chore(xenplatform): elf loader should async load the file
2024-06-23 12:57:01 +00:00
Alex Zenla
23c7302c04
docs: first pass of krata as an isolation engine 2024-06-20 19:57:18 -07:00
Alex Zenla
94790ce7dc
fix(build): kernel fetch should use host target (#159) 2024-05-16 18:13:04 +00:00
Alex Zenla
023063327f
fix(build): use host resolv.conf in os build chroot (#153)
The resolv.conf that the stage1 os script generates is fine for actual use,
but our GitHub workflows now uses the Step Security hardened runner action.
This action replaces the nameserver so that all lookups go through that,
but because the chroot calls apk add, it needs to contact the internet.
On the GitHub workflows, the OS build currently fails since the hardened
runner cannot access other nameservers.
2024-05-16 08:41:42 +00:00
Alex Zenla
d46aa878af
feat(build): fetch kernels from image registry instead of building the kernel (#156)
Now that we have the kernel build infrastructure at https://github.com/edera-dev/kernels
it makes sense to drop building the kernel and download the kernel images directly.

This change introduces a ./hack/kernel/fetch.sh script which is backed by crates/build
We utilize the OCI infrastructure itself to download the kernel image. The DEV guide
has been updated to include calling the fetch script, and the OS builder now uses this
method instead. Due to the lack of need for the kernel build infra to exist here now,
it has also been removed. This should significantly speed up full builds.

This change will also enable us to turn on os build workflows for all PRs. We should
likely make the OS status checks required once this is merged.
2024-05-16 08:40:58 +00:00
Alex Zenla
485f6e8319
chore(kernel): upgrade to kernel 6.8.9 (#143) 2024-05-10 17:30:06 +00:00
Alex Zenla
84920a88ab
feat: pci passthrough (#114)
* feat: pci passthrough

* feat: guest device management

* feat: addons mounting and kernel modules support

* feat: more pci work

* fix: kernel build squashfs fixes

* fix: e820entry should be available on all platforms
2024-04-29 17:02:20 +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
Ariadne Conill
6cef03bffa
debug: common: run programs in a way that is compatible with alpine doas-sudo-shim (#53)
doas sudo shim (as used by Alpine) does not support passing through environment variables
in the same way that sudo does, therefore use `sh -c` instead.

Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2024-04-12 09:20:34 +00:00
Ariadne Conill
f41a1e2168
build: target: use alpine rust triplets when building on alpine (#49)
Signed-off-by: Ariadne Conill <ariadne@ariadne.space>
2024-04-12 08:40:44 +00:00
Alex Zenla
7cfdb27d23
chore(workflows): fix release asset assembly for alpine/debian packages (#40) 2024-04-09 04:45:36 -07:00
Alex Zenla
7c55e63f24
chore: implement automatic releases 2024-04-02 23:50:45 +00:00
Alex Zenla
66465793cd
krata: event-based network backend startup and api enhancements 2024-03-27 02:54:39 +00:00
Alex Zenla
3d5095c78b
krata: reconcile improvements and better kratactl error experience 2024-03-23 07:00:12 +00:00
Alex Zenla
f854dfe77a
kratactl: freebsd build 2024-03-22 04:41:38 +00:00
Alex Zenla
901ec3b6e5
kratactl: fix windows build 2024-03-21 20:04:10 -07:00
Alex Zenla
a3a2148002
kratactl: initial windows bringup 2024-03-21 19:54:14 -07:00
Alex Zenla
b5f1d9edb0
build: consider x86_64 on aarch64 darwin to not be a cross-compile 2024-03-21 18:39:06 -07:00
Alex Zenla
55958c514b
krata: fix darwin builds of kratactl 2024-03-21 18:20:02 -07:00
Alex Zenla
597a1433b3
krata: build kratactl for darwin 2024-03-21 18:16:04 -07:00
Alex Zenla
387cce061b
ci: install aarch64 gcc 2024-03-21 21:44:37 +00:00
Alex Zenla
7ec0ed64dd
ci: install cross from git 2024-03-21 21:38:18 +00:00
Alex Zenla
0191e5b2c1
krata: rework cross-compilation 2024-03-21 21:31:10 +00:00
Alex Zenla
9bbf8420f2
krata: implement guest reconciliation 2024-03-14 14:03:11 +00:00
Alex Zenla
7a9a9abd66
workflows: install os builder dependencies 2024-03-10 12:17:09 +00:00
Alex Zenla
d54d14c619
os: fix build 2024-03-10 11:39:06 +00:00
Alex Zenla
a54fa93394
os: fix non-interactive builds 2024-03-10 04:00:44 -07:00
Alex Zenla
f1eedd1667
workflows: upload os images on build 2024-03-10 00:28:53 +00:00
Alex Zenla
4894bd9d1c
os: build bootable images 2024-03-10 00:22:24 +00:00
Alex Zenla
e3a70e5595
hack: rename scripts to hack 2024-03-07 16:40:41 +00:00