-
Notifications
You must be signed in to change notification settings - Fork 79
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
When an IPXe URL is a data-url, expand the url into ipxe content #110
Comments
sorry for the dumb questions, i don't think i fully understand the value here. |
When providing an IPXE Script, you can currently take advantage of the userdata field with a value of We provide only one custom URL that can be consumed in this way. When that facility is repurposed to provide an IPXE script, we lose ability to treat the userdata field as cloud-config, kickstart config, multi-part mime cloud-configs and scripts, etc. |
The IPXE Script would be encoded. To provide an ipxe_script_url today, you must have a web server that is accessible to the node, which may have networking restrictions that prevent that. But allowing for public internet routing and assuming I have a web-host available and my data is not sensitive (too many assumptions), I can park my IPXE Script URL on Github.
Rather than finding a remote host, making my IPXE script publicly, relying on DNS and internet routes, I could say The effect is the same. You could argue that I could take advantage of the userdata field for this (which removes the need for hosting and potentially DNS and public routes). As I previously mentioned, this removes our ability to use userdata for its intended purpose. If we suggest that cloud-config is not the explicit intention of userdata, then there is no reason for |
I understand that one way to consume IPXE is to take advantage of relative paths for resources like the initrd and kernel, treating the host as a location for IPXE scripts and other assets. For example, if As my gist shows, this is not a requirement for all IPXE scripts. |
@displague thank you for the great explanations. I do believe I understand now. With #192, being merged, there is now a new field Does this solve the issue the data-URI support was looking to solve? |
Expected Behaviour
When providing an IPXe URL, that is data-uri encoded, boots should expand this URI into the decoded content and pass this to IPXE. This would be equivalent to
#!ipxe
userdata, but frees the userdata metadata to be consumed as userdata (cloud-init, ignition, etc).Current Behaviour
Data URIs are not handled.
See also
The text was updated successfully, but these errors were encountered: