Skip to content
This repository has been archived by the owner on Jul 17, 2023. It is now read-only.

A better solution when binary is not found due to the path/filename mess-up #108

Open
xymeng16 opened this issue May 27, 2022 · 0 comments

Comments

@xymeng16
Copy link
Contributor

kraft uses the name field from kraft.yaml to retrieve the kernel binary file to conduct the build/run tasks. But if users use make menuconfig to configure the app, the default binary name would be the directory name. Such mixing up may lead to the following two confusions if the name field of kraft.yaml does not match the directory name:

  • kraft build: if the configuration is correct, the build process will succeed, but nothing will be outputted after Successfully built unikernels:, which is weird.
  • kraft run: kraft will not retrieve any binary file. Thus, it will output an error message [CRITICAL] list index out of range

After discussing with the community, two acceptable solutions are raised:

  • Use a better error message (instead of [CRITICAL] list index out of range) to highlight the issue, and advise the user of to either:
    • update the kraft.yaml file
    • redo their build process to generate the correct file name
  • Let kraft run provide an option to get the name/path of the binary to run

As kraft is under refactoring and the new tools KraftKit will be released soon, I am going to open a PR only regarding the kraft run issue since it has more influence than the kraft build one.

Issue #36 seems related to this issue, too.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant