ui(deploy): surface deployment failure reason in StatusCard
DeploymentExecutor already persists errorMessage on FAILED transitions but the UI never rendered it — users saw "FAILED" with no explanation. Add a bordered error block above the action row when a deployment is FAILED, preserving whitespace and wrapping long Docker error bodies (e.g. 409 conflict JSON). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -50,6 +50,13 @@ export function StatusCard({ deployment, version, externalUrl, onStop, onStart }
|
||||
<span>Deployed</span><span>{deployment.deployedAt ? timeAgo(deployment.deployedAt) : '—'}</span>
|
||||
</div>
|
||||
|
||||
{deployment.status === 'FAILED' && deployment.errorMessage && (
|
||||
<div className={styles.statusCardError}>
|
||||
<span className={styles.statusCardErrorLabel}>Failure reason</span>
|
||||
{deployment.errorMessage}
|
||||
</div>
|
||||
)}
|
||||
|
||||
<div className={styles.statusCardActions}>
|
||||
{(deployment.status === 'RUNNING' || deployment.status === 'STARTING' || deployment.status === 'DEGRADED')
|
||||
&& <Button size="sm" variant="danger" onClick={onStop}>Stop</Button>}
|
||||
|
||||
Reference in New Issue
Block a user