-
Notifications
You must be signed in to change notification settings - Fork 22
Open
Labels
Description
gitstream tried to cherry-pick commit 9343f17cc16f95c4b84ef723a8f9374a76d58521 from https://github.com/kubernetes-sigs/kernel-module-management but was unable to do so.
Commit message:
Adding "version.ready" label to the ordered upgrade flow
Currently we have only one "ready" label to signify that the kernel
module is loaded successfuly. In order upgrade scenario, the user needs
to know that the loaded module is actually the one with the targeted
module version, in order to coordinated further actions. This PR
introduces a new label: kmm.node.kubernetes.io/%s.%s.version.ready,
whose value will signify the version of the currently loaded kernel
module.
The changes in the code are:
1. Adding Version field both to status and spec of NMC (will be used to
construct the new label)
2. Polulating the Version field of the NCM's spec during NMC
update/create
3. Adding the "version" annotation to the worker pod, so that the
version may be extracted for NMC's status
4. Changing the Node package API to receive maps instead of slice for
labels to be added/remove. This is done since now we must also update
the value of the label, and not just the key
5. Rewrite the UpdateNodeLabel function in the NMC controller to support
new flow and new Node API
6. In case "ready" label is removed, we also automaticaly remove
"version.ready" label. If it does not exists - nothing happens
7. In case "ready" label needs to be added, we check if the version
field exists in the NMC status, and if it does, then we add the
"version.ready" label with appropriate value
Please cherry-pick the commit manually.
Error:
could not cherry-pick: could not run a command 0 before committing: exit status 1
Upstream-Commit: 9343f17cc16f95c4b84ef723a8f9374a76d58521