Page MenuHomePhabricator

Clean up overseer modules slightly and provide a throttling support method
ClosedPublic

Authored by epriestley on Mar 23 2017, 1:57 AM.
Tags
None
Referenced Files
F15468653: D17539.id42185.diff
Fri, Apr 4, 3:37 AM
F15453496: D17539.diff
Sat, Mar 29, 12:14 PM
F15450194: D17539.id42185.diff
Fri, Mar 28, 2:27 PM
F15449240: D17539.id42197.diff
Fri, Mar 28, 9:04 AM
F15439711: D17539.id.diff
Wed, Mar 26, 9:00 AM
F15439312: D17539.id.diff
Wed, Mar 26, 6:54 AM
F15434100: D17539.diff
Tue, Mar 25, 1:57 AM
F15400877: D17539.id.diff
Mon, Mar 17, 2:28 PM
Subscribers
None

Details

Summary

Ref T12298. Make it slightly easier to write overseer modules:

  • You don't need to implement shouldReloadDaemons(), since you can now just implement shouldWakePool() and get useful behavior.
  • It looks like most modules want to do checks only every X seconds, where X is at least somewhat module/use-case dependent, so add a helper for that.
Test Plan

Ran bin/phd debug pull --trace, saw config check fire properly every 10 seconds after updating it to use shouldThrottle() in the next change.

Diff Detail

Repository
rPHU libphutil
Branch
wake2
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 16100
Build 21363: Run Core Tests
Build 21362: arc lint + arc unit