Skip to content

Commit ec567ae

Browse files
fix: Invert logic of isActiveJobStatus helper function (#354)
* Invert logic of isActiveJobStatus helper function * Refactor delete job modal to use shared helper function
1 parent 0302624 commit ec567ae

File tree

3 files changed

+17
-20
lines changed

3 files changed

+17
-20
lines changed

ui/src/jobs/components/modal/DeleteJobModal.js

+3-6
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { useTuringApi } from "../../../hooks/useTuringApi";
55
import { ConfirmationModal } from "../../../components/confirmation_modal/ConfirmationModal";
66
import { isEmpty } from "../../../utils/object";
77
import { EuiFieldText } from "@elastic/eui";
8+
import { isActiveJobStatus } from "../../../services/job/JobStatus";
89

910
export const DeleteJobModal = ({
1011
onSuccess,
@@ -38,13 +39,9 @@ export const DeleteJobModal = ({
3839
}
3940
}, [isLoaded, error, job, onSuccess, closeModal]);
4041

41-
const isActiveJobStatus = function(jobStatus) {
42-
return ["failed", "failed_submission", "failed_building", "completed"].includes(jobStatus);
43-
}
44-
4542
return (
4643
<ConfirmationModal
47-
title={isActiveJobStatus(job.status) ? 'Delete Ensembling Jobs' : 'Terminate Ensembling Jobs'}
44+
title={isActiveJobStatus(job.status) ? "Terminate Ensembling Jobs" : "Delete Ensembling Jobs" }
4845
onCancel={() => setDeleteConfirmation("")}
4946
onConfirm={(arg) => {submitForm(arg); setDeleteConfirmation("")}}
5047
isLoading={isLoading}
@@ -63,7 +60,7 @@ export const DeleteJobModal = ({
6360
isInvalid={deleteConfirmation !== job.name} />
6461
</div>
6562
}
66-
confirmButtonText={isActiveJobStatus(job.status) ? 'Delete' : 'Terminate'}
63+
confirmButtonText={isActiveJobStatus(job.status) ? "Terminate" : "Delete"}
6764
confirmButtonColor="danger">
6865
{(onSubmit) =>
6966
(deleteJobRef.current = openModal(onSubmit)) &&

ui/src/jobs/list/ListEnsemblingJobsTable.js

+10-14
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import { useNavigate } from "react-router-dom";
1717
import { useConfig } from "../../config";
1818
import moment from "moment";
1919
import { DeploymentStatusHealth } from "../../components/status_health/DeploymentStatusHealth";
20-
import { JobStatus } from "../../services/job/JobStatus";
20+
import { isActiveJobStatus, JobStatus } from "../../services/job/JobStatus";
2121
import EnsemblersContext from "../../providers/ensemblers/context";
2222
import { DateFromNow } from "@caraml-dev/ui-lib";
2323
import { DeleteJobModal } from "../components/modal/DeleteJobModal";
@@ -68,10 +68,6 @@ export const ListEnsemblingJobsTable = ({
6868
const onDeleteJob = (job) => {
6969
deleteJobRef.current(job)
7070
}
71-
72-
const isActiveJobStatus = function(jobStatus) {
73-
return ["failed", "failed_submission", "failed_building", "completed"].includes(jobStatus);
74-
}
7571

7672
const columns = [
7773
{
@@ -159,15 +155,15 @@ export const ListEnsemblingJobsTable = ({
159155
</EuiButtonEmpty>
160156
</EuiFlexItem>
161157
<EuiFlexItem grow={false} >
162-
<EuiButtonEmpty
163-
onClick={() => onDeleteJob(item)}
164-
color={"danger"}
165-
iconType={isActiveJobStatus(item.status) ? "trash" : "minusInCircle" }
166-
iconSide="left"
167-
size="xs"
168-
isDisabled={item.status === "terminating"}>
169-
<EuiText size="xs"> {isActiveJobStatus(item.status) ? "Delete" : "Terminate" } </EuiText>
170-
</EuiButtonEmpty>
158+
<EuiButtonEmpty
159+
onClick={() => onDeleteJob(item)}
160+
color={"danger"}
161+
iconType={isActiveJobStatus(item.status) ? "minusInCircle" : "trash" }
162+
iconSide="left"
163+
size="xs"
164+
isDisabled={item.status === "terminating"}>
165+
<EuiText size="xs"> {isActiveJobStatus(item.status) ? "Terminate" : "Delete" } </EuiText>
166+
</EuiButtonEmpty>
171167
</EuiFlexItem>
172168
</EuiFlexItem>
173169
</EuiFlexGroup>

ui/src/services/job/JobStatus.js

+4
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,7 @@ export const JobStatus = Enum({
4646
iconType: "cross",
4747
}),
4848
});
49+
50+
export const isActiveJobStatus = function(jobStatus) {
51+
return ["pending", "building", "running", "terminating"].includes(jobStatus);
52+
};

0 commit comments

Comments
 (0)