Add support for configuring hosting service repositories via API.

Review Request #11321 — Created Dec. 7, 2020 and submitted — Latest diff uploaded

Information

Review Board
release-3.0.x

Reviewers

This adds formal support for using the Repository API to create and edit
repositories backed by a hosting service. Previously, the API really
only worked correctly for plain repositories, as it just wasn't possible
to get the right state into the form.

The POST and PUT handlers now accept several new fields for configuring
the hosting service information (type, URL, account username,
service-specicific fields) for repositories and bug trackers. It does
require an existing HostingServiceAccount to be configured, though.
This takes care to pass the right values to the backend form.

With this, customers should now be able to fully automate repository
manaegment via the API.

Unit tests pass.

Manually tested creating some repositories on GitHub and Bitbucket via
curl. Verified the repositories were successfully created, contained all
the correct state, and could communicate with each service's API.

Commits

Files