Page MenuHomePhabricator

Improve formality of "HarbormasterBuild" states

Authored by epriestley on Jul 13 2021, 11:37 PM.
Referenced Files
F11622436: D21685.diff
Mon, Mar 20, 8:55 AM
Unknown Object (File)
Tue, Feb 28, 3:50 PM
Unknown Object (File)
Mon, Feb 20, 3:29 AM
Unknown Object (File)
Feb 16 2023, 3:19 PM
Unknown Object (File)
Feb 12 2023, 11:47 AM
Unknown Object (File)
Feb 9 2023, 6:41 PM
Unknown Object (File)
Feb 5 2023, 7:35 PM
Unknown Object (File)
Feb 2 2023, 8:03 AM
Restricted Owners Package



Ref T13072. Currently, Builds have basic states (like "passed" and "failed") and pending states where a command has been issued but not yet executed (pausing, resuming, restarting, and aborting).

These are handled in a bit of an ad-hoc way, and not everything treats them the same way. In particular, the build page can concurrently report a build as "Aborting" and "Pausing", with different icons and colors.

Make everything use the same logic so that a Build can only be in exactly zero or one pending state, and use the same icons and colors.

Also tighten up which transitions are allowed: for example, it doesn't make sense to pause an aborting build.

The tighter rules don't all produce great UX right now (like "You can't pause this build.", when it would be better as "You can't pause a build which is already aborting." or similar), but just leave that alone for now.

Test Plan

Viewed builds, applied various state changes, ran BuildWorker to effect the state changes, grepped for affected methods, tried to issue various out-of-sequence build commands.

Diff Detail

rP Phabricator
Lint Not Applicable
Tests Not Applicable

Event Timeline

Owners added a subscriber: Restricted Owners Package.Jul 13 2021, 11:37 PM
epriestley retitled this revision from Improve formality of "HarbormasterBuild" messages to Improve formality of "HarbormasterBuild" states.Jul 13 2021, 11:39 PM
This revision was not accepted when it landed; it landed in state Needs Review.Jul 21 2021, 9:17 PM
This revision was automatically updated to reflect the committed changes.