1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-12-26 07:20:57 +01:00

Don't try to publish build results to bare diffs

Summary:
See <https://discourse.phabricator-community.org/t/conduit-call-is-generating-phd-log-error-message/2380/>. If you run builds against a diff which is not attached to a revision (this is unusual) we still try to publish to the associated revision. This won't work since there is no associated revision.

Since bare diffs don't really have a timeline, just publish nowhere for now.

Test Plan:
  - Created a diff.
  - Did not attach it to a revision.
  - Created a build plan with "make http request + wait for response".
  - Manually ran the build plan against the bare diff.
  - Used `bin/phd debug task` to run the build and hit a "revision not attached" exception during publishing.
  - Applied patch.
  - Ran `bin/phd debug task`, got clean (no-op) publish.
  - Sent build a failure message with "harbormaster.sendmessage", got a failed build.

This isn't a real workflow, but shouldn't fail.

Reviewers: amckinley

Reviewed By: amckinley

Differential Revision: https://secure.phabricator.com/D20156
This commit is contained in:
epriestley 2019-02-12 15:24:45 -08:00
parent 7d6d2c128a
commit a7bf279fd5

View file

@ -7,7 +7,11 @@ final class DifferentialBuildableEngine
$object = $this->getObject();
if ($object instanceof DifferentialDiff) {
return $object->getRevision();
if ($object->getRevisionID()) {
return $object->getRevision();
} else {
return null;
}
}
return $object;