Homestyx hydra
Diffusion hydra 6556536d0615

Allow repository cluster bindings to be marked as not "writable", making them…

Description

Allow repository cluster bindings to be marked as not "writable", making them read-only

Summary:
Depends on D19356. Fixes T10883. Ref T13120.

  • Add a "writable" property to the bindings, defaulting to "true" with a nice dropdown.
  • When selecting hosts, allow callers to request a writable host.
  • If the caller wants a writable host, only return hosts if they're writable.
  • In SVN and Mercurial, we sometimes return only writable hosts when we could return read-only hosts, but figuring out if these request are read-only or read-write is currently tricky. Since these repositories can't really cluster yet, this shouldn't matter too much today.

Test Plan:

  • Without any config changes, viewed repositories via web UI and pushed/pulled via SSH and HTTP.
  • Made all nodes in the cluster read-only by disabling "writable", pulled and hit the web UI (worked), tried to push via SSH and HTTP (got errors about read-only).
  • Put everything back, pulled and pushed.

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13120, T10883

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

Details

Provenance
epriestleyAuthored on Apr 12 2018, 9:39 AM
sirocylPushed on Oct 16 2024, 5:49 AM
Parents
R1:7c7e6d555b3f: Give getAlmanacServiceURI() an "options" parameter to prepare for read-only…
Branches
Unknown
Tags
Unknown

Event Timeline