1
0
mirror of git://f0xx.org/ac/ac-be-builder synced 2026-08-12 18:12:50 +03:00

Builder: monotonic OTA versions, duration UI, OTA publish fixes.

VersionAllocator for AA.BB.CC.DDDD, build elapsed display, branded QR alerts, shared cache env, and auto_deploy when auto_ota is set.
This commit is contained in:
Anton Afanasyeu
2026-08-12 14:08:12 +02:00
parent ef6718a5f2
commit e8039aab78
12 changed files with 548 additions and 21 deletions

View File

@@ -1,4 +1,5 @@
<?php declare(strict_types=1);
$build = BuildDuration::annotate($build);
$artifacts = json_decode($build['artifacts_json'] ?? '{}', true) ?: [];
$params = json_decode($build['params_json'] ?? '{}', true) ?: [];
$status = (string) ($build['status'] ?? '');
@@ -24,6 +25,15 @@ $stepLabels = [
<p class="muted build-status-line" id="build-status-line">
<span id="build-status-icon"><?= build_status_icon($status) ?></span>
<span id="build-status-text">Status: <strong><?= h($status) ?></strong> · Phase: <?= h($phase) ?>
<?php if (($build['duration_label'] ?? '—') !== '—'): ?>
· <span id="build-duration-label" data-duration-kind="<?= h((string) ($build['duration_kind'] ?? '')) ?>"><?php
$dk = (string) ($build['duration_kind'] ?? '');
if ($dk === 'elapsed'): ?>Running for <?= h($build['duration_label']) ?><?php
elseif ($dk === 'final'): ?>Took <?= h($build['duration_label']) ?><?php
else: ?><?= h($build['duration_label']) ?><?php endif; ?></span>
<?php else: ?>
· <span id="build-duration-label" data-duration-kind="none" hidden></span>
<?php endif; ?>
<?php if (!empty($build['error_message'])): ?>
· <span class="error-text" id="build-error-message"><?= h($build['error_message']) ?></span>
<?php endif; ?>
@@ -94,6 +104,18 @@ docker exec -it <?= h($sshContainer) ?> bash</pre>
<dt>Git SHA</dt><dd><code><?= h($build['git_sha'] ?? '—') ?></code></dd>
<dt>OTA channel</dt><dd><?= h($build['ota_channel'] ?? '—') ?></dd>
<dt>Gradle task</dt><dd><code><?= h($params['gradle_task'] ?? '—') ?></code></dd>
<dt>Started</dt><dd><?= h($build['started_at'] ?? '—') ?> UTC</dd>
<dt>Finished</dt><dd><?= h($build['finished_at'] ?? '—') ?> UTC</dd>
<dt>Duration</dt><dd id="build-duration-detail"><?php
$dk = (string) ($build['duration_kind'] ?? '');
if ($dk === 'elapsed') {
echo 'Running for ' . h($build['duration_label']);
} elseif ($dk === 'final') {
echo h($build['duration_label']);
} else {
echo h($build['duration_label']);
}
?></dd>
</dl>
</div>