From f1eedd166790fc53034f41b0b7a5f4fef2dbb7d8 Mon Sep 17 00:00:00 2001 From: Alex Zenla Date: Sun, 10 Mar 2024 00:28:53 +0000 Subject: [PATCH] workflows: upload os images on build --- .github/workflows/os.yml | 8 ++++++++ hack/os/build.sh | 20 ++++++++++++-------- 2 files changed, 20 insertions(+), 8 deletions(-) diff --git a/.github/workflows/os.yml b/.github/workflows/os.yml index 421bedd..1f20dbd 100644 --- a/.github/workflows/os.yml +++ b/.github/workflows/os.yml @@ -3,9 +3,11 @@ on: push: paths: - "os/**" + - "hack/os/**" pull_request: paths: - "os/**" + - "hack/os/**" jobs: build: name: build @@ -16,3 +18,9 @@ jobs: - run: ./hack/os/build.sh env: KRATA_KERNEL_BUILD_JOBS: "5" + - uses: actions/upload-artifact@v4 + with: + name: krata-os-x86_64 + path: "target/os/krata.qcow2" + compression-level: 0 + \ No newline at end of file diff --git a/hack/os/build.sh b/hack/os/build.sh index 56f41bf..2494b3a 100755 --- a/hack/os/build.sh +++ b/hack/os/build.sh @@ -16,14 +16,18 @@ docker run --rm --privileged -v "${PWD}:/mnt" -it alpine:latest "/mnt/os/interna sudo chown "${USER}:${GROUP}" "${TARGET_OS_DIR}/rootfs.tgz" sudo modprobe nbd -NBD_DEVICE="$(find /dev -maxdepth 2 -name 'nbd[0-9]*' | while read -r DEVICE -do - if [ "$(sudo blockdev --getsize64 "${DEVICE}")" = "0" ] - then - echo "${DEVICE}" - break - fi -done)" +next_nbd_device() { + find /dev -maxdepth 2 -name 'nbd[0-9]*' | while read -r DEVICE + do + if [ "$(sudo blockdev --getsize64 "${DEVICE}")" = "0" ] + then + echo "${DEVICE}" + break + fi + done +} + +NBD_DEVICE="$(next_nbd_device)" if [ -z "${NBD_DEVICE}" ] then