Page MenuHomePhabricator

In "bin/ssh-auth", cache a structure instead of a flat file because paths may change at runtime

Authored by epriestley on Aug 8 2018, 5:21 PM.



Fixes T12397. Ref T13164. See PHI801.

Several installs have hit various use cases where the path on disk where Phabricator lives changes at runtime. Currently, bin/ssh-auth caches a flat file which includes the path to bin/ssh-exec, so this may fall out of date if phabricator/ moves.

These use cases have varying strengths of legitimacy, but "we're migrating to a new set of hosts and the pool is half old machines and half new machines" seems reasonably compelling and not a problem entirely of one's own making.

Test Plan
  • Compared output on master to output after change, found them byte-for-byte identical.
  • Moved phabricator/ to phabricator2/, ran bin/ssh-auth, got updated output.
  • Added a new SSH key, saw it appear in the output.
  • Grepped for AUTHFILE_CACHEKEY (no hits).
  • Dropped the cache, verified that the file regenerates cleanly.

Diff Detail

rP Phabricator
Lint OK
Unit Tests OK
Build Status
Buildable 20582
Build 27958: Run Core Tests
Build 27957: arc lint + arc unit

Event Timeline

epriestley created this revision.Aug 8 2018, 5:21 PM
epriestley requested review of this revision.Aug 8 2018, 5:22 PM
amckinley accepted this revision.Aug 9 2018, 3:22 PM
This revision is now accepted and ready to land.Aug 9 2018, 3:22 PM
This revision was automatically updated to reflect the committed changes.