HomePhabricator

Replace "Cancel Build" with "Stop", "Resume" and "Restart"

Description

Replace "Cancel Build" with "Stop", "Resume" and "Restart"

Summary:
Ref T1049. Currently you can cancel a build, but now that we're tracking a lot more state we can stop, resume, and restart builds.

When the user issues a command against a build, I'm writing it into an auxiliary queue (HarbormasterBuildCommand) and then reading them out in the worker. This is mostly to avoid race messes where we try to save() the object in multiple places: basically, the BuildEngine is the only thing that writes to Build objects, and it holds a lock while it does it.

Test Plan:

  • Created a plan which runs "sleep 2" a bunch of times in a row.
  • Stopped, resumed, and restarted it.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran, chad

Maniphest Tasks: T1049

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

Details

Provenance
epriestleyAuthored on Jan 6 2014, 8:32 PM
epriestleyPushed on Jan 6 2014, 8:32 PM
Reviewer
btrahan
Differential Revision
D7892: Replace "Cancel Build" with "Stop", "Resume" and "Restart"
Parents
rP4d5e8a149a7d: Split Harbormaster workers apart so build steps can run in parallel
Branches
Unknown
Tags
Unknown
Tasks
T1049: Implement Harbormaster

Event Timeline