Skip to content

Commit 405bcd5

Browse files
committed
Update status for build logs
1 parent 318e979 commit 405bcd5

File tree

3 files changed

+54
-4
lines changed

3 files changed

+54
-4
lines changed

site/src/components/BuildsTable/BuildsTable.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import useTheme from "@material-ui/styles/useTheme"
99
import { FC } from "react"
1010
import { useNavigate } from "react-router-dom"
1111
import * as TypesGen from "../../api/typesGenerated"
12-
import { displayWorkspaceBuildDuration, getDisplayStatus } from "../../util/workspace"
12+
import { displayWorkspaceBuildDuration, getDisplayWorkspaceBuildStatus } from "../../util/workspace"
1313
import { EmptyState } from "../EmptyState/EmptyState"
1414
import { TableLoader } from "../TableLoader/TableLoader"
1515

@@ -47,7 +47,7 @@ export const BuildsTable: FC<BuildsTableProps> = ({ builds, className }) => {
4747
{isLoading && <TableLoader />}
4848
{builds &&
4949
builds.map((build) => {
50-
const status = getDisplayStatus(theme, build)
50+
const status = getDisplayWorkspaceBuildStatus(theme, build)
5151

5252
const navigateToBuildPage = () => {
5353
navigate(`/builds/${build.id}`)

site/src/components/WorkspaceBuildStats/WorkspaceBuildStats.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { Link as RouterLink } from "react-router-dom"
55
import { WorkspaceBuild } from "../../api/typesGenerated"
66
import { CardRadius, MONOSPACE_FONT_FAMILY } from "../../theme/constants"
77
import { combineClasses } from "../../util/combineClasses"
8-
import { displayWorkspaceBuildDuration, getDisplayStatus } from "../../util/workspace"
8+
import { displayWorkspaceBuildDuration, getDisplayWorkspaceBuildStatus } from "../../util/workspace"
99

1010
export interface WorkspaceBuildStatsProps {
1111
build: WorkspaceBuild
@@ -14,7 +14,7 @@ export interface WorkspaceBuildStatsProps {
1414
export const WorkspaceBuildStats: FC<WorkspaceBuildStatsProps> = ({ build }) => {
1515
const styles = useStyles()
1616
const theme = useTheme()
17-
const status = getDisplayStatus(theme, build)
17+
const status = getDisplayWorkspaceBuildStatus(theme, build)
1818

1919
return (
2020
<div className={styles.stats}>

site/src/util/workspace.ts

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,56 @@ export const getDisplayStatus = (
136136
throw new Error("unknown status " + status)
137137
}
138138

139+
export const DisplayWorkspaceBuildStatusLanguage = {
140+
succeeded: "Succeeded",
141+
pending: "Pending",
142+
running: "Running",
143+
canceling: "Canceling",
144+
canceled: "Canceled",
145+
failed: "Failed",
146+
}
147+
148+
export const getDisplayWorkspaceBuildStatus = (
149+
theme: Theme,
150+
build: TypesGen.WorkspaceBuild,
151+
): {
152+
color: string
153+
status: string
154+
} => {
155+
switch (build.job.status) {
156+
case "succeeded":
157+
return {
158+
color: theme.palette.success.main,
159+
status: `⦿ ${DisplayWorkspaceBuildStatusLanguage.succeeded}`,
160+
}
161+
case "pending":
162+
return {
163+
color: theme.palette.text.secondary,
164+
status: `⦿ ${DisplayWorkspaceBuildStatusLanguage.pending}`,
165+
}
166+
case "running":
167+
return {
168+
color: theme.palette.primary.main,
169+
status: `⦿ ${DisplayWorkspaceBuildStatusLanguage.running}`,
170+
}
171+
case "failed":
172+
return {
173+
color: theme.palette.text.secondary,
174+
status: `⦸ ${DisplayWorkspaceBuildStatusLanguage.failed}`,
175+
}
176+
case "canceling":
177+
return {
178+
color: theme.palette.warning.light,
179+
status: `◍ ${DisplayWorkspaceBuildStatusLanguage.canceling}`,
180+
}
181+
case "canceled":
182+
return {
183+
color: theme.palette.text.secondary,
184+
status: `◍ ${DisplayWorkspaceBuildStatusLanguage.canceled}`,
185+
}
186+
}
187+
}
188+
139189
export const getWorkspaceBuildDurationInSeconds = (build: TypesGen.WorkspaceBuild): number | undefined => {
140190
const isCompleted = build.job.started_at && build.job.completed_at
141191

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy