Skip to content

Commit edcc246

Browse files
committed
Disable version selection field for dev envs
1 parent d3fc160 commit edcc246

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

apps/webapp/app/presenters/v3/TestTaskPresenter.server.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ export type TestTaskResult =
5454
| {
5555
foundTask: true;
5656
task: TestTask;
57+
disableVersionSelection: boolean;
5758
}
5859
| {
5960
foundTask: false;
@@ -158,12 +159,12 @@ export class TestTaskPresenter {
158159
orderBy: {
159160
createdAt: "desc",
160161
},
161-
// only the latest version has active workers in development,
162-
// so we hide the older versions to avoid confusion from stuck runs
163-
take: environment.type === "DEVELOPMENT" ? 1 : 20,
162+
take: 20,
164163
})
165164
).map((v) => v.version);
166165

166+
const disableVersionSelection = environment.type === "DEVELOPMENT";
167+
167168
const latestRuns = await this.#prismaClient.$queryRaw<RawRun[]>`
168169
WITH taskruns AS (
169170
SELECT
@@ -246,6 +247,7 @@ export class TestTaskPresenter {
246247
),
247248
latestVersions,
248249
},
250+
disableVersionSelection,
249251
};
250252
case "SCHEDULED":
251253
const possibleTimezones = getTimezones();
@@ -275,6 +277,7 @@ export class TestTaskPresenter {
275277
).filter(Boolean),
276278
latestVersions,
277279
},
280+
disableVersionSelection,
278281
};
279282
}
280283
}

apps/webapp/app/routes/_app.orgs.$organizationSlug.projects.$projectParam.env.$envParam.test.tasks.$taskParam/route.tsx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,7 @@ export default function Page() {
178178
defaultQueue={result.task.queue}
179179
runs={result.task.runs}
180180
versions={result.task.latestVersions}
181+
disableVersionSelection={result.disableVersionSelection}
181182
/>
182183
);
183184
}
@@ -187,6 +188,7 @@ export default function Page() {
187188
task={result.task.task}
188189
runs={result.task.runs}
189190
possibleTimezones={result.task.possibleTimezones}
191+
disableVersionSelection={result.disableVersionSelection}
190192
/>
191193
);
192194
}
@@ -200,11 +202,13 @@ function StandardTaskForm({
200202
defaultQueue,
201203
runs,
202204
versions,
205+
disableVersionSelection,
203206
}: {
204207
task: TestTask["task"];
205208
defaultQueue: TestTask["queue"];
206209
runs: StandardRun[];
207210
versions: string[];
211+
disableVersionSelection: boolean;
208212
}) {
209213
const environment = useEnvironment();
210214
const { value, replace } = useSearchParams();
@@ -603,13 +607,17 @@ function StandardTaskForm({
603607
variant="tertiary/small"
604608
placeholder="Select version"
605609
dropdownIcon
610+
disabled={disableVersionSelection}
606611
>
607612
{versions.map((version, i) => (
608613
<SelectItem key={version} value={i === 0 ? "latest" : version}>
609614
{version} {i === 0 && "(latest)"}
610615
</SelectItem>
611616
))}
612617
</Select>
618+
{disableVersionSelection && (
619+
<Hint>Only the latest version is available in the development environment.</Hint>
620+
)}
613621
<FormError id={version.errorId}>{version.error}</FormError>
614622
</InputGroup>
615623
<FormError>{form.error}</FormError>
@@ -647,6 +655,7 @@ function ScheduledTaskForm({
647655
task: TestTask["task"];
648656
runs: ScheduledRun[];
649657
possibleTimezones: string[];
658+
disableVersionSelection: boolean;
650659
}) {
651660
const environment = useEnvironment();
652661
const lastSubmission = useActionData();

0 commit comments

Comments
 (0)