-
Notifications
You must be signed in to change notification settings - Fork 53
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
Kata installation using RHCOS image layer #416
Conversation
Skipping CI for Draft Pull Request. |
73cde2a
to
0a52c6d
Compare
87f3d52
to
1b5c4e1
Compare
70eca7b
to
4b6ed27
Compare
Avoid growing the file With this approach, you could also avoid the new variables For example, let's suppose you have a Can this work? |
Thanks for your suggestion @spotlesstofu . I'll spend some time to figure out how to incorporate the changes and get back. |
@spotlesstofu I have incorporated your suggestion and added it as a separate commit. If the approach looks good, I'll squash the new commit with the first one. |
2ea138a
to
6ab6873
Compare
The functionality is exposed via feature gate. The feature gate is named as `layeredImageDeployment` and is managed via the `osc-feature-gates` ConfigMap. The actual MachineConfig specifying the image details is stored in `layered-image-deploy-cm` ConfigMap. Layered Image Deployment workflow: - Admin creates a ConfigMap named `layered-image-deploy-cm` with `osImageURL` and `kernelArguments` keys. Note that `osImageURL` is mandatory and `kernelArguments` is optional Example: ```sh apiVersion: v1 data: osImageURL: "quay.io/openshift_sandboxed_containers/kata-ocp415:tdx" kernelArguments: "kvm_intel.tdx=1" kind: ConfigMap metadata: name: layered-image-deploy-cm namespace: openshift-sandboxed-containers-operator ``` - The feature gate handling code in the OSC operator reads this ConfigMap, extracts the keys, and creates the MachineConfig object to kickstart the installation. - This feature is tied to KataConfig creation/deletion. So any changes to this feature gate config post KataConfig creation will be a no-op. IOW, the installation method - whether using extension (default) or layered image cannot be changed post KataConfig creation. For changing the install method, the KataConfig needs to be deleted and recreated. Since installation and uninstallation are time consuming operation, this restriction is in place. - The code limits the feature gate processing into a dedicated code separate from the general controller flow and publishes the results of the processing by storing them in the KataConfig reconciler struct, for the general controller code to use. Also rename createExtensionMc to createMc since the method is now handling both extension and image based MC. Signed-off-by: Pradipta Banerjee <[email protected]>
6ab6873
to
e339996
Compare
@bpradipt: The following tests failed, say
Full PR test history. Your PR dashboard. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM overall, thanks.
( I'd still prefer to have fixed image value also if it's FG, however, no a deal breaker according to what you mentioned :) )
No description provided.