Differential D10174 Diff 24604 src/applications/harbormaster/controller/HarbormasterBuildViewController.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/harbormaster/controller/HarbormasterBuildViewController.php
Show First 20 Lines • Show All 88 Lines • ▼ Show 20 Lines | foreach ($build_targets as $build_target) { | ||||
$icon = HarbormasterBuildTarget::getBuildTargetStatusIcon($status); | $icon = HarbormasterBuildTarget::getBuildTargetStatusIcon($status); | ||||
$color = HarbormasterBuildTarget::getBuildTargetStatusColor($status); | $color = HarbormasterBuildTarget::getBuildTargetStatusColor($status); | ||||
$item->setTarget($status_name); | $item->setTarget($status_name); | ||||
$item->setIcon($icon, $color); | $item->setIcon($icon, $color); | ||||
$status_view->addItem($item); | $status_view->addItem($item); | ||||
$properties->addProperty(pht('Name'), $build_target->getName()); | $properties->addProperty(pht('Name'), $build_target->getName()); | ||||
if ($build_target->getDateStarted() !== null) { | |||||
$properties->addProperty( | |||||
pht('Started'), | |||||
phabricator_datetime($build_target->getDateStarted(), $viewer)); | |||||
if ($build_target->isComplete()) { | |||||
$properties->addProperty( | |||||
pht('Completed'), | |||||
phabricator_datetime($build_target->getDateCompleted(), $viewer)); | |||||
$properties->addProperty( | |||||
pht('Duration'), | |||||
phutil_format_relative_time_detailed( | |||||
$build_target->getDateCompleted() - | |||||
$build_target->getDateStarted())); | |||||
} else { | |||||
$properties->addProperty( | |||||
pht('Elapsed'), | |||||
phutil_format_relative_time_detailed( | |||||
time() - $build_target->getDateStarted())); | |||||
epriestley: (Not specific to this diff and we aren't very consistent about it, but prefer `PhabricatorTime… | |||||
} | |||||
} | |||||
$properties->addProperty(pht('Status'), $status_view); | $properties->addProperty(pht('Status'), $status_view); | ||||
$target_box->addPropertyList($properties, pht('Overview')); | $target_box->addPropertyList($properties, pht('Overview')); | ||||
$description = $build_target->getBuildStep()->getDescription(); | $description = $build_target->getBuildStep()->getDescription(); | ||||
if ($description) { | if ($description) { | ||||
$rendered = PhabricatorMarkupEngine::renderOneObject( | $rendered = PhabricatorMarkupEngine::renderOneObject( | ||||
id(new PhabricatorMarkupOneOff()) | id(new PhabricatorMarkupOneOff()) | ||||
▲ Show 20 Lines • Show All 82 Lines • ▼ Show 20 Lines | private function buildArtifacts( | ||||
if (count($artifacts) === 0) { | if (count($artifacts) === 0) { | ||||
return null; | return null; | ||||
} | } | ||||
$list = id(new PHUIObjectItemListView()) | $list = id(new PHUIObjectItemListView()) | ||||
->setFlush(true); | ->setFlush(true); | ||||
foreach ($artifacts as $artifact) { | foreach ($artifacts as $artifact) { | ||||
$list->addItem($artifact->getObjectItemView($viewer)); | $item = $artifact->getObjectItemView($viewer); | ||||
if ($item !== null) { | |||||
$list->addItem($item); | |||||
} | |||||
} | } | ||||
return $list; | return $list; | ||||
} | } | ||||
private function buildLog( | private function buildLog( | ||||
HarbormasterBuild $build, | HarbormasterBuild $build, | ||||
HarbormasterBuildTarget $build_target) { | HarbormasterBuildTarget $build_target) { | ||||
▲ Show 20 Lines • Show All 286 Lines • Show Last 20 Lines |
(Not specific to this diff and we aren't very consistent about it, but prefer PhabricatorTime::getNow() to time(), since we can change the value of "now" in unit tests with the PhabricatorTime API. We might also synchronize "time" to the database (or some other source of truth) in the future to try to deal with clock skew.)