fix: the VIP overlay waits for etcd's cluster, as etcd does (keel#106) #189
No reviewers
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Keel-Linux/keel!189
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/vip-overlay-waits-for-etcd-106"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes #106. Stacked on #187 (common#56), which is stacked on #185: merge those first.
keel-vip.servicehasConditionPathExists=/var/lib/keel/etcd/cluster.json, so it never runs in cloud simple, and in cloud advanced it waits until etcd forms. Before,keel diffreportedoverlays.vip: drift (declared enabled, observed keel-vip.service enabled and inactive)on every cloud simple pair, and each apply printed "start keel-vip.service: done" for a start that did nothing.What changes, mirroring what etcd's overlay does while it waits for its cluster:
keel diff: beforecluster.jsonexists,overlays.vipcompares only whether the unit is enabled, and gives the reason (without etcd,keel vip checkand its timer do the VIP's work). A unit that is not enabled is still drift.keel spec apply: beforecluster.jsonexists, the unit is enabled and not started, and the step says why. With the cluster, both compare and converge the unit as before.Tests:
tests/test_vip_overlay_waits.py(diff and apply, before and after the cluster). The cross-site test of 19.0-3 runs in cloud advanced, so CI is the proof of the cloud simple case.keel 0.23.35.
b1f0252597093da566b6093da566b6a4790d991aa4790d991a7df4bc9649