Check each pod's OwnerReferences to determine whether it is owned by an existing Daemonset. If so, exclude it from deletion as the pod would just be recreated by the Daemonset controller
Drop usage of CreatedByAnnotation to deserialize the owner object of a pod when listing pods to delete during agent drains
Testing
Running locksmithctl send-need-reboot is not enough to reproduce the original issue. I deployed a Typhoon 1.9.1 cluster with an intentionally old version of Container Linux. CLUO v0.4.1 reproduced the issue in which one node became unscheduable at a time, with no nodes able to actually upgrade.
Edited to test image and Container Linux upgrades were able to be applied.
Retested on another v1.9.1 cluster with quay.io/dghubble/container-linux-update-operator:77ac24a86c4e74d30e1a04bc6aa808371a1deb8e and it was able to apply updates to all nodes.
Testing
Running
locksmithctl send-need-reboot
is not enough to reproduce the original issue. I deployed a Typhoon 1.9.1 cluster with an intentionally old version of Container Linux. CLUO v0.4.1 reproduced the issue in which one node became unscheduable at a time, with no nodes able to actually upgrade.Edited to test image and Container Linux upgrades were able to be applied.
quay.io/dghubble/container-linux-update-operator:77ac24a86c4e74d30e1a04bc6aa808371a1deb8e
A proper release will be forthcoming.
See #163