Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Publish CFE precompiled to Kernel to cloud storage to unlock bootstrapping without prebuilt SDK #51788

Open
mraleph opened this issue Mar 20, 2023 · 2 comments
Labels
area-infrastructure Use area-infrastructure for SDK infrastructure issues, like continuous integration bot changes.

Comments

@mraleph
Copy link
Member

mraleph commented Mar 20, 2023

Currently we rely on prebuilt Dart SDK to bootstrap, however in reality we only need CFE part of it as long as CFE is compiled to Kernel binary compatible with the current VM version.

During bootstrap we can build a run-kernel binary (essentially dart without kernel-service, vm-service or other core libraries snapshot included). run-kernel + prebuilt-cfe.dill will give us equivalent of dart, e.g. dart input.dart is done through run-kernel prebuilt-cfe.dill input.dart /tmp/output.dill && run-kernel /tmp/output.dill. Which will allow us to complete the bootstrap.

@mraleph mraleph added the area-infrastructure Use area-infrastructure for SDK infrastructure issues, like continuous integration bot changes. label Mar 20, 2023
@sortie
Copy link
Contributor

sortie commented Mar 21, 2023

Is there anything we can help with here?

I could e.g. set up a trusted builder that makes these dill files and puts them in the cloud storage and cipd alongside the official releases? Then we can amend the checked in SDK mechanism with this alternative

@mraleph
Copy link
Member Author

mraleph commented Mar 22, 2023

Yeah, I think we need some infrastructure e.g. decide where we put these and what kind of bots we need around this. Somebody on the VM team can do the GN / scripts wiring then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-infrastructure Use area-infrastructure for SDK infrastructure issues, like continuous integration bot changes.
Projects
None yet
Development

No branches or pull requests

2 participants