Skip to content

Add scripts for python3.10-http-server#89

Open
elisaarghir wants to merge 1 commit into
unikraft:scriptsfrom
elisaarghir:scripts/python3.10-http-server
Open

Add scripts for python3.10-http-server#89
elisaarghir wants to merge 1 commit into
unikraft:scriptsfrom
elisaarghir:scripts/python3.10-http-server

Conversation

@elisaarghir
Copy link
Copy Markdown

Add scripts/ directory:

  • build/.: scripts for building the Python 3.10 HTTP Server unikernel image using the corresponding defconfig.

  • defconfig/.: minimal Unikraft configuration files for each platform and architecture.

  • run/.: scripts for running Unikraft images, including rootfs generation from Dockerfile and packing into initrd.cpio.

  • README.md: accompanying document with instructions for the automation scripts.

@elisaarghir elisaarghir force-pushed the scripts/python3.10-http-server branch 3 times, most recently from 0e0dad6 to 5bc004b Compare December 29, 2025 20:29
- build/: scripts for building the image using defconfigs.
- defconfig/: minimal Unikraft configuration files.
- run/: scripts for running images and rootfs generation.
- README.md: instructions for the automation scripts.

Signed-off-by: Arghir Elisa-Elena <arghirelisaelena@gmail.com>
@elisaarghir elisaarghir force-pushed the scripts/python3.10-http-server branch from 5bc004b to 28b0f1e Compare December 29, 2025 21:08
@razvand razvand requested a review from george17c March 1, 2026 07:09
@razvand razvand self-assigned this Mar 1, 2026
@razvand razvand added the enhancement New feature or request label Mar 1, 2026
Copy link
Copy Markdown

@george17c george17c left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are some minor issues that can go unnoticed easily, so please refer to my comments.

In order to know the correct CONFIG_* options to include in a defconfig, you need to open the configuration menu with make menuconfig and search for each option individually (by pressing /).

@@ -0,0 +1,13 @@
CONFIG_ARCH_ARM64=y
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The configuration option should be CONFIG_ARCH_ARM_64, with the underscore.
CONFIG_ARCH_ARM64 is invalid, so the build defaults to x86_64.

Also, add the line CONFIG_PLAT_KVM=y after this one, a target platform should always be selected.

@@ -0,0 +1,13 @@
CONFIG_ARCH_ARM64=y
CONFIG_PLAT_FC=y
Copy link
Copy Markdown

@george17c george17c Mar 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be CONFIG_KVM_VMM_FIRECRACKER.
CONFIG_PLAT_FC is invalid.

@@ -0,0 +1,14 @@
CONFIG_ARCH_X86_64=y
CONFIG_PLAT_KVM=y
CONFIG_KVM_PLAT_FC=y
Copy link
Copy Markdown

@george17c george17c Mar 24, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same thing here, replace with CONFIG_KVM_VMM_FIRECRACKER.

@@ -0,0 +1,13 @@
CONFIG_ARCH_ARM64=y
CONFIG_PLAT_FC=y
CONFIG_APPPYHTON3_HTTP_SERVER=y
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix this typo: PYTHON instead of PYHTON.

@@ -0,0 +1,13 @@
CONFIG_ARCH_ARM64=y
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add the underscore here: ARM_64.

@@ -0,0 +1,13 @@
CONFIG_ARCH_ARM64=y
CONFIG_PLAT_XEN=y
CONFIG_APP_PYHTON3_HTTP_SERVER=y
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix this typo and remove the underscore between APP and PYTHON3.
It should be CONFIG_APPPYTHON3_HTTP_SERVER.

@@ -0,0 +1,13 @@
CONFIG_ARCH_X86_64=y
CONFIG_PLAT_XEN=y
CONFIG_APP_PYHTON3_HTTP_SERVER=y
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fix this typo and remove the underscore.

@@ -0,0 +1,13 @@
CONFIG_ARCH_ARM64=y
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add the underscore here: ARM_64.

CONFIG_LIBRAMFS=y
CONFIG_LIBUKCPIO=y
CONFIG_LIBLWIP=y
CONFIG_LIBUKRANDOM=y
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should also include the line: CONFIG_LIBUKRANDOM_LCPU=y to activate cpu randomness. This option ends up already selected for qemu and firecracker without explicitly having it in their defconfig, I'm not sure why.

CONFIG_LIBRAMFS=y
CONFIG_LIBUKCPIO=y
CONFIG_LIBLWIP=y
CONFIG_LIBUKRANDOM=y
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same thing, include CONFIG_LIBUKRANDOM_LCPU=y.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants