HomePhabricator

Give Drydock resources a proper expiry mechanism

Description

Give Drydock resources a proper expiry mechanism

Summary:
Fixes T6569. This implements an expiry mechanism for Drydock resources which parallels the mechanism for leases.

A few things are missing that we'll probably need in the future:

  • An "EXPIRES" command to update the expiration time. This would let resources be permanent while leased, then expire after, say, 24 hours without any leases.
  • A callback like shouldActuallyExpireRightNow() for resources and leases that lets them decide not to expire at the last second.
  • A callback like didAcquireLease() for resource blueprints, to parallel didReleaseLease(), letting them clear or extend their timer.

However, this stuff would mostly just let us tune behaviors, not really open up new capabilities.

Test Plan: Changed host resources to expire after 60 seconds, leased one, saw it vanish 60 seconds later.

Reviewers: hach-que, chad

Reviewed By: chad

Maniphest Tasks: T6569

Differential Revision: https://secure.phabricator.com/D14176

Details

Provenance
epriestleyAuthored on
epriestleyPushed on Sep 28 2015, 4:35 PM
Reviewer
chad
Differential Revision
D14176: Give Drydock resources a proper expiry mechanism
Parents
rPa3b49053c01b: Allow polls to be public
Branches
Unknown
Tags
Unknown
Tasks
T6569: Implement proper expiry mechanism for Drydock resources