Page MenuHomePhabricator

Add isClusterDevice to Almanac query
ClosedPublic

Authored by amckinley on Apr 13 2018, 6:47 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Apr 25, 1:55 AM
Unknown Object (File)
Thu, Apr 18, 3:02 PM
Unknown Object (File)
Thu, Apr 18, 1:05 PM
Unknown Object (File)
Wed, Apr 17, 9:08 PM
Unknown Object (File)
Wed, Apr 17, 2:03 AM
Unknown Object (File)
Sat, Apr 13, 7:49 AM
Unknown Object (File)
Fri, Apr 12, 6:15 AM
Unknown Object (File)
Thu, Apr 11, 3:47 PM
Subscribers

Details

Summary

Ref T13076. This will be used by the metric collection system to iterate over the cluster devices.

Test Plan

Created some cluster and non-cluster devices, searched and saw expected results.

Diff Detail

Repository
rP Phabricator
Branch
master
Lint
Lint Passed
Unit
Tests Passed
Build Status
Buildable 20149
Build 27338: Run Core Tests
Build 27337: arc lint + arc unit

Event Timeline

In the future, web, aux, etc., probably won't actually be bound to any cluster services. Maybe just pull every device, then filter them with a hard-coded check based on the name matching repo*.phacility.net or db*.phacility.net for now, and we can refine this later? I suspect this isn't actually the right check in the long term.

One reasonable version of this check in the near future might just be getAlmanacProperty('phacility.cloudwatch.enabled') or something. I think I'm going to write a beefier version of bin/provision sync pretty soon, once the new Almanac stuff deploys to admin.

src/applications/almanac/query/AlmanacDeviceSearchEngine.php
28

For consistency, prefer PhabricatorSearchThreeStateField for true/false/null fields.

I think this is fine to add anyway (with ThreeStateField) even if we don't actually use it now; the code otherwise looks right and the query capability might be useful.

This revision now requires changes to proceed.Apr 13 2018, 6:54 PM
This revision is now accepted and ready to land.Apr 13 2018, 10:48 PM
This revision was automatically updated to reflect the committed changes.