-
Notifications
You must be signed in to change notification settings - Fork 24
feat: add support for fencing-watchdog-timeout #335
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
feat: add support for fencing-watchdog-timeout #335
Conversation
Especially do not load cib schema version before a cluster is created by running the role in a test, as that fails due to CIB nonexistence.
Reviewer's GuideAdds support for the new Pacemaker fencing-watchdog-timeout cluster property by setting it alongside the existing stonith-watchdog-timeout, updates CIB filtering logic, and adjusts tests/fixtures to expect both properties while performing a minor test name cleanup and removing now-unneeded CIB schema version fetching in a couple of test suites. Sequence diagram for setting both watchdog timeout properties via pcssequenceDiagram
actor Admin
participant AnsibleTask_sbd
participant pcs_cli
participant Pacemaker_old
participant Pacemaker_new
Admin->>AnsibleTask_sbd: Run sbd.yml role
AnsibleTask_sbd->>AnsibleTask_sbd: Evaluate ha_cluster_sbd_enabled
AnsibleTask_sbd->>pcs_cli: pcs --force property set\n fencing-watchdog-timeout=value\n stonith-watchdog-timeout=value
alt Pacemaker_with_feature_set_below_3_20_5
pcs_cli->>Pacemaker_old: Apply CIB change
Pacemaker_old->>Pacemaker_old: Ignore fencing-watchdog-timeout
Pacemaker_old->>Pacemaker_old: Use stonith-watchdog-timeout
else Pacemaker_with_feature_set_3_20_5_or_higher
pcs_cli->>Pacemaker_new: Apply CIB change
Pacemaker_new->>Pacemaker_new: Prefer fencing-watchdog-timeout
Pacemaker_new->>Pacemaker_new: Treat stonith-watchdog-timeout as deprecated
end
Flow diagram for create-and-push-cib CIB filtering with both watchdog propertiesflowchart TD
A[Start create-and-push-cib task] --> B[Generate or load temporary CIB XML]
B --> C[Apply XPath filter to remove dynamic properties\n dc-version, have-watchdog, last-lrm-refresh,\n stonith-watchdog-timeout, fencing-watchdog-timeout]
C --> D[Write filtered CIB to tempfile CIB_file]
D --> E[Push CIB_file to cluster using crmsh or pcs]
E --> F[Cluster CIB now contains synced\n stonith-watchdog-timeout and fencing-watchdog-timeout]
F --> G[End]
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
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.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #335 +/- ##
=======================================
Coverage 90.92% 90.92%
=======================================
Files 19 19
Lines 1212 1212
=======================================
Hits 1102 1102
Misses 110 110 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
[citest] |
Enhancement:
Apply special stonith-watchdog-timeout cluster property handling to fencing-watchdog-timeout as well
Reason:
fencing-watchdog-timeout is replacing stonith-watchdog-timeout in future pacemaker version
Result:
The role supports future pacemaker versions
Issue Tracker Tickets (Jira or BZ if any):
https://issues.redhat.com/browse/RHELHA-388
Summary by Sourcery
Ensure watchdog-related cluster properties remain consistent across current and future Pacemaker versions by handling both legacy and new property names.
New Features:
Enhancements:
Tests: