Commit Graph
36 Commits
Author SHA1 Message Date
alex d1b910f5c4 fix(workflows): upgrade rustup on darwin as best-effort fix for homebrew regression (#284) 2024-07-25 02:15:03 -07:00
alex 5ee1035896 feature(krata): rename guest to zone (#266) 2024-07-19 03:47:18 +00:00
alex 9bd8d1bb1d chore(workflows): make builds faster by only installing necessary tools (#265) 2024-07-19 02:26:26 +00:00
alex 28d63d7d70 chore(cleanup): remove legacy OS technology demo (#256) 2024-07-17 02:02:47 +00:00
alex 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 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 23c7302c04 docs: first pass of krata as an isolation engine 2024-06-20 19:57:18 -07:00
alex 94790ce7dc fix(build): kernel fetch should use host target (#159) 2024-05-16 18:13:04 +00:00
alex 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 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 485f6e8319 chore(kernel): upgrade to kernel 6.8.9 (#143) 2024-05-10 17:30:06 +00:00
alex 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 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 <[email protected]>
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 <[email protected]>
2024-04-12 08:40:44 +00:00
alex 7cfdb27d23 chore(workflows): fix release asset assembly for alpine/debian packages (#40) 2024-04-09 04:45:36 -07:00
alex 7c55e63f24 chore: implement automatic releases 2024-04-02 23:50:45 +00:00
alex 66465793cd krata: event-based network backend startup and api enhancements 2024-03-27 02:54:39 +00:00
alex 3d5095c78b krata: reconcile improvements and better kratactl error experience 2024-03-23 07:00:12 +00:00
alex f854dfe77a kratactl: freebsd build 2024-03-22 04:41:38 +00:00
alex 901ec3b6e5 kratactl: fix windows build 2024-03-21 20:04:10 -07:00
alex a3a2148002 kratactl: initial windows bringup 2024-03-21 19:54:14 -07:00
alex b5f1d9edb0 build: consider x86_64 on aarch64 darwin to not be a cross-compile 2024-03-21 18:39:06 -07:00
alex 55958c514b krata: fix darwin builds of kratactl 2024-03-21 18:20:02 -07:00
alex 597a1433b3 krata: build kratactl for darwin 2024-03-21 18:16:04 -07:00
alex 387cce061b ci: install aarch64 gcc 2024-03-21 21:44:37 +00:00
alex 7ec0ed64dd ci: install cross from git 2024-03-21 21:38:18 +00:00
alex 0191e5b2c1 krata: rework cross-compilation 2024-03-21 21:31:10 +00:00
alex 9bbf8420f2 krata: implement guest reconciliation 2024-03-14 14:03:11 +00:00
alex 7a9a9abd66 workflows: install os builder dependencies 2024-03-10 12:17:09 +00:00
alex d54d14c619 os: fix build 2024-03-10 11:39:06 +00:00
alex a54fa93394 os: fix non-interactive builds 2024-03-10 04:00:44 -07:00
alex f1eedd1667 workflows: upload os images on build 2024-03-10 00:28:53 +00:00
alex 4894bd9d1c os: build bootable images 2024-03-10 00:22:24 +00:00
alex e3a70e5595 hack: rename scripts to hack 2024-03-07 16:40:41 +00:00