Add scripts for python3.10-http-server#89
Conversation
0e0dad6 to
5bc004b
Compare
- 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>
5bc004b to
28b0f1e
Compare
george17c
left a comment
There was a problem hiding this comment.
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 | |||
There was a problem hiding this comment.
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 | |||
There was a problem hiding this comment.
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 | |||
There was a problem hiding this comment.
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 | |||
There was a problem hiding this comment.
Fix this typo: PYTHON instead of PYHTON.
| @@ -0,0 +1,13 @@ | |||
| CONFIG_ARCH_ARM64=y | |||
| @@ -0,0 +1,13 @@ | |||
| CONFIG_ARCH_ARM64=y | |||
| CONFIG_PLAT_XEN=y | |||
| CONFIG_APP_PYHTON3_HTTP_SERVER=y | |||
There was a problem hiding this comment.
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 | |||
There was a problem hiding this comment.
Fix this typo and remove the underscore.
| @@ -0,0 +1,13 @@ | |||
| CONFIG_ARCH_ARM64=y | |||
| CONFIG_LIBRAMFS=y | ||
| CONFIG_LIBUKCPIO=y | ||
| CONFIG_LIBLWIP=y | ||
| CONFIG_LIBUKRANDOM=y |
There was a problem hiding this comment.
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 |
There was a problem hiding this comment.
Same thing, include CONFIG_LIBUKRANDOM_LCPU=y.
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.